|
Печать штрих кода Interleaved 2 of 5 без Контрольного Символа возможно ли?! | ☑ | ||
---|---|---|---|---|
0
resonance
27.01.17
✎
19:59
|
Добрый день, всем! Помогите - опускаются руки. Говорят этот форум Волшебный...
Суть задачи - печатать на принтер этикеток (Zebra 2824) штрихкоды в кодировке "Interleaved 2 of 5", кол-во символов в коде у меня 10(!) и не может быть изменено (такой бизнес-процесс) весь товар маркируется только 10-значным кодом и только кодировкой "Interleaved 2 of 5", так как штрих-коды считывает спец. оборудование, а не человек со сканером... В общем... 1С 8.3 УФ (8.3.9.2033), в общих модулях нашел Штрихкодирование. Он использует компоненту ПодключитьВнешнююКомпоненту(ОбщийМакет.КомпонентаПечатиШтрихкодовWindows64), на макете разместил картинку с именем КартинкаШтрихкода в общем все печатается НО. Если я передаю в компоненту 9-ти значный код = компонента генерирует КС и делает 10 - все хорошо и красиво, но если я передаю 10-ти значные уже готовый код, компонента пытается подставить свой КС и получается уже нечетное число - соответственно = Invalid Barcode! В параметрах компоненты: ВнешняяКомпонента.СодержитКС = Ложь; ВнешняяКомпонента.ВидимостьКС = Ложь; Не помогают. КС все равно рассчитывается и пытается "втулится" вот сюда: ВнешняяКомпонента.ЗначениеКода = Штрихкод; Что и вызывает ошибку. Кто ни будь с таким воевал? P.S. Конфигурация Поликлиника 1.3 P.S.S. Обновился на последнюю версию платформы - ноль эффекта. P.S.S.S. Попробовал с другого сервера - ноль эффекта. Может эта кодировка просто не умеет работать без КС? Кто поможет - ящик пива! (ну или, что Вы там пьете))) |
|||
1
resonance
27.01.17
✎
20:00
|
И еще для информации, наткнулся на старую тему (2010г.) с точно такой же проблемой и без единого ответа, может я многого хочу... v8: Штрихкод Interleaved 2 of 5 - 1c вылетает
|
|||
2
Злопчинский
27.01.17
✎
21:12
|
Пояндекси code39 или code128
На крайняк определи какие форматы штрих-кодов есть интерлив 2из5 При печати шк выбери конкретный тип штрих-кода из полходящих |
|||
3
Torquader
27.01.17
✎
23:14
|
Если очень хочется напечатать штрих-код, то ищем шрифт, которым печатается штрих-код. Самый простой шрифт - это чёрный и белый квадратики - их количество определяет какой будет штрих-код.
Только, нужно проверить, что такой штрих-код считается сканером. Насколько я помню, есть ещё какой-то 2 из 5 зеркальный, в котором просто нет контрольной суммы, но он другой - у вас случаем не он ? |
|||
4
dmpl
28.01.17
✎
09:24
|
(0) А согласится ли ваше оборудование читать ШК без КС? Если там все настолько жестко - то и КС может быть обязателен.
|
|||
5
resonance
28.01.17
✎
10:54
|
(2) code39,code128 - печатает без проблем, но их не читает сканер, точнее читает но неверно.
штрих-кодов есть интерлив 2из5 - поясните пожалуйста, имеет в виду что как EAN13 который и есть интерлив но 13 значный? Вы это имеет в виду найти аналогичную кодировку? Формат EAN13 Формат EAN8 Формат Code 39 Формат Code 93 Industrial 2 of 5 Interleaved 2 of 5 Codabar Code 128 EAN128 RSS 14 Code 16k PDF-417 Вот те что доступны мне. https://its.1c.ru/db/metod8dev#content:1619:hdoc |
|||
6
resonance
28.01.17
✎
10:56
|
(3) По поводу зеркального не знаю, но мой точно выдает ошибку если ему дать четное кол-во символов = он автоматом добавляет контрольный, появляется нечетная последовательность -"Неверный штрих код". Почитаю про зеркальный и вообще виды интерлива
|
|||
7
resonance
28.01.17
✎
10:59
|
(4) оборудование должно получить 10. цифр. Это главное условие, 10 цифр уникальных, которые не повторяются, 9 цифр я передаю без проблем, но десятую (КС) компонента вставляет свой, и получается последовательность 10 знаков, цифр все круто, кроме того что 10-ю цифру я должен вставить свою, определенную для каждого товара (порядковый № контейнера), меня бы устроило, просто подменять КС своим и все. Но как я не старался не получается... похоже придется использовать альтернативные методы...
|
|||
8
dmpl
28.01.17
✎
15:00
|
(6) Не, там количество символов всегда четное - ITF кодирует символы парами. Поэтому, скорее всего, в начале просто добавляется 0, если передать четное число символов и добавить КС.
(7) Т.е. оборудование не проверяет контрольный символ? Это точно известно? |
|||
9
resonance
28.01.17
✎
15:48
|
(8) Оборудование не проверяет КС! Известно точно! Главное передать ему уникальную строку из 10 "цифр"/символов, последним должен стоят номер контейнера, вот в этом все и загвоздка... если я передаю в компоненту вот сюда ВнешняяКомпонента.ЗначениеКода = Штрихкод; нечетное кол-во символов - проблем нет, компонента сама добавляет 10й (не говорю уже о том что у меня стоит параметр ВнешняяКомпонента.ВидимостьКС = Ложь;) а она его все равно отбражает но это ладно... Самый интерес начинается когда я передаю сразу нужное кол-во (четно) вот тогда ->
Ошибка при выполнении запроса POST к ресурсу /e1cib/logForm: Падает 1Ска (платформа я так пологаю). Платформу обновил -> ничего, и к стати такая же ошибка если я скажем выберу теп кода ITF14 и передам в компоненту 14-значный код...тоже самое упадет все приложение... |
|||
10
resonance
28.01.17
✎
15:51
|
(8) Если передаю четное (Кол-во символов скажем 10)в ITF14 -> Будет сгенерирована картинка с надписью Invalid Barcode!. Если я в ITF14 передаю 13 символов -> добавиться 14 контрольный но не тот что мне нужно... если я передам 14 символов - падает платформа! При чем если взять онлайн генераторы штрих кодов то там при вводе нечетного кол-ва система сама добавляет в начали нули (меня бы и это устроило) а если вводишь готовый код нужной длины - просто его отображает. Сервер 2012 R2, MS SQL 2012. Получается что то с базой?
|
|||
11
dmpl
28.01.17
✎
15:55
|
(10) Не, у меня 1С-ная компонента тоже падала при определенных условиях и валила платформу. Так может дополнять 10-символьный ШК нулем и генерить с КС?
|
|||
12
resonance
28.01.17
✎
16:25
|
(11) В аппарат должен зайти номер, вот реальный пример 6897300441, т.е. если я передам скажем в ITF14->0006897300441 то на этикетке получаю 00068973004415, т.е. в аппарат попадет одинадцатизначная цифра с петеркой на конце т.е. 68973004415, я уже думаю отключить вывод текста в компоненте, получать просто штрих а сам код выводить в макет отдельной строкой под штрих кодом, но одна загвоздка - аппарат все равно считает из штрих кода 11 цифр...
да и для уточнения у меня 8.3.9.2033, в режиме совместимости с 8.2.16... может отключить совместимость и попробовать (сервер тестовый естественно)... |
|||
13
Torquader
28.01.17
✎
19:48
|
Попробуйте CODE128 в режиме цифр - он как раз кодирует чётное число цифр и пишет контрольную сумму, которую сканер хоть и рассчитывает, но не передаёт.
И, самое главное, что CODE128 - это самый узкий из всех. (У меня для 10,16 и 20 цифр как раз использовался он). |
|||
14
resonance
30.01.17
✎
12:26
|
(13) Спасибо за совет CODE 128-отличная вещь, только засада в том, что сканер читает ТОЛЬКО ITF. А ITF - не печатается, точнее печатается, но как я писал выше - либо с КС, либо падает платформа... А мне нужно четная кол-во символов и последний символ я должен проставлять тот который нужен, а компонента проставляет КС.
|
|||
15
Fragster
гуру
30.01.17
✎
12:29
|
zint
|
|||
16
Serega103
06.02.17
✎
01:20
|
(14) такая же проблема была: Interleaved 2 of 5 и 9-ти значный код, при попытке поставить "0" в начале строки платформа вылетает. целый день мучений, в результате решил вот как. отказался от 1с-ной печати штрихкодов, а установил компоненту barcode.ocx которая использовалась еще в 1сv77. Она отличнейшим образом вывела 2 of 5, правда старая версия не поддерживает вращение штрихкода (мне нужно чтобы штрихкод выводился вертикально), но уж с этим я справился, хотя и пришлось переделывать макет. Надеюсь что мой совет помог))
|
|||
17
resonance
18.02.17
✎
08:28
|
(15) Проблема РЕШЕНА. ZINT помог. Отличная библиотека. Устанавливается на сервер. И при генерации картинки штрих-кода 1С обращается не к встроенным модулям, а к этой компоненте. В и итоге все получилось. Interleaved 2 of 5 - генерируется как надо. Проект успешно сдан. Спасибо всем участвовавшим, а особенно Fragster. Куда отправлять магарыч?)
|
|||
18
resonance
18.02.17
✎
08:30
|
К стати таким же образом реализовал генерацию PDF файлов из макетов и ШМД. С помощью wkhtmltopdf. Принцип тот же, передаются параметры, а программа wkhtmltopdf установленна на сервере возвращет адрес файла во временном хранилище 1С, и его дальше можно скопировать, отправить по почте, открыть, в общем все, что душе угодно. 1С еще раз доказала, что может работать практически со всеми компонентами операционной системы, сети, принтерами, просто подключи внешний модуль выполняющий ту или иную функцию и платформа будет его использовать...
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |