Имя: Пароль:
1C
1С v8
Печать штрих кода EAN-128 средствами 1С
0 Merkalov
 
05.05.19
05:13
Что сделано:
1CBarCode скачан с сайта ИТС: https://its.1c.ru/db/metod8dev/content/1838/hdoc

На макете размещен Штрихкод
Таблицы>Рисунки>Вставить объект>Штрихкод

Печать выполняется процедурой, текст для шифровки берется из ПоляВвода - стрШтрихКод.

      ТабДок = Новый ТабличныйДокумент;
    Макет = ПолучитьМакет("МакетШтрихКод");
    Область = Макет.ПолучитьОбласть("ОбластьШтрихкод");

    Область.Рисунки.Штрихкод.Объект.ТипКода = 2; //EAN-128
    Область.Рисунки.Штрихкод.Объект.Сообщение = стрШтрихКод; //Кодируемое сообщение
    Область.Рисунки.Штрихкод.Объект.ТекстКода = стрШтрихКод; //Текст размещаемый под картинкой штрих кода

    ТабДок.Вывести(Область);
    ТабДок.Показать();

Всё. Штрих-код выводится, но он отличается от того что должно быть!
Пример корректного штрих-кода взят с википедии(ещё есть онлайн-сервис формирования штрих-кода, там штрих-код совпадает с тем что есть в википедии и с тем что генерирует компонента strokescribe.com!) Только внешняя компонента 1С печатает отсебятину, у остальных всё одинаково!

В этой теме решали точно такую же проблему, но не решили..
v8: Генерация штрихкода GS1-128 в 1С

Компонента с сайта https://strokescribe.com печатает так как нужно, но стоит денег(работает и в ОФ и в УФ)

Тестовая конфигурация в режиме обычного приложения.
Уже не первый день сижу над этими штрих-кодами. Буду рад любой помощи.
1 Мимохожий Однако
 
05.05.19
06:54
Какая разрядность и релиз платформы? Компонента какой версии?
2 Мимохожий Однако
 
05.05.19
06:56
3 Merkalov
 
05.05.19
07:21
(1) 64, платформа 8.3.10.2667
Версия компоненты 8.0.14.2

К сожалению не имею доступа к ИТС для обновления до последней версии.

Я завтра на работе распечатаю тестовые штрих-коды и попробую их прочитать сканером.
4 Garykom
 
гуру
05.05.19
07:26
(3) Давай картинки с ШК, попробую их сканером с экрана, мне сканер-кольцо MJ-R30 приехал.
5 Мимохожий Однако
 
05.05.19
07:34
(3) Попробуй на 32 разрядной платформе.
6 Merkalov
 
05.05.19
08:18
(4)
Загрузил вордовский документ.
Первые штрих-код сгенерирован 1С, второй триал-версией компоненты strokescribe.
https://dropmefiles.com/5K4xn
7 Garykom
 
гуру
05.05.19
08:32
(6) Оба ШК считываются абсолютно идентично
https://i.paste.pics/cbbedf613486223d9a18c2d296d300a0.png
8 Merkalov
 
05.05.19
08:45
(7) Спасибо, завтра продолжу тестировать на разных штрих-кодах.
Всплыла новая проблема.
Компонента 1С генерирует штрих-код только если указать скобки для идентификаторов, компонента strokescrib работает наоборот, если ей указать скобки - то не сгенерирует шрих-код, а без скобок - сделает как надо, ещё и в подписи штрихкода проставит скобки.

Т.е указав 01950123456789033103000123 - 1с не сможет вывести штрих-код, нужно обязательно выделить идентификаторы (01)95012345678903(3103)000123

Это нормальное поведение?
9 Garykom
 
гуру
05.05.19
08:46
(8) А уй их знает если честно.
10 Garykom
 
гуру
05.05.19
08:49
У меня кстати большой вопрос к разработчику "компонента strokescribe.com".

Что он использовал в разработка, какие сторонние разработки/код и под какой лицензией.
И нет ли с его стороны нарушений, за которые можно его слегка того.
11 NorthWind
 
