1С 8 Штрих-кодирование документов

11.08.10

Интеграция - Сканер штрих-кода

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

Документ однозначно задается номером и датой, поэтому не вижу особого смысла хранить его штрих-код.

Некоторые пояснения:

Штрих-код  у меня состоит из полей: 2 символа - код документа (вряд ли в базе свыше 99 видов документов)-задает разработчик, 2 символа - код фирмы (вряд ли в одной базе ведут свыше 99 своих фирм)- я беру его из кода карточки фирмы, дата-пояснений не нужно, номер документа - поставлен в конец, т.к. в моей базе есть документы с разной длиной номера, плавает длина-номер в конце - проще разбор. Еще момент - от номера отсекается префикс документов (у нас префикс задается по фирме) для универсальности - некоторые виды штрих-кодов не понимают литер, а так - только цифры. Префикс однозначно восстанавливается (у меня) по фирме. Если применяются более сложные префиксы (пр-р по подразделениям), то проще перед номером добавить 2 символа с кодировкой префиксов.

Вторая функция позволяет найти документ по сканированному штрих-коду, а дальше по фантазии...

//формирование штрих-кода
Функция мирПолучитьШтрихКодПоДокументу(ДокСсылка) Экспорт
	стрНомерДокумента=Прав(СокрП(ДокСсылка.Номер),7);
	стрДата=""+Формат(ДокСсылка.Дата,"ДФ=yyyy")+?(Месяц(ДокСсылка.Дата)<10,"0"+Месяц(ДокСсылка.Дата),Месяц(ДокСсылка.Дата))+Лев(ДокСсылка.Дата,2);
	ВидДок=ТипЗнч(ДокСсылка);
	Если ВидДок=Тип("ДокументСсылка.ЗаказНаряд") Тогда  // для заказ-наряда
		КодДокумента="01";
	ИначеЕсли ВидДок=Тип("ДокументСсылка.РеализацияАвтомобилей") Тогда    
		КодДокумента="02";
	ИначеЕсли ВидДок=Тип("ДокументСсылка.СчетНаОплатуЗаАвтомобили") Тогда    
		КодДокумента="03";     
	ИначеЕсли ВидДок=Тип("ДокументСсылка.ПриходныйКассовыйОрдер") Тогда    
		КодДокумента="04";    
	ИначеЕсли ВидДок=Тип("ДокументСсылка.РасходныйКассовыйОрдер") Тогда    
		КодДокумента="05";
	ИначеЕсли ВидДок=Тип("ДокументСсылка.СчетНаОплату") Тогда    
		КодДокумента="06";    
	ИначеЕсли ВидДок=Тип("ДокументСсылка.РеализацияТоваров") Тогда    
		КодДокумента="07";    
	Иначе
		Возврат  "";
	КонецЕсли;
	КодФирмы=Число(Прав(СокрП(ДокСсылка.Организация.Код),2));
	СтрФирма=?(КодФирмы<10,"0"+КодФирмы, Строка(КодФирмы));
	ШтрихКод=КодДокумента+СтрФирма+стрДата+стрНомерДокумента;
	Возврат ШтрихКод;
КонецФункции

//получение документа
Функция мирПолучитьДокументПоШтрихКоду(ШтрихКод) Экспорт
	ШтрихКод=СокрЛ(ШтрихКод);
	КодДокумента=Лев(ШтрихКод,2);
	Если КодДокумента="01" Тогда
		ВидДок="ЗаказНаряд";
	ИначеЕсли КодДокумента="02" Тогда   
		ВидДок="РеализацияАвтомобилей";
	ИначеЕсли КодДокумента="03" Тогда   
		ВидДок="СчетНаОплатуЗаАвтомобили";
	ИначеЕсли КодДокумента="04" Тогда   
		ВидДок="ПриходныйКассовыйОрдер";
	ИначеЕсли КодДокумента="05" Тогда   
		ВидДок="РасходныйКассовыйОрдер";
	ИначеЕсли КодДокумента="06" Тогда   
		ВидДок="СчетНаОплату";
	ИначеЕсли КодДокумента="07" Тогда   
		ВидДок="РеализацияТоваров";
	Иначе 
		Возврат Неопределено;   
	КонецЕсли;   
	ДатаДок=Дата(Сред(ШтрихКод,5,4),Сред(ШтрихКод,9,2),Сред(ШтрихКод,11,2));
	КодФирмы="000000"+Сред(ШтрихКод,3,2);
	Организация=Справочники.Организации.НайтиПоКоду(КодФирмы);
	Префикс=Организация.Префикс;
	НомерДок=Префикс+Сред(ШтрихКод,13);
	Запрос=Новый Запрос;
	Запрос.Текст="ВЫБРАТЬ
	|    Документ.Ссылка
	|ИЗ
	|    Документ."+ВидДок+" КАК Документ
	|ГДЕ
	|    Документ.Номер = &Номер
	|    И Документ.Дата >= &ДатаНач";
	Запрос.УстановитьПараметр("ДатаНач",НачалоДня(ДатаДок));             
	Запрос.УстановитьПараметр("Номер",НомерДок);
	Выборка=Запрос.Выполнить().Выбрать();
	Если Выборка.Следующий() Тогда
		Возврат Выборка.Ссылка;
	КонецЕсли;    
	Возврат Неопределено;
КонецФункции

См. также

Мобильная разработка Сканер штрих-кода Терминал сбора данных Управляемые формы Мобильная платформа 1С:Розница 2 1С:Управление нашей фирмой 1.6 1С:ERP Управление предприятием 2 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х Управленческий учет Платные (руб)

Сбор заказов, инвентаризация, проверка ценников, просмотр полной информации об остатках и ценах со смартфона Онлайн - все это содержит в себе решение 1С "Штрихкод-информер" (штрих-код чекер). Отправка данных со смартфона выполняется либо напрямую в открытую форму документа, отсканировав QR-код, либо в общую корзину учетной системы, не подходя к компьютеру. Кассир или оператор сможет просмотреть список присланных данных и загрузить в любую форму, поддерживающую работу с ТСД. Для работы с мобильным приложением требуется опубликовать HTTP-сервис из поставляемого расширения.

3000 руб.

03.12.2018    59651    194    103    

173

Сканер штрих-кода Терминал сбора данных Мобильная разработка Монитор заказов Оптовая торговля Розничная торговля Ценообразование, анализ цен Программист Пользователь Платформа 1С v8.3 Мобильная платформа 1С:Розница 2 1С:Управление нашей фирмой 1.6 1С:ERP Управление предприятием 2 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х Розничная и сетевая торговля (FMCG) Оптовая торговля, дистрибуция, логистика Управленческий учет Платные (руб)

Простой мобильный ТСД (терминал сбора данных) сканер для 1С для смартфонов на iOS и Android, не требующий сложных настроек и установки дополнительных программ. Обмен между Вашей 1С и мобильным приложением осуществляется через облачный сервис и расширение конфигурации. Работает с конфигурациями УТ 11, ERP, КА2, Розница 2, Розница 3, УНФ 1.6, УНФ 3.0. Полнофункциональный демо-доступ для своей конфигурации можно запросить в настройках мобильного приложения - все необходимое придет на почту автоматически.

2000 руб.

22.04.2019    97913    592    189    

323

Сканер штрих-кода Пользователь Платформа 1С v8.3 1С:Розница 2 1С:Управление нашей фирмой 1.6 1С:ERP Управление предприятием 2 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х 1С:Управление нашей фирмой 3.0 1С:Розница 3.0 Управленческий учет Платные (руб)

У вас возникал вопрос - Как быстро и правильно выполнить приемку товара в торговой точке? Как минимизировать ошибки при сборке заказа клиента? Текущая разработка способна помочь в решении данных проблем. Её назначение - проверка с помощью сканера штрих кода поступления и реализации товаров, заказов клиентов, заказов поставщикам, расходных и приходных ордеров, перемещений и возвратов.

2400 руб.

29.07.2020    36723    171    160    

143

Логистика, склад и ТМЦ Сканер штрих-кода Терминал сбора данных Мобильная разработка Платформа 1С v8.3 1С:Управление нашей фирмой 1.6 1С:ERP Управление предприятием 2 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х 1С:Управление нашей фирмой 3.0 Россия Бухгалтерский учет Управленческий учет Платные (руб)

Вашему вниманию предлагается специализированное программное обеспечение для терминалов сбора данных со встроенным сканером штрихкода. Предназначено для цифровизации всех товароучетных операций на любых складах, в том числе с адресным хранением различной сложности. Позволяет ускорить и упростить работу кладовщиков, а также снизить вероятность ошибок при работе, обусловленных человеческим фактором.

3450 руб.

28.04.2023    9688    15    1    

9

Сканер штрих-кода Пользователь Платформа 1С v8.3 1С:ERP Управление предприятием 2 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х Управленческий учет Платные (руб)

Стандартные конфигурации ERP, КА, УТ 11 позволяют работать с штрихкодированием серий. Есть только одно суровое ограничение – на упаковке должна быть этикетка для номенклатуры и отдельно для серии. Во многих случаях это критически неудобно.

12000 руб.

19.04.2021    23013    64    44    

57

Сканер штрих-кода Бухгалтер Пользователь Платформа 1С v8.3 Бухгалтерский учет 1С:Бухгалтерия 3.0 Бухгалтерский учет Платные (руб)

Теперь практически все торговые документы в конфигурации 1С Бухгалтерия 3.0 (ПРОФ / КОРП) и в конфигурации 1С Бухгалтерия сельскохозяйственного предприятия 3.0 поддерживают подбор товара по штрих-коду. Можно пользоваться сканером штрихкода или подбирать штрих-код вручную. В основных печатных формах документов выводится колонка Штрихкод. Для менеджеров по продажам будет удобным дополнительный отчет Прайс-лист с остатками и штрих-кодом.

3600 руб.

28.07.2020    29385    79    32    

58

Оптовая торговля Розничная торговля Ценообразование, анализ цен Сканер штрих-кода Бухгалтер Пользователь Платформа 1С v8.3 1С:Розница 2 Управленческий учет Платные (руб)

Расширение для конфигурации Розница 2.3. Автоматическое и ручное создание, присвоение (сканирование) штрихкодов номенклатуре непосредственно в документе Поступления товаров. Поддерживается ввод штрихкода через сканер.

1800 руб.

30.03.2021    21114    9    10    

14
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. V_V_V 11.08.10 17:42 Сейчас в теме
А загнать в штрих-код Уникальный идентификатор документа не проще? И хранить нигде не надо, и кода пару строк... :D
garant21; Spacer; mov68; Asdam; Tarlich; qwest; +6 Ответить
2. mirco 74 11.08.10 18:03 Сейчас в теме
(1) я бы тоже использовал именно идентификатор...
5. Tarlich 116 11.08.10 21:15 Сейчас в теме
(1) полностью согласен , видел используется еан128
6. V_V_V 11.08.10 22:34 Сейчас в теме
(5) У меня с EAN128 не пошло ни в какую. Зато с Code93 и Code128 - на ура. И с дефисами, и без. Хотя есть у способа с Уникальным идентификатором большой минус - громадная ширина штрих-кода, почти на весь А4 формат (в портрете) при использовании стандартной 1С:Печать штрих-кодов, так что он не для гурманов. Но у автора статьи не намного меньше 36-ти символов получается - разница по-идее будет незначительна.
3. IronDemon 769 11.08.10 18:17 Сейчас в теме
А Уникальный идентификатор зачем?
4. markers 277 11.08.10 20:43 Сейчас в теме
Мысль хорошая, покурим её!
7. mov68 37 12.08.10 14:34 Сейчас в теме
Загнать в штрих-код Уникальный идентификатор документа проще.
Но делалось под свою специфику: штрих-кодами помечаются и купоны на скидку (автосервис) - суммы порой весьма приличные и зависят от суммы прошлых работ, при этом купон хранит номер документа, по которому он распечатан. Физически его в базе нет.
Есть также ряд видов документов, по которым печатаются несколько типов печатных документов (для заказ-наряда их больше 20). Поэтому <Код документа> это скорее код печатной формы, что позволяет при сканировании автоматом выполнять нужные действия.
Тогда уж использовать Код документа и идентификатор.
Другой случай - вовремя не провели расходную накладную, смены сменились, посчитали что клиент отказался, пометили на удаление и благополучно удалили. Недели через 2 бухгалтерия забила тревогу - подписанная накладная есть, деньги пришли, а документа в системе нет. Документ был восстановлен по печатной форме (ессно все кому положено по шапке получили), соответственно уникальный идентификатор изменился, а номер, дата и прочее - нет. Это из реального...
8. anig99 2852 13.08.10 09:54 Сейчас в теме
Можно попробовать двухмерное штрихкодирование... Тогда можно будет туда кучу инфы ещё записать
9. ign 5 12.10.11 19:31 Сейчас в теме
Спасибо за идею. Использовала Code128 (он ооочень длинный)при штрихкодировании готовой продукции на выходе из цеха. Оператору создала рабочий стол для печати ярлыков со штрихкодами по заказу покупателя или заказу на производство, в штрихкод засунула:
1.Код номенклатуры
2.Номер заказа
3.год, месяц и день, т.е. дату заказа
4.Количество в упаковке
уникальность обеспечена и код нигде не храниться.
(это печатается на ярлыке в виде текста и ввиде штрихкода)
Ежедневный огромный объем отгрузки и невозможность идентифицировать зрительно наименование номенклатуры правильно не позволяет вручную обеспечить скорость и точность создания документов "Отчет производства за смену", поэтому на продукцию клеят ярлыки со щтрихкодом и принимают продукцию собирая штрихкоды терминалом сбора данных. Затем загружают большие списки в "Отчет производства за смену" с расчетом количества в упаковке и сворачивание одинаковой номенклатуры. Заказы стали закрываться без потерь, и при отгрузке тоже меньше в разы. Склад ГП тоже маслит терминалом каждую коробку для док. реализация.
Altertego11; RustIG; +2 Ответить
10. JamilRG 17.10.11 11:30 Сейчас в теме
Очень надо шрихкодирование Заказ-Нарядов, подойдет ли эта обработка?
11. Alexez 75 29.12.11 11:44 Сейчас в теме
супер замечательный пример штрих кодирования, позволяет без труда найти в базе нужный документ. Будем пользоваться. Спасибо!!!!Спасибо!!!!Спасибо!!!!Спасибо!!!!Спасибо!!!!Спасибо!!!!Спасибо!!!!Спасибо!!!!Спасибо!!!!Спасибо!!!!
12. Рамзес 30 06.04.12 12:37 Сейчас в теме
А если после штрихкодирования документа пользователь по какой-либо причине изменил дату документа на более раннюю? Запрос в функции поиска документа по штрихкоду такой документ отбросит.
Может лучше идентифицировать документ по году? Типовые документы имеют периодичность "В пределах года".

Запрос.Текст = "ВЫБРАТЬ
| Документ.Ссылка
|ИЗ
| Документ." + ВидДок + " КАК Документ
|ГДЕ
| Документ.Номер = &Номер
| И ГОД(Документ.Дата) = &ГодДокумента";
psa247; Shakronya; RustIG; +3 Ответить
Оставьте свое сообщение