Вопрос по Конвертации Данных (Объект А в Объекты А, Б, В)

1. Honesty 05.09.13 07:21 Сейчас в теме
Есть 2 разные конфигурации
В обеих конфах есть документ ПеремещениеТоваров
В 1 конфигурации 2 ТабличныхЧасти во 2 - одна
Нужно
1. Из 1 конфигурации выгрузить документ с ТЧ1 и загрузить его во вторую конфигурацию. С этим проблем нет, работает уже пару лет
2. Из 1 конфигурации выгрузить документ с ТЧ2 и загрузить его во вторую конфигурацию предварительно разбив на несколько документов в зависимости от количества организаций в ТЧ документа источника. Желательно разбивку делать на этапе загрузки, возможно даже перед записью 1 объекта, т.к. в документах хочу установить ссылку на него

Похожая тема была http://forum.infostart.ru/forum14/topic36272/ но мне к сожалению не удается добиться решения
По теме из базы знаний
Ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. m-serg74 46 05.09.13 08:52 Сейчас в теме
(1) Honesty,
предварительно разбив на несколько документов
и
т.к. в документах хочу установить ссылку на него
это как? одинаковые ссылки на несколько разных документов?
3. Honesty 05.09.13 10:30 Сейчас в теме
В документах Б, В, Г и т.д. (тех которые по 2 пункту) указать документ А
4. IgorXml 725 05.09.13 10:38 Сейчас в теме
Я делал из док А в А или Б. В обработчике событий "Перед выгрузкой" документа А:
РезультатДокумент_А = Документы.Документ_А.НайтиПоНомеру(Источник.Номер, Источник.Дата);
		Если НЕ РезультатДокумент_А.Пустая() Тогда
			ВыгрузитьПоПравилу(РезультатДокумент_А,
			Неопределено,
			Неопределено,
			Неопределено,
			"Документ_Б");
			отказ = истина;
		КонецЕсли;	   
Показать
Если параметр "отказ" не делать "Истина", то было бы А в А и Б.
5. Honesty 05.09.13 18:38 Сейчас в теме
Вообщем разобрался
1. Создал новое (второе) ПКО для документа перемещение товаров, назвал его ПеремещениеТоваровОрг, в котором часть ПКС со свойством получать из входящих данных.Также указал у ПКО "Не запоминать выгруженные объекты". Поиск по полю "UTID", с помощью оного буду контролировать возможные изменения в источнике
2. В 1 ПКО документа ПеремещениеТоваров дописал в модуле ПослеВыгрузки
Объект = Источник;
МассивСкладов = Объект.ТоварыПоОрганизациям.ВыгрузитьКолонку("Организация"); 
ОбщегоНазначения.УдалитьПовторяющиесяЭлементыМассива(МассивСкладов); 
КоличествоОрганизаций = МассивСкладов.Количество();

Для Каждого ТекущаяОрганизация Из МассивСкладов Цикл 
      Если НЕ ПустаяСтрока(ТекущаяОрганизация) Тогда
          ТЧ = Объект.ТоварыПоОрганизациям.НайтиСтроки(Новый Структура("Организация", ТекущаяОрганизация)); 

        ВходящиеДанные = Новый Структура; 
        ВходящиеДанные.Вставить("Организация", ТекущаяОрганизация); 
		Товары = Новый ТаблицаЗначений;
		Товары.Колонки.Добавить("Номенклатура");
		Товары.Колонки.Добавить("Количество");
		Товары.Колонки.Добавить("ЕдиницаИзмерения");
		Товары.Колонки.Добавить("Коэффициент");
		Для Каждого ТекСтрокаТЧ из ТЧ Цикл				
			СтрокаРасшифровкаПлатежа = Товары.Добавить();
			СтрокаРасшифровкаПлатежа.Номенклатура = ТекСтрокаТЧ.Номенклатура;
			СтрокаРасшифровкаПлатежа.Количество = ТекСтрокаТЧ.Количество;
			СтрокаРасшифровкаПлатежа.ЕдиницаИзмерения = ТекСтрокаТЧ.ЕдиницаИзмерения;
			СтрокаРасшифровкаПлатежа.Коэффициент = ТекСтрокаТЧ.Коэффициент;

		КонецЦикла;

		ВходящиеДанные.Вставить("Товары", Товары);
		ВходящиеДанные.Вставить("UTID", Строка(Объект.Ссылка.УникальныйИдентификатор())+ "-I" + Сокрлп(ТекущаяОрганизация.UniqueCode));
		
		ВыгрузитьПоПравилу(Объект,,ВходящиеДанные,,"ПеремещениеТоваровОрг"); 
         
      КонецЕсли;
  КонецЦикла;
Показать


Данные выгружаются, теперь нужно их загрузить, а также написать некую проверку на изменение данных в Источнике, но думаю с этим проблем не возникнет
6. RocKeR_13 1325 06.09.13 10:37 Сейчас в теме
(5) Honesty, а что мешало сделать несколько ПКО для выгрузки Перемещений в несколько документов, а в ПВД ручками создать запросы на выгрузку? К тому же никто не мешает уже перед выгрузкой проверить количество организаций (тем же запросом).
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот