Показ кодов маркировки в документах 1С ERP/УТ: мини-доработка управляемых форм, чтобы облегчить себе жизнь

03.09.24

Задачи пользователя - Адаптация типовых решений

Мы - производители табачной продукции. Огромное количество покупателей обращаются к нам за помощью при работе с маркировкой нашей табачной продукции и не только. При этом самая главная проблема в том, что пользователи просто не видят коды маркировки (далее КМ) в документах 1С и делают неправильные выводы. Приходится прибегать к скачиванию xml документов из ЭДО, где можно смотреть, сколько каких КМ добавлено в документ и в чем суть ошибок.

Я до сих пор не могу понять, почему 1С прячет от пользователя коды маркировки (КМ) в документах? Один значок в табличной части "Товары" - это все, что вам доступно.


Почему бы не сделать удобные инструменты для работы с КМ в документах: выгружать/загружать в текстовые файлы, осуществлять поиск документов по КМ, проверять через API и делать разбор данных и т.п.?
Это странная позиция 1С. Особенно, если учесть, что все для этого они уже сделали. Для хранения КМ в документах 1С предусмотрела специальную табличную часть "ШтрихкодыУпаковок", а сами КМ - это элементы справочника "ШтрихкодыУпаковокТоваров"

Если вы используете маркировку в работе, то мой вам совет. Прежде всего, добавьте её отображение в документах. Хорошо, что это делается относительно легко, без серьезных изменений 1С.

Создайте расширение конфигурации и приступим.

Пробрасываем в расширение конфигурации процедуры из модуля формы документа "ПриСозданииНаСервереПосле" и добавьте вызов процедуры программного добавления табличной части на форме:

&НаСервере
Процедура ИТ_ПриСозданииНаСервереПосле(Отказ, СтандартнаяОбработка)

	ИТ_ОбщиеИзмененияУФ.ВывестиТЧШтрихкодыУпаковок(ЭтаФорма);

КонецПроцедуры


Конечно, можно не добавлять в расширение конфигурации модули форм всех  документов, где используется маркировка, а вместо этого, использовать типовой вызов для всех документов, любезно предусмотренный компанией 1С, через общий модуль "МодификацияКонфигурацииПереопределяемый.ПриСозданииНаСервере".
Однако помните, эта процедура вызывается со всех форм, и каждый раз вам придется проверять вид документа или непосредственно наличие табличной части "ШтрихкодыУпаковок" в метаданных документа. Сами выбирайте свой путь самурая, главное, чтоб вызывалась процедура "ВывестиТЧШтрихкодыУпаковок".

Итак.

Создаем общий модуль "ИТ_ОбщиеИзмененияУФ" и добавляем в нем вызываемую процедуру "ВывестиТЧШтрихкодыУпаковок".

Задача процедуры - программно вывести необходимую нам табличную часть на форму:

Процедура ВывестиТЧШтрихкодыУпаковок(ЭтаФорма) Экспорт
	
    ИТ_РаботаСУправляемойФормой.ДобавитьГруппу(ЭтаФорма,"ИТ_ГруппаШтрихкодыУпаковок","Штрихкоды упаковок","ГруппаСтраницы",ВидГруппыФормы.Страница);
    ИТ_РаботаСУправляемойФормой.ДобавитьТаблицу(ЭтаФорма,"ИТ_ШтрихкодыУпаковок","Штрихкоды упаковок", "ИТ_ГруппаШтрихкодыУпаковок","Объект.ШтрихкодыУпаковок");
	
    ИТ_РаботаСУправляемойФормой.ДобавитьПоле(ЭтаФорма,ВидПоляФормы.ПолеВвода,"НомерСтроки","№","ИТ_ШтрихкодыУпаковок","Объект.ШтрихкодыУпаковок.НомерСтроки");
    ИТ_РаботаСУправляемойФормой.ДобавитьПоле(ЭтаФорма,ВидПоляФормы.ПолеВвода,"ШтрихкодУпаковки","Штрихкод упаковки","ИТ_ШтрихкодыУпаковок","Объект.ШтрихкодыУпаковок.ШтрихкодУпаковки");
    ИТ_РаботаСУправляемойФормой.ДобавитьПоле(ЭтаФорма,ВидПоляФормы.ПолеВвода,"Номенклатура","Номенклатура","ИТ_ШтрихкодыУпаковок","Объект.ШтрихкодыУпаковок.ШтрихкодУпаковки.Номенклатура");
    ИТ_РаботаСУправляемойФормой.ДобавитьПоле(ЭтаФорма,ВидПоляФормы.ПолеВвода,"Характеристика","Характеристика","ИТ_ШтрихкодыУпаковок","Объект.ШтрихкодыУпаковок.ШтрихкодУпаковки.Характеристика");

    //Специальная роль "ИТ_РедактированиеТЧШтрихкодыУпаковок" с правами на редактирование кодов маркировки в документе
    ЭтаФорма.Элементы.ИТ_ШтрихкодыУпаковок.ТолькоПросмотр = НЕ Пользователи.РолиДоступны("ИТ_РедактированиеТЧШтрихкодыУпаковок");

    //Кнопки действий с КМ (не входит в тему нашей статьи)
    //ИТ_РаботаСУправляемойФормой.ДобавитьКоманду(ЭтаФорма,"ИТ_ВыгрузитьМаркерыИзДокументаВФайл","Выгрузить маркеры",ЭтаФорма.Элементы.ИТ_ШтрихкодыУпаковокКоманднаяПанель,"ИТ_ВыгрузитьМаркерыИзДокументаВФайл");
    //ЭтаФорма.Элементы.КнопкаИТ_ВыгрузитьМаркерыИзДокументаВФайл.Картинка = БиблиотекаКартинок.ИТ_ЗагрузитьФайл;
	
КонецПроцедуры

В примере видно, что мы используем самописные процедуры работы с управляемыми формами. По их названиям вы поймете, что они делают.  

Но, если вы хотите подробности, то приводим пример реализации общего модуля  по работе с управляемыми формами:

 
 Работа с управляемой формой. Пример общего модуля "ИТ_РаботаСУправляемойФормой"

 

Создаем отдельную роль "ИТ_РедактированиеТЧШтрихкодыУпаковок", которая сможет работать с маркировкой, а для остальных данную табличную часть делаем только для просмотра. Это защита от дурных рук.

Попутно можно программно добавить команды на форму (в примере они закомментированы).

Получаем табличную часть с КМ, с которыми можно работать и анализировать

Пример вывода табличной части ШтрихкодыУпаковок

Вот так...5 минут и работать станет удобней.

 

А теперь минутка рекомендаций для 1С:

Я рекомендую 1С добавить инструменты по работе с КМ:

  • Поиск документов по КМ. 
    Только это должен быть не банальный поиск по справочнику, а поиск по хэшу с предварительной нормализаций введенного КМ  в строку поиска, с удалением всех нечитаемых символов и криптохвостов (проверочных кодов) пришедших из сканера. В поиск, конечно, нужно включать и вышестоящие групповые или даже транспортные упаковки, если такая информация у вас сохраняется в 1С. Как-то так:

 

  • Определение номенклатуры по КМ.
    ERP умеет искать номенклатуру по штрихкодам, но не по КМ...а могла бы

     

Надеюсь, вместе мы сделаем 1С удобней для всех.

Управляемы формы маркировка

См. также

Логистика, склад и ТМЦ Адаптация типовых решений Пользователь Платформа 1С v8.3 1С:Управление нашей фирмой 1.6 1С:Управление нашей фирмой 3.0 Россия Управленческий учет Платные (руб)

Чтобы не допустить путаницы с обещаниями клиентам и для четкого контроля исполнения заказов мы используем резервирование товаров. Мы доработали УНФ, чтобы она автоматически отменяла старые резервы и не мешала эффективно продавать.

7200 руб.

02.08.2023    4168    14    1    

32

Адаптация типовых решений Платформа 1С v8.3 1С:Документооборот Россия Платные (руб)

Расширение конфигурации для «1С:Документооборот КОРП», редакция 3.0. позволяет: 1.использовать произвольные табличные части в качестве дополнительных реквизитов к документу; 2 использовать произвольные табличные части в шаблонах в формате docx для автоматического заполнения таблиц.

29400 руб.

29.06.2023    5991    14    5    

24

Печатные формы Адаптация типовых решений Бухгалтер Пользователь Платформа 1С v8.3 1С:ERP Управление предприятием 2 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х 1С:Управление нашей фирмой 3.0 1С:Розница 3.0 Платные (руб)

Расширение позволяет вывести в табличном документе факсимиле печати и подписей и/или вывести произвольную картинку из прикреплённых файлов организации для 1С УТ 11.5, КА 2.5, ERP 2.5, УНФ 3, Розница 3. Вывод факсимиле возможен в табличные документы УПД, УКД, Счёт-фактура, ТОРГ-12 и другие. Возможно настроить вывод для любых типовых макетов (Акт сверки, М-15, ТТН), для этого потребуется отредактировать макет и разместить на нём картинки с установленными именами. Редактирование осуществляется через типовой механизм в пользовательском интерфейсе.

3000 руб.

07.02.2023    6705    73    10    

30

Адаптация типовых решений Программист Пользователь Платформа 1С v8.3 1С:ERP Управление предприятием 2 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х Абонемент ($m)

Каждый из нас сталкивается с ситуацией, когда какой-нибудь менеджер показывает свой Excel и рассказывает, как он что-то из 1С копирует в него, снабжает пояснениями, выделяет цветом и т.д. и т.п. Заканчивается все просьбой сделать вот чтобы также было в 1С. И оказывается такой человек (почти с гарантией) либо лучшим продажником, либо каким-то важным, за все отвечающим, - на ком все держится.

2 стартмани

22.04.2024    5266    dimanich70    15    

22

БСП (Библиотека стандартных подсистем) Адаптация типовых решений Программист Платформа 1С v8.3 1С:ERP Управление предприятием 2 Бесплатно (free)

Понадобилось в подменю "Создать на основании" добавить свою команду, которая открывает обработку. В процессе доработок появилась проблема двух подменю "Создать на основании". В статье о том, как решились проблемы.

01.03.2024    6812    dimanich70    9    

18
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. alexey-simf 17 13.09.24 13:28 Сейчас в теме
Про какую конфигурацию речь?
Например, в УТ в Реализации, на вкладке "Товары", над табличной частью, есть гиперссылка "Проверка и подбор", по которой открывается окно, в котором можно увидеть коды маркировки.

В качестве лайфхака, в той же УТ можно посмотреть полные (!!!) коды маркировки, включая криптохвост, которые были заказаны через документ "Заказ на эмиссию кодов маркировки".

Грубый пример:
	Запрос = Новый Запрос;
	Запрос.Текст = 
		"ВЫБРАТЬ
		|	Пул.ПолныйКодМаркировки КАК ПолныйКодМаркировки
		|ИЗ
		|	РегистрСведений.ПулКодовМаркировкиСУЗ КАК Пул
		|ГДЕ
		|	Пул.ЗаказНаЭмиссию = &ЗаказНаЭмиссию";
	
	Запрос.УстановитьПараметр("ЗаказНаЭмиссию", ДокСсылка);
	
	РезультатЗапроса = Запрос.Выполнить();
	
	РазделительGS1 = МенеджерОборудованияМаркировкаКлиентСервер.РазделительGS1();
	
	Выборка = РезультатЗапроса.Выбрать();
	Пока Выборка.Следующий() Цикл
		СтрокаШК = ШтрихкодированиеИСКлиентСервер.Base64ВШтрихкод(Выборка.ПолныйКодМаркировки);
		СтрокаШК = СтрЗаменить(СтрокаШК, РазделительGS1, "");
		Сообщить(СтрокаШК);
	КонецЦикла;
Показать
3. dima_home 253 16.09.24 16:03 Сейчас в теме
(1)
в той же УТ можно посмотреть полные (!!!) коды маркировки, включая криптохвост


Приказ Минпромторга России от 05.02.2020 N 380
4.1. Коды маркировки, включающие в себя идентификатор ключа подписи и код проверки (крипточасть кодов маркировки), могут храниться в товарно-учетной системе или АСУТП Участника только в процессе производственного цикла.
После завершения производственного цикла крипточасть должна быть удалена. Хранение кодов маркировки, включающих в себя крипточасть, после завершения производственного цикла в товарно-учетной системе или АСУТП Участника запрещено.
Любая проверка на месте... и вас оштрафуют по КоАП РФ Статья 15.12 за нарушение порядка маркировки.
VyacheslavShilov; +1 Ответить
2. 13D 69 15.09.24 19:18 Сейчас в теме
а места использования уже отменили?
Прикрепленные файлы:
5. dima_home 253 16.09.24 16:48 Сейчас в теме
(2) Места использования...это когда вы уже знаете в каком документе, открыли его, нашли нужный код и выделив его ищите другие места использования.
Я же исходу из того, что у вас должен быть независимый инструмент, в который вы вносите сканером или текстом с клавиатуры или ctrl+с / ctrl+v с электронного письма и .т.п. код маркировки для поиска... при чем не важно, с криптохвастом он или без него, с мрц или без него - инструмент все обрежет как надо и поищет во всех местах, во всех документах, вне зависимости от уровня агрегаций.

PS /
Еще заметил у вас в картинке...
Вы знаете, что использовать скобочки для отделения полей ЦРПТ категорически не рекомендует. В вашем примере 1С как раз использует скобочки.
Выписка из методических рекомендаций: "Для унификации формата блоков (КИГУ) передавать КИ без скобок, выделяющих идентификаторы применения 01 и 21"
Прикрепленные файлы:
6. dima_home 253 19.09.24 11:44 Сейчас в теме
(2) А
(5)
Мы, кстати, ведем централизованное хранение событий сканирования кодов маркировки терминалами сбора данных на складах.
И предлагаемая нами функция розыска КМ дает не только список документов как в типовой 1С, но и где, каким кладовщиком, в какое время, каким терминалом этот КМ был отсканирован....даже несмотря на то, что искомый КМ мог в итоге и не попасть в документ.

А если учесть, что мы сканируем КМ даже при перемещениях внутри компании, а также фиксируем случаи когда кладовщик с помощью ТСД просто хочет получить информацию о товаре, мы всегда можем при розыске КМ сказать: где в последний раз этот КМ был замечен.
4. dima_home 253 16.09.24 16:19 Сейчас в теме
(1)
Например, в УТ в Реализации, на вкладке "Товары", над табличной частью, есть гиперссылка "Проверка и подбор", по которой открывается окно, в котором можно увидеть коды маркировки.

Да, только эта гиперссылка работает с одновременным подключением и погрузкой дополнительных данных с ЦРПТ (например вложения, даты и т.п.), а когда кодов тысячи, желание ее использовать быстро пропадает. Нужно что то, что просто отобразит список кодов без лишних телодвижений и подключений.
Оставьте свое сообщение