Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- //************* СЕГМЕНТ <CONSIGNMENT> (СПИСОК УПАКОВОК ДЛЯ DESADV) **************************
- Если ВидДока = "DESADV" Тогда
- ИсхДанные.Вставить("ВремяДок",ВремяДок);
- ИсхДанные.Вставить("КроссДокинг", КроссДокинг);
- СписокУпаковок = Новый Соответствие;
- Если (GLNКонтрагента = "4607075269996") И (КроссДокинг = Истина) Тогда //Леруа
- врСтрока = Новый Соответствие;
- врЧисло = 1;
- Для каждого ТекСтрока из ТаблУпаковок Цикл
- врСтрока = Новый Соответствие;
- врСтрока.Вставить("IDУпаковки", Строка(ТекСтрока.IDУпаковки));
- врСтрока.Вставить("ТипУпаковки", Строка(ТекСтрока.ТипУпаковки));
- врСтрока.Вставить("SSCC", Строка(ТекСтрока.SSCC));
- врСтрока.Вставить("ВесУпаковки", Формат(ТекСтрока.ВесУпаковки, ФорматДляКол));
- врСтрока.Вставить("ДлинаУпаковки", Формат(ТекСтрока.ДлинаУпаковки, ФорматДляКол));
- врСтрока.Вставить("ШиринаУпаковки", Формат(ТекСтрока.ШиринаУпаковки, ФорматДляКол));
- врСтрока.Вставить("ВысотаУпаковки", Формат(ТекСтрока.ВысотаУпаковки, ФорматДляКол));
- СписокУпаковок.Вставить(врЧисло, врСтрока);
- врЧисло = врЧисло + 1;
- КонецЦикла;
- Иначе
- //Создаем материнскую упаковку (она всегда имеет ID=1)
- ЧислоРодитель = 1;
- врСтрока = Новый Соответствие;
- врСтрока.Вставить("IDУпаковки", ЧислоРодитель);
- //остальные параметры будут нулевыми
- врСтрока.Вставить("IDРодителя", "");
- врСтрока.Вставить("ТипУпаковки", "");
- врСтрока.Вставить("SSCC", "");
- врСтрока.Вставить("GLNМестаДоставки", "");
- врСтрока.Вставить("ВесУпаковки", "");
- врСтрока.Вставить("ДлинаУпаковки", "");
- врСтрока.Вставить("ШиринаУпаковки", "");
- врСтрока.Вставить("ВысотаУпаковки", "");
- СписокУпаковок.Вставить(ЧислоРодитель, врСтрока);
- Если КроссДокинг = Истина Тогда
- //Создаем потомков (их ID будет начинаться всегда с 2)
- врЧисло = 2;
- Для каждого ТекСтрока из ТаблУпаковок Цикл
- врСтрока = Новый Соответствие;
- врСтрока.Вставить("IDУпаковки", Строка(ТекСтрока.IDУпаковки + 1));
- врСтрока.Вставить("IDРодителя", Строка(ЧислоРодитель));
- врСтрока.Вставить("ТипУпаковки", Строка(ТекСтрока.ТипУпаковки));
- врСтрока.Вставить("SSCC", Строка(ТекСтрока.SSCC));
- врСтрока.Вставить("GLNМестаДоставки", Строка(ТекСтрока.GLNМестаДоставки));
- врСтрока.Вставить("ВесУпаковки", Формат(ТекСтрока.ВесУпаковки, ФорматДляКол));
- врСтрока.Вставить("ДлинаУпаковки", Формат(ТекСтрока.ДлинаУпаковки, ФорматДляКол));
- врСтрока.Вставить("ШиринаУпаковки", Формат(ТекСтрока.ШиринаУпаковки, ФорматДляКол));
- врСтрока.Вставить("ВысотаУпаковки", Формат(ТекСтрока.ВысотаУпаковки, ФорматДляКол));
- СписокУпаковок.Вставить(врЧисло, врСтрока);
- врЧисло = врЧисло + 1;
- КонецЦикла;
- КонецЕсли;
- КонецЕсли;
- //опять проблемы с соответствием
- ТекЗначение = Новый Соответствие();
- Если СписокУпаковок.Количество() <> 0 Тогда
- СписокУпаковок.Вставить((СписокУпаковок.Количество()+1),ТекЗначение);
- КонецЕсли;
- СписокУпаковок.Удалить(СписокУпаковок.Количество());
- ИсхДанные.Вставить("СписокУпаковок", СписокУпаковок);
- КонецЕсли;
- //---------------------------- КОНЕЦ СЕГМЕНТА <CONSIGNMENT> ---------------------------------
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement