Задача: на каждую строку табличной части создавать свой документ в базе-приемнике (в базе приемнике нет ТЧ, все данные из документа-источника сделаны реквизитами документа-приемника, поэтому требуется такая реализация)
Сделала я произвольный алгоритм, запросом выгребла все нужные данные, все замечательно работало до подключения данных правил в план обмена - произвольный алгоритм перестал выполняться
При попытке выгружать документ-объект - выгружает всю ТЧ
Нашла много примеров, когда из двух ТЧ требуется "склеить" один документ, но ни одного примера реализации с похожим алгоритмом.
Для Каждого СтрТаб Из ТаблицаИсходногоДокумента Цикл
МояТаблица= ..тут формируем нужную таблицу
ИсходящиеДанные=Новый Структура;
ИсходящиеДанные.Вставить("Товары",МояТаблица);
ВыгрузитьПоПравилу(ДокументИсточник,,ИсходящиеДанные,,"НазваниеПКО");
КонецЦикла;
(2) я написала аналогично в ПВД в событие "перед выгрузкой", в итоге выгружает все равно 1 раз документ, не зависимо от количество строк в тч (в моем примере их 2)
Хотя при отладке правила через "Универсальный обмен" заходит 2 раза
(3) есть, там на 2 тч разбивают в одном документе. Мне же надо из 1 документа получать 2 (если в документе 2 строки в тч)
(4) ponaroshku, в пко в источнике для таблицы должно быть пусто + флаг получать из входящих данных
+ поиск документа не по ГУИД тут есть одна проблема для поиска по Номер+Дата нужно Номер получить заранее при выгрузке данных , проще всего как то видоизменить номер источника
(8) ponaroshku, по сути все 3 варианта удачные, вот это
пойдет проблема, если в ТЧ источника удалят документ
меня очень смущает, выгрузку делаете каждый день? но как вариант, создать и в источнике и в приемнике, реквизит, или еще чего такого, где будет гуид источника хранится как строка, и если очистили док, по этому гуиду находить в приемнике нужные доки и помечать на удаление, ну или перезаписываться если требуется
(4) ponaroshku, а если при загрузке перед записью документа читать таб. часть, создавать из нее документы, а сам источник просто не записывать или записать его с одной строкой, а остальные после создания отдельных документов,удалить. Как раз для новых документов нужны данные для заполнения..
Заполнить шапку нового документа можно на основании исходного через