05.05.19
09:37
(8) это логично, потому что не всегда AI могут быть отделены друг от друга неявно - они бывают переменной длины. В этом случае в код должен быть вставлен разделитель.
12 NorthWind
 
05.05.19
09:40
кстати, в вашем случае (хотя могу ошибаться) - оба этих AI постоянной длины, один всегда 14, второй всегда 6 символов. А значит, вы в принципе не обязаны указывать разделители и можете указать все подряд.
13 NorthWind
 
05.05.19
11:24
похоже на то, что компонента с сайта 1С работает криво с EAN128. Она действительно зачем-то обязательно требует скобки в тексте сообщения. Но вот обрабатывать их как положено по стандарту GS1 - т.е. выделяя AI, опуская скобки и вставляя разделитель в конце значения идентификатора при необходимости - вот этого она делать не умеет. Поэтому и получается ерунда.
14 Черный маклер
 
05.05.19
12:27
(10) думаю вопрос "к разработчику" надо адресовать к ТС, так как он скорее всего и есть разработчик StrokeScribe :)
15 Garykom
 
гуру
05.05.19
12:32
(14) Была такая мысль, ибо акк свежий и тема так построена со словами что трактовка:
"Компонента с сайта https://strokescribe.com печатает так как нужно, но стоит денег(работает и в ОФ и в УФ)" достаточно однозначна.

ВК от 1С какашка - есть вот платная и для ОФ и для УФ.
16 d4rkmesa
 
05.05.19
13:13
(6) Не вижу ничего неправильного, вам правда шрифт не нравится и соотношение сторон области штрих-кода?
17 Merkalov
 
05.05.19
14:27
(13) Однако товарищ выше протестировал штрих-код сгенерированный 1С и он считался верно, два разных штрих-кода в одной кодировке приводят к одному результату.

(14) Я не разработчик :(

(16) Штрих-коды в начале и в конце различаются. В конце у штрих-кода от 1С присутствует СТОП и он верно нарисован, а вот что до него - почему-то отличается от того, что приведено в примере на википедии и от того что печатает онлайн-сервис(хорошо что не упомянул его имя, иначе стал бы и его разработчиком?)
18 NorthWind
 
05.05.19
15:10
(17) [Однако товарищ выше протестировал штрих-код сгенерированный 1С и он считался верно] - служебная инфа какая-то скорее всего напихана ненужная, которую сканер не вернул. Табы, FNC1, еще что-нибудь невидимое. Код визуально явно длинее чем должен быть - значит, есть невидимые символы.
19 unbred
 
02.07.19
10:45
up
(8) >"Компонента 1С генерирует штрих-код только если указать скобки для идентификаторов"
после чего ни один сканер и ни один ТСД их не читает.
подскажите,как решается вопрос?
1сбаркод 8.0.14.2
20 unbred
 
02.07.19
10:49
(19) вдогонку . какой длины (высоты?))) юзать ленту,что-бы корректно печатался ШК на 51 символ (у меня 7.62мм сейчас-не читается (сливаются и портятся символы) )
21 d4rkmesa
 
02.07.19
13:39
(19) Это не так, далеко не так. Копайте настройки ваших ТСД. Что в текст сканера ШК попадает в "клавиатурном" режиме?
22 RomakON
 
02.07.19
13:53
Как вариант, посмотри как это сделано в УТ 11, ну или вообще выдерни оттуда весь механизм печати 128 штрихкода
23 unbred
 
02.07.19
14:05
(21) если я зашил скобки в ШКмакет.Объект.Сообщение  -уже ничего не попадает,так как первый символ скобка
24 unbred
 
02.07.19
14:06
(22) нет под рукой . БП 3.0 есть. ща гляну.
25 unbred
 
02.07.19
14:07
+(23) ШКмакет= ОбластьМакета.Рисунки.D1;
26 unbred
 
02.07.19
14:31
(23) наврал! попадает "(01)тутЦиферкиGTIN"   ,а дальше не читает. упс.
27 unbred
 
02.07.19
14:32
+(26)  но это после того,как поставил 8.0.16 компоненту. на 8.14 ничего не попадало.