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

Содержание:

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С:Бухгалтерия 8
ООО «Джи Эй Си Шиппинг энд Лоджистикс»

Отрасль:
Транспорт

Внедренное типовое решение:
БИТ.Финанс

Построение единого информационного пространства финансовой службы;
Учет ...

ООО «ПЛЮСПЭЙ»
ООО «ПЛЮСПЭЙ»

Отрасль:
Организацией расчетов посредством электронных средств платежа

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

- Разработка подсистемы оперативного учета транзакций...

Группа компаний ТМ «Дружба народов»
Группа компаний ТМ «Дружба народов»

Отрасль:
Пищевая промышленность

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

- Переход на новый релиз 2.1 программы «1С:ERP Управление предприятием»
- Разра...

ОАО «Интер РАО – Электрогенерация»
ОАО «Интер РАО – Электрогенерация»

Отрасль:
Электрогенерация

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

Для работы 2500 пользователей в 9 часовых поясах организована территориально-...

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

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

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

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

Московский филиал ООО «Авиакомпания «Икар»
Московский филиал ООО «Авиакомпания «Икар»

Отрасль:
Авиаперевозки

Внедренное типовое решение:
1С:Зарплата и управление персоналом

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

ООО «Вистеон Автоприбор Электроникс»
ООО «Вистеон Автоприбор Электроникс»

Отрасль:

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

- Управленческий учет; - Расчет зарплаты; - Логистика адресного склада; - Учет ...

ООО «Лаборатория успеха»
ООО «Лаборатория успеха»

Отрасль:
Общественное и плановое питание, гостиничный бизнес, туризм

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

Бухгалтерский учет;
Расчет зарплаты и кадровый учет;...

МИР ХОББИ
МИР ХОББИ

Отрасль:
Торговля. Интернет магазин

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

Оформление заказов поставщикам
Взаиморасчеты с покупателями
Оформление...

ПЭК
ПЭК

Отрасль:
Грузоперевозки

Внедренное типовое решение:
1С:Зарплата и управление персоналом

- Перевод зарплатных баз с версии ЗУП 2.5 на версию ЗУП 3.1.
- Сопровождение в п...

Автоматизация системы учета продаж газа на базе «1С:ERP Управление предприятием 2.0»
ООО «Эйр Продактс Газ»

Отрасль:
Производство промышленных газов

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

- Расчеты с контрагентами;
- Производственные операции;
- Управление скла...

Автоматизация интеграции с информсистемами клиентов на базе «1С:Предприятие 8. WMS Логистика. Управление складом»
ОАО «Фрейт Линк»

Отрасль:
Логистика и грузоперевозки

Внедренное типовое решение:
«1С:Предприятие 8. WMS Логистика. Управление складом»

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

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

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

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

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