Сначала с подключением к конфигурации на обычных формах.
Открываем модуль обычного приложения и пишем вот такой код:
Перем Сканер Экспорт;
Процедура ПриНачалеРаботыСистемы()
// загрузка компоненты для обычного приложения
// работает и в управляемом приложении (толстый клиент)
// но, тогда нужно прописать эту процедуру в модуле управляемого приложения
Попытка
// Загрузка внешней компоненты
ЗагрузитьВнешнююКомпоненту("D:ChumakDVБАЗЫ8.2СканерScaner1C.dll");
Попытка
// Создание объекта
Сканер = Новый("AddIn.Scaner45");
Сканер.OldVersion = 1;
Исключение
Сообщить("Объект не найден!");
КонецПопытки;
Исключение
Сообщить("Внешняя компонента драйвера не найдена");
КонецПопытки;
КонецПроцедуры
Процедура ПриЗавершенииРаботыСистемы()
// Отсоединение объекта
Если Константы.СканерИспользуется.Получить() Тогда
Сканер = 0;
КонецЕсли;
КонецПроцедуры
Перед этим нужно в каталог информационной базы скопировать файл Scaner1C.dll и зарегистрировать его через regsvr32.exe
Если все сделали правильно, то после запуска конфигурации в режиме обычного приложения, в меню Сервис — Параметры, должна появиться дополнительная вкладка «Драйвер сканера штрих-кода». В этой вкладке нужно настроить параметры сканера (порт, скорость, а также можно определить, к какому порту подключен сканер).
Получение информации со сканера.
Для этого используется процедура ВнешнееСобытие(Источник, Событие, Данные), где:
Источник — источник события
Событие — вид события, нам нужно событие BarCodeValue
Данные — данные, полученные со сканера.
Примеры обработок внешних событий:
// получаем штрихкод товара
Процедура ВнешнееСобытие(Источник, Событие, Данные)
// данные со сканера ШК
Если Событие = "BarCodeValue" Тогда
ШКТовара = СокрЛП(Данные);
КонецЕсли;
КонецПроцедуры
// открываем документ по штрихкоду
Процедура ВнешнееСобытие(Источник, Событие, Данные)
// данные со сканера ШК
Если Событие = "BarCodeValue" Тогда
ШКДок = СокрЛП(Данные);
НайтиИОткрытьДокумент(ШКДок);
КонецЕсли;
КонецПроцедуры
Процедура НайтиИОткрытьДокумент(ШКДок)
Попытка
ДокПриходная = Документы.Приходная.НайтиПоРеквизиту("ШКДокумента", ШКДок);
ДокПриходная.ПолучитьФорму("ФормаДокумента").Открыть();
Исключение
Сообщить("Документ со штрихкодом " + СокрЛП(ШКДок) + " не найден!");
КонецПопытки;
КонецПроцедуры
Подключение сканера в режиме управляемого приложения.
Осуществляется такой же функцией ЗагрузитьВнешнююКомпоненту. Единственное отличие — код для загрузки нужно прописать в модуле управляемого приложения. Запуск программы нужно производить в режиме толстого клиента, иначе компонента не загрузится.
Если все сделали правильно, то в конфигурации в режиме управляемых форм появится вкладка с подключенным драйвером.
Работа с данными сканера осуществляется также с помощью процедуры ВнешнееСобытие.
А учитываются Не модальные вызовы?
тут .
Список можно посмотреть
и зачем БПО придумывали………..
(2) qwinter, что такое БПО?
(3) Библиотека подключаемого оборудования
(4) Diversus, в БСП есть?
(5) dj_serega, БПО это такая же библиотека, как и БСП. Встраивается в конфу или в БСП в течении получаса.
(6) Ну вот зачем секрет выдал? Теперь все кому не лень будут использовать решения из БПО. А если узнают что оттуда можно выдрать и терминалы, и электронные весы, и фискальные регистраторы и еще массу вкусностей — пропадет проект…
Статья очень хорошая, автор напиши пожалуйста статью по подключению дисплея покупателя к 1С Предприятие 8.3
(8) vertkov2010,
с таким оборудованием в нашей организации не работают, поэтому ничего написать не могу.
(7) V_V_V,
(6) qwinter,
статья написана в ознакомительных целях, либо для людей, только начинающих изучать 1С, либо для небольших авторских разработок. Если вам удобнее работать через БПО — пожалуйста, но, я думаю, найдутся и те, кому будет полезна данная публикация.
(10) dchumak, не только мне, но и еще примерно 80% разработчиков 1С. А по поводу полезности, есть замечательная статья про точку абсурда:http://infostart.ru/public/308140/
(11) qwinter,
Этот бесконечный холивар. Все зависит от условий, в которых функционирует программный продукт, срок его действия и прочие факторы. Одно дело, когда внедряется конфигурация в т.н. «идеальных условиях» — типовой продукт, находящийся на поддержке, минимум доработок и т.д. — конечно, удобнее использовать стандартные библиотеки БСП, БПО и т.д. В том случае, если конфигурация используется долгое время (больше 10 лет), большим количеством пользователей, идут постоянные доработки, работает много программистов в штате — не всегде все идет так гладко, как хотелось бы. И достаточно часто используются не совсем «правильные» методы. Увы, не все так гладко в жизни, как хотелось бы. Так сказать, суровые жизненные реалии. Спасибо за комментарии.
(12) Это вера истинных внедренцев в непогрешимость различных Библиотек Подсистем от 1С. Еще они забывают, когда появилась 1С 8, а когда эти Библиотеки. Они может все это время сидели и ждали, когда же 1С снизойдет до разработки Библиотеки Подсистем. Нормальные разработчики уже давно свои написали
(13) oleg_km, ну так давайте вспомним в каком году 1С выпустила «Обработка обслуживания «1С: Сканер штрихкода», в 2005? в 2006? БПО вышла два года назад. Но такие «гении внедрения» как вы продолжаете писать велосипеды, аналоги которых 1С выпустила еще 8-9 лет назад.
При подключении сканера в 7.7 по похожему алгоритму столкнулся с проблемой, через openvpn были соединены два цеха база одна все работают по rdp(терминал), сканер настроен в разрез клавиатуры, и в настройках есть такая штука как чувствительность, и на удаленной точке время прохода пакета плавает, и компонента думала что это не сканер а клава и считала что ШК(Штрих-код) кончился,и ШК приходит урезанный.
Поборол только тем что на клиентах которые стоят удаленно делалась форма обработки в которую без всякой компоненты в поле ввода вводился шк со сканера, символ «возврат коретки» посылался сканером как префикс шк, и все коды собирались в таблицу, после кнопки принять весь набор штрих-кодов обрабатывался
ЗЫ: это просто для информации
(15) RomanBor, Спасибо! самая полезная инфа с сей страницы -))
(0) Форма, которая появилась в Сервис-Параметры очень похожа на настройку драйвера считывания штрих-кодов АТОЛ. Есть подозрение, что в статье описана не работа с драйвером от 1С, а работа АТОЛ-драйвера. Последний драйвер от 1С можно выдернуть из БПО. Инициализируется он через ПрогИД = «AddIn.Scanner» (а не AddIn.Scaner45, как в статье).
Удалось выяснить, что сканер штрих-кода 1С может считывать также RFID-метки через считыватель с эмуляцией клавиатуры. А вот АТОЛ-драйвер не может справиться с такой задачей.
(12)Так и не понял, что мешает подключить библиотеку? Суровые реалии или другие программисты против? Кто из них встал между вами и библиотекой?
(17)Да вроде драйвер от 1С загружает. Грузить библиотеку с «D:ChumakDVБАЗЫ8.2СканерScaner1C.dll», особенно в базе с «суровыми реалиями», «большим количеством пользователей» и «работает много программистов в штате» вообще не вариант да и смысла как то не могу найти.
Читаю хор!
Все поют о своем.
Для человека пришедшего со стороны.
Видно. Что обзор методов подключения оборудования.
Который прекратил бы этот «базар» всем лень написать.
Приходится поддерживать разные конфигурации.
Созданные в разное время. С разными библиотеками.
С rdp и без. По сom и в разрыв.
Набирается приличная статья.
Судя по актуальности вопроса, нужная статья!
Достойные половинчатых статей полный инфостарт.
Реально тратим время на просеивание крупиц.
А споры вообще не к лицу.
Ни одному не под силу?
Всем слабо?!!!
Давайте вместе писать!
Не для себя ради.
(20) sir.wbg,
А на хрена она статья то, вся информация в «Библиотеке Подключаемого оборудования», там все есть, и сканер желательно цеплять по com порту
ВСЕ
Для себя я сделал так:
Показать
(22)
Спасибо, я читал, что так через макеты тоже можно подключать.
Помогите пожалуйста:
Установил атоловские драйвера, платформа 8.3.13.1513, обычные формы.
В Сервис — Параметры отсутствует вкладка Драйвер.
Как жить дальше?
У меня тоже отсутствует вкладка «Драйвер»
помогите плиз.
Возникает данная ошибка. В чем может быть проблема?
(26) попробуйте другую версию библиотеки.