|
Печать кода маркировки своей обработкой (молочка, "Честный знак") | ☑ | ||
---|---|---|---|---|
0
zelenprog
11.03.24
✎
10:54
|
Добрый день!
Нужно распечатать этикетку со штрихкодом по своему шаблону. За основу взял обработку с Инфостарта: https://infostart.ru/1c/tools/1335145/ Эта обработка берет коды маркировки для печати из csv-файла. По тексту обработки видно, что код маркировки, который она читает из csv-файла должен содержать 31 знак. Однако, в нашем csv-файле код содержит только 24 знака, нету последних 7 символов кода маркировки. Мы csv-файл получаем из личного кабинета "Честного знака". Из описания структуры кода маркировки понятно, что тот код, который содержится в нашем csv-файле - это на самом деле "Код идентификации" (КИ), а не полноценный код маркировки (КМ). В коде идентификации отсутствует код проверки - это как раз 7 символов: ASCII-29 (1 символ) + признак "93" (2 символа) + код-проверки (4 символа). В итоге этикетка по нашему "урезанному" коду печатается неправильная. Подскажите, как получить "полноценный" код маркировки, чтобы можно было распечатать этикетку? |
|||
1
lodger
11.03.24
✎
11:08
|
(0) полный КМ выдается единожды, когда вы генерите новые марки. потом их взять больше негде.
|
|||
2
lodger
11.03.24
✎
11:09
|
в CSV для целей печати, надо сохранять когда происходит получение новых марок.
|
|||
3
Builder
11.03.24
✎
11:10
|
(0) Это называется криптохвост.
|
|||
4
zelenprog
11.03.24
✎
11:15
|
(1),(2)
А повторно Честный знак не может выдать полные коды маркировки? Я читал, там у них есть API. Может быть с помощью этого API можно повторно запросить коды? |
|||
5
Builder
11.03.24
✎
11:16
|
(4) Ну как бы их у себя в базе даже хранить запрещено....
|
|||
6
H A D G E H O G s
11.03.24
✎
11:22
|
(5) где об этом написано?
|
|||
7
Builder
11.03.24
✎
11:42
|
(6) Помню обсуждали это тут, было в контуре.
https://kontur.ru/markirovka/news/6929 Но по факту в договоре не нашли и это были рекомендации. |
|||
8
ПросТак
11.03.24
✎
12:44
|
(4) Повторно коды не даются, только выдача новых взамен старого.
|
|||
9
timurhv
11.03.24
✎
12:47
|
(4) По идентификаторам заказа в течение 24 часов после первичного получения (как понимаю, сделано если система сломалась или инет отвалился в момент получения), потом нет.
|
|||
10
zelenprog
11.03.24
✎
13:04
|
(1) >> полный КМ выдается единожды, когда вы генерите новые марки. потом их взять больше негде.
(2) >> в CSV для целей печати, надо сохранять когда происходит получение новых марок. (8) >> Повторно коды не даются, только выдача новых ... А как при получении новых кодов сохранить их в CSV-файл? У нас возможно только сохранение в PDF. Сохранение в CSV не нашли. |
|||
11
zelenprog
11.03.24
✎
13:06
|
Нашел вот такое сообщение на сайте Честного знака:
-------------------------- Отключение формата * .csv -------------------------- С 16.05.2023 будет недоступно получение кодов маркировки в файле формата * .csv. Отключение связано с частым возникновением ошибок при самостоятельном преобразовании кодов маркировки из файла в Data Matrix. Для получения останутся доступны форматы * .pdf и * .eps (готовые Data Matrix). -------------------------- И что получается? Что мы сами не сможем сформировать штрихкод по своему щаблону? |
|||
12
zelenprog
11.03.24
✎
13:10
|
Получается, что мы как пользователи Честного знака вообще нигде и никогда не может увидеть полные коды маркировки, включающие "криптохвост"?
|
|||
13
Builder
11.03.24
✎
13:31
|
(11) Читаем внимательно - это только для воды.
В других разделах csv как качались с полной маркировкой так и качаются до сих пор. |
|||
14
timurhv
11.03.24
✎
13:54
|
(12)
1. Используйте подсистему обмена с ЧЗ в типовых 1С 2. Сообществом уже написаны программы для разбора pdf и выгрузки в csv 3. Есть бесплатные программы на дельфях и тп (если вам все тянуть не нужно), которые умеют работать с СУЗ и выгружать в csv |
|||
15
H A D G E H O G s
11.03.24
✎
14:29
|
(13) Пиво с НГ тоже не качается больше. Пришлось распознаватор datamatrix из пдф писать.
|
|||
16
H A D G E H O G s
11.03.24
✎
14:32
|
Причем эти уникумы сначало просто png изображения пихали в pdf, а потом стали рисовать datamatrix квадратиками в postscript языке pdf
|
|||
17
zelenprog
11.03.24
✎
15:30
|
(13) У нас для молочки тоже CSV не скачивается
|
|||
18
zelenprog
11.03.24
✎
15:44
|
(14) >> 1. Используйте подсистему обмена с ЧЗ в типовых 1С
Можешь подробнее объяснить как использовать эту подсистему для решения моей задачи? То есть для печати этикетки со штрихкодом по нашему шаблону. По сути там ничего особенного: печатается стандартный DataMatrix + наш текст. >> 2. Сообществом уже написаны программы для разбора pdf и выгрузки в csv Где это можно найти? На Инфостарте я нашел три очень похожих обработки, но они на вход требуют полный код маркировки. |
|||
19
timurhv
11.03.24
✎
16:28
|
(18) Полный код в любом случае нужен, я писал про новые заказы, либо если сохранился pdf, то скормить можно
shoesmark точка ru |
|||
20
timurhv
11.03.24
✎
16:27
|
+(18)
>Можешь подробнее объяснить как использовать эту подсистему для решения моей задачи? Но это все для новых заказов, либо если есть pdf из СУЗ, то (19) подойдет https://its.1c.ru/db/marking#content:313:buh30 |
|||
21
Смотрящий
11.03.24
✎
16:43
|
Полный код хранится в самом датаматриксе (пара лет на зад, меха и одежда)
Сначала тоже парились с получением файлов csv от ЧЗ или от поставщика. Потом настроил чтение/распознавание датаматриксов с картинки. Ну и пихал данные в серию в документах УГ 11.4 и рисовал свои коды когда было надо |
|||
22
Builder
11.03.24
✎
16:45
|
Кстати, а что мешает свой шаблон сделать на сайте ЧЗ и сразу получать готовые PDF?
Зачем вот это вот все? |
|||
23
Смотрящий
11.03.24
✎
16:48
|
Они не предоставляют такой сервис, вроде
|
|||
24
Chai Nic
11.03.24
✎
16:49
|
(21) Помню, в лесной егаис как-то нам прислали бумажку с qr-кодом, размером с лист а4, где был закодирован весь документ. Хорошо, что там в колонтитуле был УИД документа, по которому можно было в лес-егаисе его подцепить, вбив его вручную посимвольно. А так, ни один смартфон такой 2д-код не брал, не хватало четкости фото. Если отсканировать на сканере и декодировать - то выдавалась какая-то непонятная многокилобайтная фигня, похожая на json. Я так и не понял, как с этим правильно полагалось работать.
|
|||
25
timurhv
11.03.24
✎
16:51
|
(22) (23) Можно подгружать шаблон JasperReports
https://triar.su/articles/kak_sozdat_i_zagruzit_sobstvennyy_shablon_markirovochnoy_etiketki/ |
|||
26
Смотрящий
11.03.24
✎
16:51
|
Датаматрикс - умеет корректно читаться даже если 30% кода отсутствует.
Когда демонстрировал чтение - залепил угол стикером - заказчик только пешки вылупил - очень актуально ему было, т.к. шмотье таскается, коды истираются ... |
|||
27
Builder
11.03.24
✎
16:52
|
(23) Да ладно, а как же я свои делал? :)
Все там можно сделать, качаешь шаблон, есть отдельный редактор и делай что хочешь. Можно установить его основным и все этикетки по нему делаются. |
|||
28
Смотрящий
11.03.24
✎
16:52
|
(25) ЧЗ не предоставляет - это прокладка какая то; сегодня есть, завтра нет - и остановился торговый процесс ...
|
|||
29
Смотрящий
11.03.24
✎
16:53
|
(27) Ну может и докрутили что за два года. Не принципиально уже
|
|||
30
timurhv
11.03.24
✎
16:55
|
(28) Это не прокладка, это шаблон, который загружается в профиле СУЗ.
С помощью JasperReports ЧЗ и генерирует этикетки, чтобы отдать их через веб |
|||
31
Builder
11.03.24
✎
16:57
|
(28) https://markirovka.ru/video_instructions/sozdanie-i-zagruzka-polzovatelskikh-etiketok/
Нештатный только редактор шаблонов. Все остальное штатное. |
|||
32
agarych
11.03.24
✎
19:24
|
(0)
В ЛП и обуви также нельзя просто так получить файлы с кодами маркировки. Я пользуюсь сторонним приложением (платное с годовой лицензией, если не забанят, то я напишу что это за приложение) для получения txt файла со списком КМов, дальше использую в своей обработке для формирования этикеток с DM. csv они перестали присылать в том числе из-за того, что этот файл открывали экселем и там терялся символ [gs]. |
|||
33
FirstLine Support
11.03.24
✎
19:54
|
Слухайте сюда. Всё делается элементарно, без всяких pdf и прочих csv, на базе типовых.
Проводите эмиссию, коды падают в РС "Пул кодов маркировки". Рисуете свой шаблон, дата-матрикс внимание! ТИП штрихкода 24. Пихаете из РС полный код маркировки в свой шаблон. Полный код маркировки вместе с криптохвостом хранится в РС закодированном виде base64. На инфостарте ничего подходящего нет, есть обработки, которые дают информацию к размышлению. Мне лень заливать туда свою обработку печати. |
|||
34
H A D G E H O G s
11.03.24
✎
20:39
|
(33) Это он там хранится после ввода в оборот. До ввода в оборот нет тамнифига.
|
|||
35
FirstLine Support
11.03.24
✎
21:04
|
(34) Всё верно, только с точностью наоборот. После эмиссии - он там хранится, в момент ввода в оборот - удаляется. Если точнее - удаляется криптохвост, а сам код-то конечно остаётся, только от него толку мало - для печати он не пригоден без криптохвоста
|
|||
36
zelenprog
12.03.24
✎
12:44
|
Пока сделали с помощью распознавания PDF.
Из этого PDF-а вытаскиваем полные коды маркировки, затем заполняем наш шаблон этикетки (вставляем туда наш текст, и картинку - формируем новый DataMatrix по коду с помощью внешней компоненты). При формировании картинки DataMatrix-а возник такой вопрос. Надо ли при этом в код маркировки добавлять первый символ согласно "Правил"? В "правилах" написано: ---- 46. Средство идентификации потребительской упаковки, групповой упаковки, набора товаров содержит код маркировки, включающий в себя 3 группы данных, идентифицирующихся атрибутами (идентификаторами применения - AI), предусмотренными стандартом GS1 Data Matrix. В начале строки кода маркировки должен присутствовать признак символики GS1 Data Matrix FNC1 (ASCII 232): ---- Если в начало кода маркировки добавить указанный признак FNC1 (ASCII 232), то сформированный по такому коду DataMatrix не распознается приложением "Честный знак". А если этот признак не добавлять в код маркировки, то сформированный DataMatrix распознается. Для чего тогда нужен этот признак? |
|||
37
zelenprog
12.03.24
✎
12:48
|
(36)+
Причем в "оригинальном" pdf-е от "Честного знака" при чтении сторонними читалками QR-кодов впереди кода маркировки какой-то символ есть. Но это не символ с кодом 232 (ASCII 232). А какой? Как это узнать? И почему там стоит не символ 232? |
|||
38
U4Me2
12.03.24
✎
13:36
|
(36) А с помощью какой внешней компоненты генерируете, может у неё есть какие то параметры для вставки FNC1 комманды?
|
|||
39
U4Me2
12.03.24
✎
14:35
|
у 1с есть компонента печать штрихкодов. Не пробовали её?
|
|||
40
Salimbek
12.03.24
✎
14:22
|
(36) Значит вы "криво" добавляете этот самый FNC1
|
|||
41
zelenprog
12.03.24
✎
15:05
|
(38) >> А с помощью какой внешней компоненты генерируете
Скачал обработку с Инфостарта. В первом сообщении давал ссылку. Вот в этой обработке вшита компонента, которая генерит. (39) >> у 1с есть компонента печать штрихкодов не пробовали её Эта компонента - это часть платформы? Или часть конфигурации? Пробовал на демо-базе "Комплексная автоматизация". Правда конфигурация не очень свежая - 2.5.13.82. В печатаемом штрих-коде также нету "ведущего" FNC1-символа. |
|||
42
zelenprog
12.03.24
✎
15:08
|
(40) >> Значит вы "криво" добавляете этот самый FNC1
Что значит "криво"? Просто добавляю символ в нужной кодировке. В описании встроенной компоненты 1С вообще написано, что этот символ добавляет сама компонента: https://its.1c.ru/db/metod8dev#content:5963:hdoc:specific ------------------ Особенности работы с GS1 кодами К GS1 типам кодов относятся – EAN128, GS1 Datamatrix и GS1 Databar extended stacked. При задании ЗначенияКода GS1 кодов допускается две формы ввода: В виде Строки. В этом случае ЗначениеКода должно содержать код GS1 в HRI (Human Readable Inеrpretation) виде, в котором коды групп применения заключены в круглые скобки, например, (01)04600822901507(11)161109(30)2434. В этом случае компонент интерпретирует строку как код GS1, раскрывает скобки, добавляет символ GS в конце каждой группы переменной длины и генерирует изображение, добавив графический символ начала кода FNC1. В виде Строки Base64. В этом случае внешняя система передает в компонент двоичные данные, содержащие в соответствии со стандартом GS1 группы применения и символ GS завершения группы переменной длины. Компонент генерирует изображение полученных данных, добавляя в штрихкод лидирующий графический символ FMC1. Проверка данных на соответствие стандарту GS1 не производиться. Пример входного значения - MDEwMDg1MTc2ODAwMzAyMDIxPktvbzNLUkx0Z0YicB05M2RHVno= ----------------- То есть в данном случае моя обработка не должна его добавлять. Его добавляет сама коспонента. Но почему же тогда этот символ не "виден" в готовом штрих-коде? |
|||
43
FirstLine Support
12.03.24
✎
17:05
|
(42) я же вам написал в (33), используйте вид штрихкода в компоненте 24. Это и есть FNC1
|
|||
44
zelenprog
13.03.24
✎
13:06
|
(43) Действительно! Надо указывать вид штрихкода 24.
Спасибо! В скачанной обработке с Инфостарта почему-то был указан вид штрихкода 18. После изменения на 24 все заработало: при считывании сформированного обработкой штрихкода в считанном коде "виден " первый символ FNC1. |
|||
45
GreenLab
13.03.24
✎
15:29
|
Вот пожалуйста печать из Пула кодов маркировки СУЗ https://infostart.ru/1c/tools/1315841/ Делал для шин, но думаю для молочки не будет сильно проблемно доработать
|
|||
46
GreenLab
13.03.24
✎
15:30
|
Только желательно Zint обновить в макете
|
|||
47
lodger
13.03.24
✎
16:06
|
лютые изобретатели велосипедов.
судя по ответам автора - у него УТшка. так почему вы не пользуетесь подсистемой печати в УТ? она умеет в кастомные шаблоны этикеток. |
|||
48
FirstLine Support
13.03.24
✎
17:34
|
(47) добавь в родной макет два штрихкода дата-матрикс и ean13, посмотрим
|
|||
49
lodger
13.03.24
✎
18:02
|
(48)
а занафига вам 2 раза ДМ? б не пробовал, но осуждаю. |
|||
50
FirstLine Support
13.03.24
✎
18:24
|
(49)ДМ - один раз
EAN13 - один раз Всего два штрихкода, сверху квадратный, снизу длинненький. Причем, тот который длинненький, должен начинаться не на 46, а на 20 Так надо. |
|||
51
vis
13.03.24
✎
18:37
|
(45) Спасибо за "Печать (экспорт) кодов маркировки автошин"!
|
|||
52
Смотрящий
13.03.24
✎
19:23
|
(50) Этикетка заточена под один штрихкод в УГ - чтоб два выводить дм и еан - лютые пляски с бубном ...
|
|||
53
FirstLine Support
13.03.24
✎
19:52
|
(52) поэтому я сделал свою обработку печати этикетки, а за родную этикетку топил longer.
Там еще есть одна смешная проблема с родной этикеткой - её можно распечатать ТОЛЬКО ОДИН раз |
|||
54
Смотрящий
13.03.24
✎
20:52
|
(53) Вроде декрейзить счетчик надо перед печатью, уж не помню
|
|||
55
FirstLine Support
13.03.24
✎
21:08
|
(54) там нет счетчика печати, потребуется написать обработку для очистки одного реквизита в регистре пула, там хранится дата печати. Написать обработку пять минут, но это же нужно нанимать программиста
|
|||
56
zelenprog
14.03.24
✎
08:28
|
(46) >> Только желательно Zint обновить в макете
А как это делается? Можно чуть подробнее? |
|||
57
GreenLab
14.03.24
✎
12:02
|
(56) Свежий забирает тут https://sourceforge.net/projects/zint и в макете zint загружаем из zint.exe
|
|||
58
lodger
14.03.24
✎
13:24
|
(55) в заказе, с которого печатается набор этикеток, под кнопкой "ещё" есть команда для разрешения повторной печати.
|
|||
59
FirstLine Support
14.03.24
✎
15:12
|
(58) сбросит признак печати у всех 1500 этикеток, а напечатать нужно одну
|
|||
60
zelenprog
15.03.24
✎
14:10
|
А интересно...
В 1С общий модуль "ГенерацияШтрихкодов" какую компоненту печати использует? Это что-то типа Zint? Или какая-то собственная разработка 1С? |
|||
61
PORGY3000
12.04.24
✎
16:28
|
Народ поделитесь как распознавать DataMatrix в pdf !!!
Заранее спасибо ! |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |