Пример демонстрирует формирование штрих кода SSCC по стандарту GS1 для палеты. Формат штрих кода соответствуе требованиям сети X5.
Код генерации штрих кода:
#Область Алгоритм_Формирования_ШтрихКода// Функция формирует контрольный символ
// ==Параметры ================================
//** ШтрихДляОбработки - в этот параметр передается штрих код формата SSCC GS1 подмножество формата EAN-128
//** КоличествоРазрядов - передается чмсло разрядом для расчета контрольного символа для GS1 значение равно 17
&НаСервере
Функция Сформировать_КонтрольныйСимвол(ШтрихДляОбработки,КоличествоРазрядов)
СтрокаДляОбработки=Прав(СокрЛП(Строка(ШтрихДляОбработки)),КоличествоРазрядов);
КонтрольнаяСумма=0;
Для ц=1 по КоличествоРазрядов Цикл
ЧислоДляАнализа=Число(Сред(СтрокаДляОбработки,ц,1));
ОстатокОтДеления=ц/2 -Цел(ц/2);
Если ОстатокОтДеления=0 Тогда
КонтрольнаяСумма=КонтрольнаяСумма+ ЧислоДляАнализа;
Иначе
КонтрольнаяСумма=КонтрольнаяСумма+ ЧислоДляАнализа*3;
КонецЕсли;
КонецЦикла;
КонтрольныйСимвол=Окр(КонтрольнаяСумма,-1)-КонтрольнаяСумма;
Если КонтрольныйСимвол<0 Тогда
КонтрольныйСимвол=КонтрольныйСимвол+10;
КонецЕсли;
Возврат КонтрольныйСимвол
КонецФункции
//********************************************************************************
//Функция формируем первичный штрих код в формате SSCC или GS1
// Состав шрих кода можно менять
&НаСервере
Функция Сформировать_ШтрихSSCC(КодУпаковки,ГЛН,НомерПаллеты)
Штрих=""+КодУпаковки+Лев(СокрЛП(Строка(ГЛН)),9)+Строка(Формат(НомерПаллеты,"ЧЦ=7; ЧРГ=' '; ЧВН=; ЧГ=0"));
Штрих=Штрих+Сформировать_КонтрольныйСимвол(Штрих,17);
Возврат Штрих
КонецФункции
//*************************************************************************
#КонецОбласти
В
Процедуру печати штрих кода можно будет посмотреть в самой обработке
Удачи всем!!!!