Почему при печати ценников, в штрихкод добавляется цифра?

1. wwizard 7 28.08.12 22:57 Сейчас в теме
Приходую товар документом ПТиУ
В каждом товаре завожу штрихкод, который сканирую с товаров, там где написано EAN
Если в штрихкоде 12 символов, то он сканируется и вписывается в базу нормально, а вот при печати ценника в сам ценник почемуто подставляется какая нибуть цифра 13, как этого избежать? Как сделать так чтобы если в EAN цифр 12ть то и печаталось на ценнике, 12ть?

Пользуюсь, для печати ценников вот такой обработкой.
Ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. alexpa2005 29.08.12 00:22 Сейчас в теме
Вообще-то, стандарт шрихкода и называется EAN13, потому что в нем должно быть 13 цифр. Последняя цифра - контрольный символ, который нужен для проверки правильности штрихкода.
Правильно ли я понял, что после печати 13-значного штрихкода и его последующего сканирования не находится товар, так как штрихкод в справочнике имеет только 12 символов?
В вашем случае 13-й символ добавляет сама компонента V8.Barcod.1. То есть нужно либо поменять её на другую, либо настроить эту, если она позволяет. Настройка производится в макете "Ценник". Нажать правую кнопку мыши на штрихкоде и выбрать "Элемент управления: 1С печать штрихкода - Свойства". У меня, к сожалению, эта компонента не установлена, при вызове свойств штрихкода 1С вылетает с ошибкой.
А можно и доработать процедуру обработки считанного штрихкода, чтобы она искала товар по первым 12 символам.
3. Gavroch.v 29.08.12 01:39 Сейчас в теме
EAN13 позволяет ограничить 3 символа.Для этого необходимо выполнить следующую прописку:(поступил так я) - установить условия вызова V8.Barcod.1.dll по 4 позициям- 13 знаков кода,10 знаков кода, значение до 6 первых нулей,значения кода с 4 последними нулями.
Стандартная процедура вызова *.dll+ условия+ ссылка (маску см.выше).Сканер читает без проблем. Одна оговорка - драйвера сканера должен поддерживать EAN13 с данной градацией символов. Для этого по марке сканера необходимо найти драйвера с ссылкой-"поддержки 3 форматов штрих-кода". Все.
4. wwizard 7 29.08.12 02:24 Сейчас в теме
(3) Gavroch.v, а можно на русском языке?

Стандартная процедура вызова *.dll+ условия+ ссылка

где это надо пописать и как?
куда устанавливаются в 1С драйвера сканера? (вроде сканер работает и так)

там где в еан13 - 13 цифр проблем нет, а вот там где их 12 - одни сплошные проблеммы.
5. korobas 29.08.12 05:56 Сейчас в теме
Я поступил проще, в обработку печати ценников добавил проверку на длину строки штрихкода и при необходимости увеличивал строку необходимым числом нулей до 13 символов, добавляя их перед штрихкодом. Таким образом при печати штрихкода у меня генерируется штрихкод правильной длины с нужным количеством лидирующих нулей, при сканировании этого ШК товар подбирается нормально.
9. wwizard 7 18.09.12 18:13 Сейчас в теме
(5) korobas, Можно поподробнее, как это сделать
6. wwizard 7 29.08.12 06:38 Сейчас в теме
Так мне не надо генерировать штрих код, я работаю с теми что уже есть на товарах.


Если такой штрихкод, то товар ищется по нему нормально, а вот когд печатается ценник, одна случайная цифра добавляется в конце.
а надо чтобы не добавлялась, что бы было как есть, есть 12ть цифр - значит и на ценнике, 12ть. есть 13 символов, значит и на ценнике печатаем 13, есть 5 символов и на ценнике печатаем 5ть. В общем хочу чтобы прога не придумывала ничего, а печатала как есть, может можно как-то в ней отключить проверку на ошибки
16. lefthander 29.01.17 17:30 Сейчас в теме
(6)Каким образом вы печатаете ШК? Уточню - как именно он формируется для печати? если есть обработка, то хорошо бы взглянуть на код.
ЗЫ код который вы прикрепили на картинке НЕ ЕАН13
7. wwizard 7 29.08.12 19:08 Сейчас в теме
т.е. никак, получается проблемма уйдет только если генерировать свои штрихкоды. А жаль.
8. wwizard 7 18.09.12 18:12 Сейчас в теме
так что никто не встречался с такой проблемкой?
10. karlagin 28.01.17 21:22 Сейчас в теме
Понимаю, что тема старая, но может кто подскажет, в каком модуле необходимо внести исправление кода, чтобы печатался 12-ти значный штрих-код без подстановки контрольной цифры? Конф-ия УТ11.3.
11. lefthander 28.01.17 22:10 Сейчас в теме
(10)вы бы не задавали глупых вопросов, а прочитали по ШК и в частности по ЕАН13, не может быть этот ШК из 12 цифр, сканер считывает 13 и по 13 цифре проверяет все остальные.
13. karlagin 29.01.17 01:54 Сейчас в теме
(11) Это если код EAN-13, а если код UPC который не содержит контрольной цифры? Вариант с добавлением штрихкода типа "0+UPC = EAN13" не предлагать

Я уточню, есть товар с кодом типа UPC который состоит из 12 символов, при сканировании он считывается, но при печати этикеток товара в конец кода добавляется контрольная цифра от EAN13. Задача не печатать данную цифру.
14. lefthander 29.01.17 10:57 Сейчас в теме
(13)так вы правильно задайте тип ШК в компоненте формирующей печать и все будет правильно..
15. karlagin 29.01.17 11:12 Сейчас в теме
(14)Так нет там такого типа ШК по умолчанию в принципе
12. SyachinS 28.01.17 22:51 Сейчас в теме
Автор, вы создаете проблему на пустом месте. 13-я цифра это контрольное число. И тип кода не зря EAN13...
17. lexin1976 13 01.03.17 21:46 Сейчас в теме
В шаблоне для печати поставьте тип ШК авто .
18. teplyi 24.08.21 17:31 Сейчас в теме
Для таких случаев можно использовать CODE39. Подсмотрел решение в 1С:Розница.

в общий модуль
ГенерацияШтрихкода.ПодготовитьИзображениеШтрихкода(ВнешняяКомпонента, ПараметрыШтрихкода)

вместо:
Если ПараметрыШтрихкода.ТипКода = 99 Тогда
		ВнешняяКомпонента.АвтоТип = Истина;
	Иначе
		ВнешняяКомпонента.АвтоТип = Ложь;
		ВнешняяКомпонента.ТипКода = ПараметрыШтрихкода.ТипКода;
	КонецЕсли;


вставляем это:

Если ПараметрыШтрихкода.ТипКода = 99 Тогда
		ТипШтрихкодаВрем = МенеджерОборудованияКлиентСервер.ОпределитьТипШтрихкода(ШтрихкодВрем);
		Если ТипШтрихкодаВрем = "EAN8" Тогда
			ВнешняяКомпонента.ТипКода = 0;
		ИначеЕсли ТипШтрихкодаВрем = "EAN13" Тогда
			ВнешняяКомпонента.ТипКода = 1;
			// Если код содержит контрольный символ, обязательно указываем.
			ВнешняяКомпонента.СодержитКС = СтрДлина(ШтрихкодВрем) = 13;
		ИначеЕсли ТипШтрихкодаВрем = "EAN128" Тогда
			ВнешняяКомпонента.ТипКода = 2;
		ИначеЕсли ТипШтрихкодаВрем = "CODE39" Тогда
			ВнешняяКомпонента.ТипКода = 3;
		ИначеЕсли ТипШтрихкодаВрем = "CODE128" Тогда
			ВнешняяКомпонента.ТипКода = 4;
		ИначеЕсли ТипШтрихкодаВрем = "ITF14" Тогда
			ВнешняяКомпонента.ТипКода = 11;
		ИначеЕсли ТипШтрихкодаВрем = "QR" Тогда
			ВнешняяКомпонента.ТипКода = 16;
		ИначеЕсли ТипШтрихкодаВрем = "EAN13Addon2" Тогда
			ВнешняяКомпонента.ТипКода = 14;
		ИначеЕсли ТипШтрихкодаВрем = "EAN13Addon5" Тогда
			ВнешняяКомпонента.ТипКода = 15;
		Иначе
			ВнешняяКомпонента.АвтоТип = Истина;
		КонецЕсли;
	Иначе
		ВнешняяКомпонента.АвтоТип = Ложь;
		ВнешняяКомпонента.ТипКода = ПараметрыШтрихкода.ТипКода;
	КонецЕсли;
Показать
dikd; user1654204; 1102zz@mail.ru; CnupT; +4 Ответить
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот