Загрузка штрихкодов номенклатуры в конфигурацию 1С: Розница

30.05.24

Интеграция - Файловый обмен (TXT, XML, DBF), FTP

Небольшая инструкция по загрузке штрихкодов номенклатуры в 1С: Розница с помощью стандартной обработки "Загрузка данных из табличного документа".

Так как никакой толковой подсказки я сходу не нашел (допускаю, что плохо искал), пришлось разбираться путем тыка.

На скрине приведен пример минимальной настройки для удачной загрузки штрихкодов.

 

 

С данными типа штрихкод и владелец штрихкода проблем особых не возникает. Основная сложность для меня была указать тип штрихкода (не стал вникать, зачем рознице на этапе ввода штрихкода нужно самостоятельно выбрать тип), в случае однотипных кодов тоже можно не париться и указать тип по умолчанию. Но мы не ищем легких путей, да и штрихкоды были "разнокалиберными", поэтому решил разобраться, как работает Вычисление и как подсунуть нужный тип. 

Пробовал просто указать функцию из общего модуля (МенеджерОборудованияКлиентСервер.ОпределитьТипШтрихкода(ТекстЯчейки)) - не получилось, пришлось ее выдернуть и адаптировать, попутно объединив с несколькими функциями:

	ТипШтрихкодаЗнач = "";	
	Штрихкод = ТекстЯчейки;
	ДлинаШтрихкода = СтрДлина(ТекстЯчейки);
	
	Если ДлинаШтрихкода = 0 Тогда
		ТипШтрихкодаЗнач = "";
	КонецЕсли;
	
	Если ДлинаШтрихкода = 14 Тогда 
		
		Сумма = 0;
		Коэффициент = 1;
		
		Для Сч = 1 По 12 Цикл
			ВремКодСимвола = КодСимвола(Штрихкод, Сч);
			Сумма  = Сумма + Коэффициент * (ВремКодСимвола - 48);
			Коэффициент = 4 - Коэффициент;
		КонецЦикла;
		Сумма = (10 - Сумма % 10) % 10;
		КонтрольныйСимвол = Символ(Сумма + 48);
		
		Если КонтрольныйСимвол = Прав(Штрихкод, 1) Тогда
			ТипШтрихкодаЗнач = ПланыВидовХарактеристик.ТипыШтрихкодов.ITF14;
		КонецЕсли;
		
	ИначеЕсли ДлинаШтрихкода = 13 Тогда 
		
		Сумма = 0;
		Коэффициент = 1;
		
		Для Сч = 1 По 12 Цикл
			ВремКодСимвола = КодСимвола(Штрихкод, Сч);
			Сумма  = Сумма + Коэффициент * (ВремКодСимвола - 48);
			Коэффициент = 4 - Коэффициент;
		КонецЦикла;
		Сумма = (10 - Сумма % 10) % 10;
		КонтрольныйСимвол = Символ(Сумма + 48);
		
		Если КонтрольныйСимвол = Прав(Штрихкод, 1) Тогда
			ТипШтрихкодаЗнач = ПланыВидовХарактеристик.ТипыШтрихкодов.EAN13;
		КонецЕсли;
		
	ИначеЕсли ДлинаШтрихкода = 8 Тогда 
		
		Сумма = 0;
		Коэффициент = 3;
		
		Для Сч = 1 По 7 Цикл
			ВремКодСимвола = КодСимвола(Штрихкод, Сч);
			Сумма  = Сумма + Коэффициент * (ВремКодСимвола - 48);
			Коэффициент = 4 - Коэффициент;
		КонецЦикла;
		Сумма = (10 - Сумма % 10) % 10;
		КонтрольныйСимвол = Символ(Сумма + 48);
		Если КонтрольныйСимвол = Прав(Штрихкод, 1) Тогда
			ТипШтрихкодаЗнач = ПланыВидовХарактеристик.ТипыШтрихкодов.EAN8;
		КонецЕсли;
		
	КонецЕсли;
	
	
	Если ТипШтрихкодаЗнач= "" Тогда 
		
		CODE39 = Истина;
		Для Сч = 1 По ДлинаШтрихкода Цикл
			ВремКодСимвола = КодСимвола(Штрихкод, Сч);
			Если (ВремКодСимвола <> 32)
				И (ВремКодСимвола < 36 Или ВремКодСимвола > 37)
				И (ВремКодСимвола <> 43)
				И (ВремКодСимвола < 45 Или ВремКодСимвола > 57)
				И (ВремКодСимвола < 65 Или ВремКодСимвола > 90) Тогда
				CODE39 = Ложь;
				Прервать;
			КонецЕсли;
		КонецЦикла;
		
		Если CODE39 Тогда
			ТипШтрихкодаЗнач = ПланыВидовХарактеристик.ТипыШтрихкодов.CODE39;
		КонецЕсли                                                     
		
	КонецЕсли;
	
	Если ТипШтрихкодаЗнач= ""  Тогда 
		
		CODE128 = Истина;
		Для Сч = 1 По ДлинаШтрихкода Цикл
			ВремКодСимвола = КодСимвола(Штрихкод, Сч);
			Если (ВремКодСимвола > 127) Тогда
				CODE128 = Ложь;
				Прервать;
			КонецЕсли;
		КонецЦикла;
		
		Если CODE128 Тогда
			ТипШтрихкодаЗнач = ПланыВидовХарактеристик.ТипыШтрихкодов.CODE128;
		КонецЕсли                                                     
		
	КонецЕсли;
	
	Если ТипШтрихкодаЗнач = "CODE128"  Тогда
		Если КодСимвола(Штрихкод, 1) = 40 Или СтрНайти(Штрихкод, КодСимвола(29)) > 0  Тогда
			ТипШтрихкодаЗнач = ПланыВидовХарактеристик.ТипыШтрихкодов.EAN128;
		КонецЕсли;
	КонецЕсли;
	
	Результат = ТипШтрихкодаЗнач;

В общем, надеюсь, кому-то поможет.

См. также

SALE! 10%

Перенос данных 1C Файловый обмен (TXT, XML, DBF), FTP Системный администратор Программист 1С v8.3 1С:Розница 2 1С:Управление нашей фирмой 1.6 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х 1С:Управление нашей фирмой 3.0 1С:Розница 3.0 Россия Платные (руб)

Правила в универсальном формате обмена для ERP 2.5, КА 2.5, УТ 11.5, БП 3.0, Розница, УНФ, для последних версий конфигураций. Ссылки на другие конфигурации в описании публикации. Правила совместимы со всеми другими версиями конфигураций новыми и старыми, поддерживающими обмен и синхронизацию в формате EnterpriseData. Не требуется синхронного обновления правил после обновления другой конфигурации, участвующей в обмене. Типовой обмен через планы обмена кнопкой Синхронизация вручную или автоматически по расписанию, или вручную обработкой.

27660 руб.

12.06.2017    148400    864    302    

454

Перенос данных 1C Файловый обмен (TXT, XML, DBF), FTP Системный администратор Программист 1С v8.3 Оперативный учет 1С:Управление торговлей 10 Россия Управленческий учет Платные (руб)

Перенос данных из 1С:Управление торговлей 10.3 в 1С:Управление торговлей 11.5 с помощью правил обмена. Переносятся остатки, документы (обороты за период), справочная информация. Правила проверены на конфигурациях УТ 10.3 (10.3.88.x) и УТ 11.5 (11.5.21.x).

35000 руб.

23.07.2020    58726    284    75    

224

Перенос данных 1C Файловый обмен (TXT, XML, DBF), FTP Системный администратор Программист 1С v8.3 1С:Управление производственным предприятием 1С:Бухгалтерия 3.0 Россия Бухгалтерский учет Управленческий учет Платные (руб)

Перенос данных из 1С:Управление производственным предприятием 1.3 в 1С:Бухгалтерия предприятия 3.0 с помощью правил обмена. Переносятся остатки, документы (обороты за период), справочная информация. Правила проверены на конфигурациях УПП 1.3 (1.3.246.x) и БП 3.0 (3.0.175.x). Правила подходят для версии ПРОФ и КОРП.

35000 руб.

15.12.2021    27816    198    58    

152

Перенос данных 1C Файловый обмен (TXT, XML, DBF), FTP Системный администратор Программист 1С v8.3 1C v8.2 1С:Комплексная автоматизация 1.х 1С:Управление торговлей 10 1С:Управление производственным предприятием Россия Платные (руб)

Регулярный обмен, выгрузка, перенос из КА 1.1, УПП 1.3, УТ 10.3 для обмена с любыми конфигурациями, поддерживающими обмен в формате EnterpriseData (КД3) - БП 3.0, ERP, КА 2, УТ 11, Розница 2, УНФ 1.6 и другими. Правила для старых и доработанных конфигураций не требуют синхронного обновления и совместимы с новыми и будущими конфигурациями. Обмен по расписанию, через папку, FTP, почту.

16260 руб.

18.02.2016    191079    625    536    

544

SALE! 10%

Перенос данных 1C Файловый обмен (TXT, XML, DBF), FTP Системный администратор Программист 1С v8.3 1С:Комплексная автоматизация 1.х 1С:Управление производственным предприятием 1С:Бухгалтерия 3.0 Россия Бухгалтерский учет Платные (руб)

Перенос данных из 1С:Управление производственным предприятием 1.3 в 1С:Бухгалтерия предприятия 3.0 с помощью правил обмена | Можно выполнить переход с УПП на БП 3 или запускать выгрузку данных за выбранный период времени | Переносятся документы, начальные остатки и вся справочная информация | Есть фильтр по организации и множество других параметров выгрузки | Поддерживается несколько сценариев работы: как первичный полный перенос, так и перенос только новых документов | Перенос данных возможен в "1С: Бухгалтерия 3.0" версии ПРОФ, КОРП или базовую | Переход с "1С: УПП1.3" / "1С:КА 1.1" на "1С:БП3.0" с помощью правил конвертации будет максимально комфортным! | Можно бесплатно проверить перенос на вашем сервере!

48278 43450 руб.

25.02.2015    175073    318    267    

387

SALE! 10%

Перенос данных 1C Файловый обмен (TXT, XML, DBF), FTP Системный администратор Программист 1С v8.3 1С:Комплексная автоматизация 1.х 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х Платные (руб)

Перенос данных из КА 1.1 в КА 2 | из КА 1.1 в УТ 11 | Воспользовались более 367 компаний! | Переносятся все возможные виды документов, начальных остатков и вся справочная информация из "1С:КА 1.1" в "1С:КА 2.х" / "1С:УТ 11" | Разработан в формате КД 2 (правила конвертации данных) | Фильтр по организациям при выгрузке | Выбор разных алгоритмов выгрузки начальных остатков | Можно проверить перенос до покупки!

55778 50200 руб.

04.12.2015    194189    254    351    

409

SALE! 10%

Перенос данных 1C Файловый обмен (TXT, XML, DBF), FTP Программист 1С v8.3 1С:ERP Управление предприятием 2 1С:Комплексная автоматизация 2.х 1С:Зарплата и Управление Персоналом 3.x Россия Бухгалтерский учет Управленческий учет Платные (руб)

Перенос данных из ERP в ЗУП 3 | из КА 2 в ЗУП | Готовые правила конвертации данных (КД 2) для переноса остатков, документов с движениями и справочной информации 3 | Есть перенос начальной задолженности по зарплате и начальной штатной расстановки на выбранную дату | Обороты за прошлые годы (данные для расчета среднего) переносятся свернуто в документ "Перенос данных" | Есть фильтр по организациям | Документы за текущий период переносятся сразу с движениями, поэтому не потребуется делать перерасчеты | Перенос можно проверить перед покупкой, обращайтесь!

53111 47800 руб.

03.12.2020    39677    112    73    

106
Оставьте свое сообщение