13.04.2026 Александр Ганзюк 401
Заполнение документа по штрихкоду в самописно...

Содержание:

1.    Настройка поля ввода штрих‑кода и автоматического позиционирования курсора в программе 1C:Предприятие

2.    Процедура обработки данных со сканера штрих‑кода в 1С


1.    Настройка поля ввода штрих‑кода и автоматического позиционирования курсора в программе 1C:Предприятие


Сканер штрихкода должен быть уже настроен в компьютере. Это можно проверить в любом редакторе. 


ВводШтрихкод.png

ВводШтрихкод


Добавляем реквизит формы «ВводШтрихкод», строка размером вашего штрихкода. На форме документа устанавливается Поле формы «ВводШтрихкод», который необходимо сделать текущем элементом при открытии формы документа.


&НаКлиенте

Процедура ПриОткрытии(Отказ)

            ПодключитьОбработчикОжидания("ВернутьКурсорНаПолеВвода", 0.1, Истина);

КонецПроцедуры

Процедура ВернутьКурсорНаПолеВвода нужна для возврата курсора на поле штрихкода

&НаКлиенте

Процедура ВернутьКурсорНаПолеВвода()

            ЭтотОбъект.ТекущийЭлемент = ЭтотОбъект.Элементы.ВводШтрихкод;

КонецПроцедуры


2.    Процедура обработки данных со сканера штрих‑кода в 1С


Когда срабатывает сканер штрихкода данные передаются в поле ВводШтрихкод и происходит команда ПриИзменении().

В этой команде прописываем следующий код.

1)     Проверка на ввод кириллицы. Это актуально если пользователь вводит данные вручную.

2)     Заполнение строки по полученному Штрихкоду (Артикул). Если уже есть строка с этой номенклатурой, то добавляется количество, если нет, то добавляется новая строка.

3)     Очистим поле Штрихкода для дальнейшего сканирования

4)     Проверим остаток полученной номенклатуры на складе. Если нет остатка, то не добавляем.

5)     Заполнение других полей табличной части (Количество, сумма)

6)     Возвращаем курсор обратно в поле «ВводШтрихкод».


&НаКлиенте

Процедура ВводШтрихкодПриИзменении(Элемент)    

            // 1)  Проверем/ Уберем кирилицу

            ВводШтрихкод = КирВЛат(ВводШтрихкод); 

            //  2) Процедура заполнения ТЧ по Артикулу

            ПолеВводаЩтрихкодаПриИзмененииНаСервере(ВводШтрихкод); 

            // 3)  Очистим поле штрихкода, подготовим для следующего сканирования

            ВводШтрихкод = ""; 

            //  4) Процедура проверяет остаток на складе, если нет, то не добавляет

            ПроверитьНаОстаток(Элемент) ;

            //  5) Заполнение других полей строки ТЧ, количество и суммы.

            СтрокаТоварыПриИзменении(Элемент) ;  

            //  6) Вернем Курсор обратно в поле ввода Штрихкода.

            ПодключитьОбработчикОжидания("ВернутьКурсорНаПолеВвода", 0.1, Истина);

КонецПроцедуры


Процедура замены кириллицы в латиницу


&НаКлиенте

Функция КирВЛат(Слово)Экспорт   

            // Вводные данные

            // Могут быть только Большие Буквы и цифры.

            Латиница= "";

            СоотвБукв = новый СписокЗначений;

            //Кириллица

            СоотвБукв.Добавить("Й","Q");

            СоотвБукв.Добавить("Ц","W");

            СоотвБукв.Добавить("У","E");

            СоотвБукв.Добавить("К","R");

            СоотвБукв.Добавить("Е","T");

            СоотвБукв.Добавить("Н","Y");

            СоотвБукв.Добавить("Г","U");

            СоотвБукв.Добавить("Ш","I");

            СоотвБукв.Добавить("Щ","O");

            СоотвБукв.Добавить("З","P");

            СоотвБукв.Добавить("Ф","A");

            СоотвБукв.Добавить("Ы","S");

            СоотвБукв.Добавить("В","D");

            СоотвБукв.Добавить("А","F");

            СоотвБукв.Добавить("П","G");

            СоотвБукв.Добавить("Р","H");

            СоотвБукв.Добавить("О","J");

            СоотвБукв.Добавить("Л","K");

            СоотвБукв.Добавить("Д","L");

            СоотвБукв.Добавить("Я","Z");

            СоотвБукв.Добавить("Ч","X");

            СоотвБукв.Добавить("С","C");

            СоотвБукв.Добавить("М","V");

            СоотвБукв.Добавить("И","B");

            СоотвБукв.Добавить("Т","N");

            СоотвБукв.Добавить("Ь","M"); 

            Для а=1 по СтрДлина(Слово) Цикл      

                        Символ = Сред(Слово,а,1);

                        Если Найти("ЙЦУКЕНГШЩЗФЫВАПРОЛДЯЧСМИТЬ", Символ) Тогда

                                   Латиница = Латиница + СоотвБукв.НайтиПоЗначению(Сред(Слово,а,1));  

                        Иначе

                                   Латиница = Латиница + Сред(Слово,а,1);

                        КонецЕсли;

            КонецЦикла;

            Возврат ВРЕГ(Латиница);

КонецФункции

 

Специалист компании ООО "Кодерлайн"

Александр Ганзюк

Наши проекты

 ЗАО "Инвестгеосервис" -ДО
ЗАО «Инвестгеосервис»

Отрасль:
Нефтесервис

Внедренное типовое решение:
1С:Документооборот КОРП

- Работа с файлами;
- Делопроизводство;
- Процессы движения документов; ...

Автоматизация торговых операций на базе "1С:Управление торговлей" в ОАО "Авиазапчасть"
ОАО «Авиазапчасть»

Отрасль:
Авиационно-космическая промышленность

Внедренное типовое решение:
1С:Управление торговлей

- Оптовая торговля;
- Оформление заказов покупателей;
- Планирование прод...

Внедрение 1С:Управление торговлей в оптово-розничной компании «Ална-Байк»
ИП Титов Виктор Сергеевич «Ална-Байк»

Отрасль:
Торговля

Внедренное типовое решение:
1С:Управление торговлей

- Управление складами;
- Управление заказами поставщиков;
- Управление зак...

Внедрение ПП "1С:Бухгалтерия 8 ПРОФ" в ООО "ДЕКОР"
ООО «ДЕКОР»

Отрасль:
Производство

Внедренное типовое решение:
1С:Бухгалтерия 8 ПРОФ

Управление персоналом и кадровый учет (HRM):
- Кадровый учет
- Расчет зарпл...

Фирма 1С
Фирма 1С

Отрасль:

Внедренное типовое решение:
1С:Документооборот

- Подготовка функциональной модели прикладного решения «1С:Документооборот...

АО "Нижегородский водоканал"
АО "Нижегородский водоканал"

Отрасль:
Профессиональные услуги

Внедренное типовое решение:
1С:Зарплата и управление персоналом 8. КОРП

-Кадровый учет
-Расчет зарплаты
-Регламентированная отчетность
-Подбор ...

Фармацевтическое предприятие «Оболенское»
АО «Фармацевтическое предприятие «Оболенское»

Отрасль:
Фармацевтическая промышленность

Внедренное типовое решение:
1С:Управление производственным предприятием

- Адаптации блоков/подсистем планирования продаж, закупок и казначейства. ...

ООО «ЛукБелОйл»
ООО «ЛукБелОйл»

Отрасль:
Нефтегазовая отрасль

Внедренное типовое решение:

- Обследовании бизнес-процессов «Документооборот», «Казначейство и Бюджети...

ООО “РТИТС”
ООО “РТИТС”

Отрасль:
Транспортные системы

Внедренное типовое решение:
1С:ERP Управление предприятием 2.0

Блок регламентированного кадрового учета и расчета заработной платы в 1С:ERP;...

ФГУП «Почта России»
ФГУП «Почта России»

Отрасль:
Почта, доставка

Внедренное типовое решение:
1С:Управление торговлей

- Оформление заказов поставщикам
- Оформление заказов покупателей
- Упр...

ООО «Фипар»
ООО «Фипар»

Отрасль:

Внедренное типовое решение:
1С:Предприятие 8. ERP Управление предприятием 2

Специалисты «Кодерлайн» внедрили «1С:ERP. Управление предприятием 2» и автома...

1с-РАРУС МСК
1с-РАРУС МСК

Отрасль:
Разработка компьютерного программного обеспечения

Внедренное типовое решение:

- Совместная работа по внедрению разных решений, в том числе «1С:ERP Управление...

Наши соц. сети

Telegram-канал «Koderline 1С» Группа в Вконтакте «Кодерлайн КОРП» Rutube

Остались вопросы - обратитесь к нам!

Впишите свои Имя и Телефон, чтобы мы ответили на все интересующие Вас вопросы.
ФИО*
E-mail*
Телефон*
Сообщение