Имя: Пароль:
1C
1С v8
Как используя план обмена переносить полностью объекты по ссылкам?
0 scanner1980
 
28.10.12
11:36
Здравствуйте.

Есть правила обмена по переносу документа с табличной частью, которая содержит номенклатуру. Есть план обмена который содержит только регистрацию этого документа.

При обмене через универсальный обмен данными, не используя план обмена, в файл выгружается так же и вся номенклатура со всеми ее реквизитами. А если использовать План обмена, то выгружается только 1 объект - документ с табличной часть.

Вопрос.
Каким образом можно настроить выгрузку через план обмена так же и номенклатуры, которая содержится в табличной части документа, со всеми ее реквизитами?
1 Живой Ископаемый
 
28.10.12
11:37
план обмена только регистрирует. выгружаешь ты сам. Поэтому получай зарегистрированные ссылки, и если это документ который имеет табличную часть, то отбирай еще и объекты задействованные в этой табличной части. Но самостоятельно.
2 sda553
 
28.10.12
11:38
А дальше тебе потребуется выгружать так же и справочник тип номенклатуры, ставки ндс и другую фигню которая уже содержится в номенклатуре, которая содержится в табличной части
3 Живой Ископаемый
 
28.10.12
11:39
+(2) и регистры сведений цены поставщиков привязанные к этой номенклатуре, и этих поставщиков, и их расчетные счета, и...
4 scanner1980
 
28.10.12
12:22
А можно в конвертации данных указать в ПКГС выгружать весь объект а не ссылку? Если да то как? Если нет, то делать произвольную выборку с запросом?
5 sda553
 
28.10.12
12:27
(4) Он тебе и так выгружает весь объект, а не ссылку. Просто кроме этого объекат он больше ничего не выгружает. Ты еще не ощутил весь трагизм ситуации, почитай еще раз (2) и (3)
6 scanner1980
 
28.10.12
15:23
У документа в табличной части в ПКС "Номенклатура" в обработчике "После выгрузки" указал:

ВыгрузитьПоПравилу(ОбъектКоллекции.Номенклатура,,,,"Номенклатура");

И все. Номенклатура вся выгружается полностью. Только остался вопрос, насколько это корректно? И чем это может грозить?
7 Живой Ископаемый
 
28.10.12
15:27
это нормально. грозить может только тем что не будут например выгружаться нужные связанные объекты
8 Torquader
 
28.10.12
15:45
(6) Ну ещё это может грозить тем, что при загрузке будет дублирование номенклатуры, так как внутренние идентификаторы разные и при загрузке документа будет создана заново вся номенклатура, которая в нём есть, а если до этого номенклатуру вводили вручную, то получится дублирование.
9 Живой Ископаемый
 
28.10.12
15:51
почему внутренние идентификаторы разные?
10 scanner1980
 
28.10.12
17:11
(8) у справочника отключен поиск по внутренним идентификаторам.
11 Живой Ископаемый
 
28.10.12
17:25
2(10) тогда бублям быть
12 Torquader
 
28.10.12
17:49
(10) А по чему мы тогда ищем - или мы сразу создаём новый элемент ?
13 scanner1980
 
28.10.12
18:28
(12) поиск по коду

В продолжение вопрос. При выгрузке как в (6) двух документов с одинаковой номенклатурой, в файл обмена записывается несколько одних и тех же объектов Номенклатура, так как они содержаться в разных документах.

Можно ли как то перед выгрузкой объекта, проверить что он уже выгружен и не выгружать его повторно?
14 Живой Ископаемый
 
28.10.12
19:01
можно просто синхронизировать по УИДу. и все
15 Torquader
 
28.10.12
19:03
(13) Придётся запихивать в массив и перед записью проверять, что в массиве такого ещё нет.
По коду, конечно, получится хорошо, если коды не совпадут (нужно постараться, чтобы номенклатура в базе получателе или имела другой префикс кода или не вводилась).
Пользователь не знает, чего он хочет, пока не увидит то, что он получил. Эдвард Йодан