Advertisement
Yaguar

формирование паллет в DESADV леруа

Apr 25th, 2018
85
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 5.22 KB | None | 0 0
  1. //************* СЕГМЕНТ <CONSIGNMENT> (СПИСОК УПАКОВОК ДЛЯ DESADV) **************************
  2. Если ВидДока = "DESADV" Тогда
  3. ИсхДанные.Вставить("ВремяДок",ВремяДок);
  4. ИсхДанные.Вставить("КроссДокинг", КроссДокинг);
  5. СписокУпаковок = Новый Соответствие;
  6. Если (GLNКонтрагента = "4607075269996") И (КроссДокинг = Истина) Тогда //Леруа
  7. врСтрока = Новый Соответствие;
  8. врЧисло = 1;
  9. Для каждого ТекСтрока из ТаблУпаковок Цикл
  10. врСтрока = Новый Соответствие;
  11. врСтрока.Вставить("IDУпаковки", Строка(ТекСтрока.IDУпаковки));
  12. врСтрока.Вставить("ТипУпаковки", Строка(ТекСтрока.ТипУпаковки));
  13. врСтрока.Вставить("SSCC", Строка(ТекСтрока.SSCC));
  14. врСтрока.Вставить("ВесУпаковки", Формат(ТекСтрока.ВесУпаковки, ФорматДляКол));
  15. врСтрока.Вставить("ДлинаУпаковки", Формат(ТекСтрока.ДлинаУпаковки, ФорматДляКол));
  16. врСтрока.Вставить("ШиринаУпаковки", Формат(ТекСтрока.ШиринаУпаковки, ФорматДляКол));
  17. врСтрока.Вставить("ВысотаУпаковки", Формат(ТекСтрока.ВысотаУпаковки, ФорматДляКол));
  18. СписокУпаковок.Вставить(врЧисло, врСтрока);
  19. врЧисло = врЧисло + 1;
  20. КонецЦикла;
  21. Иначе
  22. //Создаем материнскую упаковку (она всегда имеет ID=1)
  23. ЧислоРодитель = 1;
  24. врСтрока = Новый Соответствие;
  25. врСтрока.Вставить("IDУпаковки", ЧислоРодитель);
  26. //остальные параметры будут нулевыми
  27. врСтрока.Вставить("IDРодителя", "");
  28. врСтрока.Вставить("ТипУпаковки", "");
  29. врСтрока.Вставить("SSCC", "");
  30. врСтрока.Вставить("GLNМестаДоставки", "");
  31. врСтрока.Вставить("ВесУпаковки", "");
  32. врСтрока.Вставить("ДлинаУпаковки", "");
  33. врСтрока.Вставить("ШиринаУпаковки", "");
  34. врСтрока.Вставить("ВысотаУпаковки", "");
  35. СписокУпаковок.Вставить(ЧислоРодитель, врСтрока);
  36.  
  37. Если КроссДокинг = Истина Тогда
  38. //Создаем потомков (их ID будет начинаться всегда с 2)
  39. врЧисло = 2;
  40. Для каждого ТекСтрока из ТаблУпаковок Цикл
  41. врСтрока = Новый Соответствие;
  42. врСтрока.Вставить("IDУпаковки", Строка(ТекСтрока.IDУпаковки + 1));
  43. врСтрока.Вставить("IDРодителя", Строка(ЧислоРодитель));
  44. врСтрока.Вставить("ТипУпаковки", Строка(ТекСтрока.ТипУпаковки));
  45. врСтрока.Вставить("SSCC", Строка(ТекСтрока.SSCC));
  46. врСтрока.Вставить("GLNМестаДоставки", Строка(ТекСтрока.GLNМестаДоставки));
  47. врСтрока.Вставить("ВесУпаковки", Формат(ТекСтрока.ВесУпаковки, ФорматДляКол));
  48. врСтрока.Вставить("ДлинаУпаковки", Формат(ТекСтрока.ДлинаУпаковки, ФорматДляКол));
  49. врСтрока.Вставить("ШиринаУпаковки", Формат(ТекСтрока.ШиринаУпаковки, ФорматДляКол));
  50. врСтрока.Вставить("ВысотаУпаковки", Формат(ТекСтрока.ВысотаУпаковки, ФорматДляКол));
  51. СписокУпаковок.Вставить(врЧисло, врСтрока);
  52. врЧисло = врЧисло + 1;
  53. КонецЦикла;
  54. КонецЕсли;
  55. КонецЕсли;
  56.  
  57. //опять проблемы с соответствием
  58. ТекЗначение = Новый Соответствие();
  59. Если СписокУпаковок.Количество() <> 0 Тогда
  60. СписокУпаковок.Вставить((СписокУпаковок.Количество()+1),ТекЗначение);
  61. КонецЕсли;
  62. СписокУпаковок.Удалить(СписокУпаковок.Количество());
  63.  
  64. ИсхДанные.Вставить("СписокУпаковок", СписокУпаковок);
  65. КонецЕсли;
  66. //---------------------------- КОНЕЦ СЕГМЕНТА <CONSIGNMENT> ---------------------------------
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement