powered by simpleCommunicator - 2.0.51     © 2025 Programmizd 02
Форумы / [игнор отключен] [закрыт для гостей] / EAN 128 документу
25 сообщений из 27, страница 1 из 2
EAN 128 документу
    #36602531
Заварник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Добрый день.
Нужно в УТ 10.2 документу(докуметам) формировать и присваивать штрихкод.
Исользовать EAN 13 не хотелось бы.
По этому решили перевести все новые виды документов на другой тип штрихкода - EAN 128.

Но в УТ все заточено на формирование именно EAN 13.

Погуглив ничего интересного по данной теме не нашли, может кто кинуть пример формирования EAN 128?

И еще вопрос, в модуле работа с торговым оборудованием есть проверка контрольного символа, если наш код будет только только для внутреннего использования стоит ли заморачиваться с проверкой и формировать контрольные симофолы?
...
Рейтинг: 0 / 0
EAN 128 документу
    #36602946
DmitriyZ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А в чем, собственно, проблема? Не знаете как запихнуть номер дока в штрих код?
На счет контрольных символов: да, обязательно. Они служат для определения сканером правильно ли он считал штрих код.
...
Рейтинг: 0 / 0
EAN 128 документу
    #36603199
Заварник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
DmitriyZ,

А как проверять, по какому алгоритму проверять? Не ужели так же как и ЕАН 13?
...
Рейтинг: 0 / 0
EAN 128 документу
    #36603212
Заварник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Просто ЕАН 128 может и из букв состоять. А как буквы считать? :)
...
Рейтинг: 0 / 0
EAN 128 документу
    #36603222
DmitriyZ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ваша задача - правильно сгенерировать контрольный символ. Алгоритм генерации для EAN 128 - в интернете найдете, например вот http://ru.wikipedia.org/wiki/Code-128. Проверять этот символ будет сам сканер, без вашего вмешательсва. Вам его нужно будет проверять, если только захотите проверять корректность ШК, введенного вручную, например.
...
Рейтинг: 0 / 0
EAN 128 документу
    #36603242
Господин ПЖ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
http://cleverence.ru/site.aspx?page=WarehouseBarcoding
...
Рейтинг: 0 / 0
EAN 128 документу
    #36603336
Заварник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Данный формат предназначен для передачи информации о грузе между промышленными предприятиями. В коде регламентрирован словарь (Code-128), регламентированы группы кодов, но не регламентирова длина.

Все равно не понял, но судя по тому что написано выше я могу например взять штрихкод длиной в 30 символов.
Первые 3 символа префикс а остальные оставить для кода. А где тогда ставить ЧекСумм?

Просто в ЕАН13 все понятно.
...
Рейтинг: 0 / 0
EAN 128 документу
    #36603362
DmitriyZ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ЗаварникДанный формат предназначен для передачи информации о грузе между промышленными предприятиями. В коде регламентрирован словарь (Code-128), регламентированы группы кодов, но не регламентирова длина.

Все равно не понял, но судя по тому что написано выше я могу например взять штрихкод длиной в 30 символов.
Первые 3 символа префикс а остальные оставить для кода. А где тогда ставить ЧекСумм?

Просто в ЕАН13 все понятно.

Контрольный символ ставится перед стоп символом. Кстати, в УТ 10.3.11.4 (вчера вышла) реализована работа с EAN128, можете там посмотреть.
...
Рейтинг: 0 / 0
EAN 128 документу
    #36603403
Заварник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
DmitriyZ,

Спасибо, http://tradepilot.ru/goods-marks/code128.html почитал, вроде чуток начал понимать. :)

А новую версию надоть посмотреть.
...
Рейтинг: 0 / 0
EAN 128 документу
    #36603461
DmitriyZ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Кстати, скачал тут компоненту для печати ШК от 1С. Она вроде умеет сама контрольный символ расчитывать. И примеров там богато именно по EAN128, рекомендую http://users.v8.1c.ru/BarCode.aspx
...
Рейтинг: 0 / 0
EAN 128 документу
    #36603990
Заварник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
DmitriyZ,
Я не могу скачать. :(
...
Рейтинг: 0 / 0
EAN 128 документу
    #36604667
Заварник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Легче не стало, попробывал расчитать контрольный знак по алгоритму прведенному на странице вот пример:

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
Имеем штрихкод 200999999999_ нужно определить чексум 

Start Code C,  20 ,  09 ,  99 ,  99 ,  99 ,  99 

 105 ,  20 ,  09 ,  99 ,  99 ,  99 ,  99 

 1 , 1 , 2 , 3 , 4 , 5 , 6 

 105 * 1 = 105 
 20 * 1 = 20 
 09 * 2 = 18 
 99 * 3 = 297 
 99 * 4 = 396 
 99 * 5 = 495 
 99 * 6 = 594 

 105 + 20 + 18 + 297 + 396 + 495 + 954 = 2285 

 2285 / 103 = 22 , 1844 

Я не понял, мне по идее нужен только 1 контрольный знак. А здесь их получается 2.

Подскажите где я не прав.

Спасибо.
...
Рейтинг: 0 / 0
EAN 128 документу
    #36604714
DmitriyZ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
http://tradepilot.ru/goods-marks/code128.html
...
Рейтинг: 0 / 0
EAN 128 документу
    #36604780
Господин ПЖ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ЗаварникЛегче не стало, попробывал расчитать контрольный знак по алгоритму прведенному на странице вот пример:

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
Имеем штрихкод 200999999999_ нужно определить чексум 

Start Code C,  20 ,  09 ,  99 ,  99 ,  99 ,  99 

 105 ,  20 ,  09 ,  99 ,  99 ,  99 ,  99 

 1 , 1 , 2 , 3 , 4 , 5 , 6 

 105 * 1 = 105 
 20 * 1 = 20 
 09 * 2 = 18 
 99 * 3 = 297 
 99 * 4 = 396 
 99 * 5 = 495 
 99 * 6 = 594 

 105 + 20 + 18 + 297 + 396 + 495 + 954 = 2285 

 2285 / 103 = 22 , 1844 

Я не понял, мне по идее нужен только 1 контрольный знак. А здесь их получается 2.

Подскажите где я не прав.

Спасибо.

теплое с мягким... знак на штрихе будет один "223112", а содержать он по кодировке C будет число 22.
...
Рейтинг: 0 / 0
EAN 128 документу
    #36604784
Господин ПЖ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
просто в С больше цифр влазит за счет того что цифра 0-99 это один знак в штрихе. A и B в одном знаке кодируют только 0-9
...
Рейтинг: 0 / 0
EAN 128 документу
    #36604868
Заварник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Господин ПЖ,

Все равно не понял, значит у меня штрихкод будет

20099999999922

А в случае

200000000001_

Start Code C, 20, 00, 00, 00, 00, 01

105, 20, 00, 00, 00, 00, 01

1,1,2,3,4,5,6

105*1=105
20*1=20
00*2=0
00*3=0
00*4=0
00*5=0
01*6=6

105+20+0+0+0+0+6=131
131/103=1,27

Тоесть 01
А значит наш штрихкод имеет вид
20000000000101

Я прав?

Спасибо и ссори что трачу Ваше время, но просто реально хочу разобраться в этом.
...
Рейтинг: 0 / 0
EAN 128 документу
    #36606890
Заварник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Все получилось, потребывалось литр пива, пол пачки сигарет и пол ночи на написание и час на отладку.
Чуть позже скину результат. Правда формирование контрольного символа я делал только для Code C.
Ну мне только это и нужно было. Для A и B конечно сложнее но думаю подумав можно сделать.
...
Рейтинг: 0 / 0
EAN 128 документу
    #36607996
Заварник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А вот и код
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
Функция ПривестиСтрокуКЧислу(ЧислоСтрокой, ВозвращатьНеопределено = Ложь) Экспорт
	
	ОписаниеТипаЧисла = Новый ОписаниеТипов("Число");
	ЗначениеЧисла = ОписаниеТипаЧисла.ПривестиЗначение(ЧислоСтрокой);
	
	Если ВозвращатьНеопределено И (ЗначениеЧисла =  0 ) Тогда
		
		Стр = Строка(ЧислоСтрокой);
		Если Стр = "" Тогда
			Возврат Неопределено;
		КонецЕсли;
		
		Стр = СтрЗаменить(СокрЛП(Стр), "0", "");
		Если (Стр <> "") И (Стр <> ".") И (Стр <> ",") Тогда
			Возврат Неопределено;
		КонецЕсли;
	КонецЕсли;
	
	Возврат ЗначениеЧисла;	
	
КонецФункции

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
//Сформировать штирихкод ЕАН128
Функция СформироватьШтрихКодEAN128() Экспорт
	
Префикс = СокрЛП(ПланыВидовХарактеристик.ТипыШтрихкодов.EAN128.ПрефиксДокумента);
Если Префикс = Null Тогда
	Сообщить("Не указан префикс документа!");
	Возврат "";
КонецЕсли;
			
Запрос = Новый Запрос("
	|ВЫБРАТЬ
	|	МАКСИМУМ(ПОДСТРОКА(РегШтрихКоды.Штрихкод, 3, 16)) КАК Код
	|ИЗ
	|	РегистрСведений.ШтрихКоды КАК РегШтрихКоды
	|ГДЕ
	|	РегШтрихКоды.ТипШтрихкода = ЗНАЧЕНИЕ(ПланВидовХарактеристик.ТипыШтрихкодов.EAN128)
	|	И РегШтрихКоды.Штрихкод ПОДОБНО ""2" + Префикс + "__________________""
	|");

	Выборка = Запрос.Выполнить().Выбрать();
	Выборка.Следующий();

	ТекКод = ?(Выборка.Код = NULL,  1 , Мин(ПривестиСтрокуКЧислу(Выборка.Код) +  1 ,  9999999999999999 ));

	Штрихкод = "2" + Префикс + Формат(ТекКод, "ЧЦ=16; ЧВН=; ЧГ=");
	Штрихкод = Штрихкод + КонтрольныйСимволEAN128(ШтрихКод,  20 );

	Возврат Штрихкод;

КонецФункции // СформироватьШтрихКод EAN128()

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
// Функция вычисляет контрольный символ кода EAN128
Функция КонтрольныйСимволEAN128(ШтрихКод, Тип) Экспорт

	КоличествоИтераций =  9 ;
	
	Code =  105 ;
	
	Для Индекс =  1  по КоличествоИтераций Цикл
		Code = Code + (Сред(ШтрихКод, Индекс *  2  -  1 ,  2 )) * Индекс;
	КонецЦикла;
	
	Code = Code/ 103 ;
	
	Возврат Формат(Code, "ЧЦ=2; ЧВН=");
	
КонецФункции // КонтрольныйСимволEAN128()
...
Рейтинг: 0 / 0
EAN 128 документу
    #36608014
Господин ПЖ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
в сухом остатке - контрольный - двухзначный?
...
Рейтинг: 0 / 0
EAN 128 документу
    #36636090
Заварник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Господин ПЖ,

Да.
...
Рейтинг: 0 / 0
EAN 128 документу
    #36791584
Fixin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Заварник,

так у вас получилось или нет, поделитесь кодом?
...
Рейтинг: 0 / 0
EAN 128 документу
    #37228440
Заварник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Fixin,

А разве выше не представлен код?
...
Рейтинг: 0 / 0
EAN 128 документу
    #37228561
BVB_berserk
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
ЗаварникFixin,

А разве выше не представлен код?

Видимо, надо персонально в личку прислать :)
...
Рейтинг: 0 / 0
EAN 128 документу
    #37238912
andrew.ab
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Зачем так все усложнять. Купи или погугли и скачай Бизнес-Плюс: Штрихкоды документов . И все проблемы будут решены.
...
Рейтинг: 0 / 0
EAN 128 документу
    #37606306
vikiwo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
maybe you can visit http://keepautomation.com/. they provide professional info about it.
good luck.
...
Рейтинг: 0 / 0
25 сообщений из 27, страница 1 из 2
Форумы / [игнор отключен] [закрыт для гостей] / EAN 128 документу
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]