Вам может потребоваться вывод GTIN в прайс-листах — это мы сделаем в текущей статье на примере использования нашего расширения Конструктор прайс-листов.
GTIN в типовой конфигурации хранится в том же регистре, где хранятся штрихкоды. Но есть особенность его получения. GTIN добавляется для маркированных товаров и т.к. хранение его значений реализовано в отдельном регистре — мы будем получать его произвольным алгоритмом, которые поддерживает наше расширение.
Для вывода кода GTIN добавим новую колонку в конструкторе прайс-листов и зададим для нее в редакторе значения алгоритм получения данных.
Ниже показан текст алгоритма. Он подходит для актуальных версий Управление торговлей 11, ERP Управление предприятием 2; Комплексная автоматизация 2.
[Алгоритм: Запрос = Новый Запрос( "ВЫБРАТЬ | ШтрихкодыНоменклатуры.Штрихкод КАК Штрихкод |ИЗ | РегистрСведений.ШтрихкодыНоменклатуры КАК ШтрихкодыНоменклатуры |ГДЕ | ШтрихкодыНоменклатуры.Номенклатура = &Номенклатура | И ШтрихкодыНоменклатуры.Номенклатура.ПрослеживаемыйТовар"); Запрос.УстановитьПараметр("Номенклатура", Номенклатура); Выборка = Запрос.Выполнить().Выбрать(); Результат = ""; Пока Выборка.Следующий() Цикл Если МенеджерОборудованияКлиентСервер.ПроверитьКорректностьGTIN(Выборка.Штрихкод) Тогда GTIN = ШтрихкодированиеОбщегоНазначенияИСКлиентСервер.GTINПоШтрихкодуEAN(Выборка.Штрихкод); Если НЕ РазборКодаМаркировкиИССлужебныйКлиентСервер.ЭтоВнутреннийШтрихкод(GTIN) Тогда Если ЗначениеЗаполнено(Результат) Тогда Результат = Результат + Символы.ПС + GTIN; Иначе Результат = GTIN; КонецЕсли; КонецЕсли; КонецЕсли; КонецЦикла; ]
Если у Вас в прайс-листе используются характеристики номенклатуры — алгоритм будет немного другой:
[Алгоритм: Запрос = Новый Запрос( "ВЫБРАТЬ | ШтрихкодыНоменклатуры.Штрихкод КАК Штрихкод |ИЗ | РегистрСведений.ШтрихкодыНоменклатуры КАК ШтрихкодыНоменклатуры |ГДЕ | ШтрихкодыНоменклатуры.Номенклатура = &Номенклатура | И ШтрихкодыНоменклатуры.Характеристика = &Характеристика | И ШтрихкодыНоменклатуры.Номенклатура.ПрослеживаемыйТовар"); Запрос.УстановитьПараметр("Номенклатура", Номенклатура); Запрос.УстановитьПараметр("Характеристика ", Характеристика ); Выборка = Запрос.Выполнить().Выбрать(); Результат = ""; Пока Выборка.Следующий() Цикл Если МенеджерОборудованияКлиентСервер.ПроверитьКорректностьGTIN(Выборка.Штрихкод) Тогда GTIN = ШтрихкодированиеОбщегоНазначенияИСКлиентСервер.GTINПоШтрихкодуEAN(Выборка.Штрихкод); Если НЕ РазборКодаМаркировкиИССлужебныйКлиентСервер.ЭтоВнутреннийШтрихкод(GTIN) Тогда Если ЗначениеЗаполнено(Результат) Тогда Результат = Результат + Символы.ПС + GTIN; Иначе Результат = GTIN; КонецЕсли; КонецЕсли; КонецЕсли; КонецЦикла; ]
Если у Вас остались вопросы по функционалу расширения — обращайтесь по телефонам, указанным в контактах.
Наши разработки:
Конструктор прайс-листов (прайс-заказов) для УТ11, КА2, ERP2, УНФ, Розница
Помощник продаж с мультикорзиной (расширение для УТ11, КА2, ERP2)
Расширенная форма списка номенклатуры для УТ11, КА2, ERP2
Расширенная форма РМК для УТ 11, КА 2, ERP 2
Розница: Расширенная форма списка номенклатуры