Имя: Пароль:
1C
1С v8
Сканер штрихкода
0 V67070
 
02.02.13
12:57
Здравствуйте.
Подскажите пожалуйста, как работать со сканером штрихкода, использую компоненту scanopos, сканер клавиатурный.

Но обработка внешнего события в форме документа не срабатывает.
Также неясно как из кода настроить параметры сканера.
Такие как Префикс, Суффикс, Порт(Клавиатура).

Гуглил много, но информации не нашел.
Просьба помочь.

С Уважением, Александр.

Процедура ПодключитьСканер()  экспорт
       Попытка
           ЗагрузитьВнешнююКомпоненту("C:\Program Files\1C\1C Barcode scanner\8_0_14_1\scanopos.dll");
           scaner = Новый("AddIn.Scanner");
        Исключение
           Сообщить("Ошибка подключения сканера!");
       КонецПопытки;
   Если scaner.УстройствоВключено = 0 Тогда
       Если scaner.Подсоединить("Сканер №") <> 0 Тогда
           Сообщить( "не удалось подсоединить устройство");
       КонецЕсли;
       scaner.ИмяСобытия = "BarCodeValue";
       Если scaner.Занять(1) <> 0 Тогда  
           Сообщить("Сканер: не удалось получить монопольный доступ к устройству");
       КонецЕсли;
       scaner.УстройствоВключено = 1;
       Если scaner.Результат <> 0 Тогда
           Сообщить( "не удалось включить устройство");
       КонецЕсли;
   КонецЕсли;
   // очищаем буфер компоненты
   scaner.ОчиститьВход();
   scaner.ОчиститьВыход();
   // включаем режим немедленной посылки данных
   scaner.ПосылкаДанных = 1;
   Сообщить("Сканер включен");
   Сообщить("Имя события = " + scaner.ИмяСобытия);
Конецпроцедуры
1 Ork
 
02.02.13
13:14
(0) После установки компоненты у вас в главном меню появляется папочка 1С -> 1С Сканер штрих кода. Там есть все.

Например у меня так :

Названия свойств объекта и их описания приведены в данной таблице:

Название (алиас)    Тип    R    W    Описание
АвтоВыключение (AutoDisable)    Число    +    +    Если свойство имеет значение 1, то после каждой посылки данных устройство будет автоматически отключаться.
ДвоичноеПреобразование (BinaryConversion)    Число    +    +    Общее свойство OPOS. Оно задаёт способ преобразования двоичных данных при передаче их с помощью строки.
ЕстьУведомлОПитании (CapPowerReporting)    Число    +    -    Общее свойство OPOS. Свойство содержит значение, указывающее на возможность устройства сообщать о состоянии питания.
...

Там же описание методов компоненты.
Там же в разделе "Программная обработка считанного значения" :
Пример обработки, осуществляющей работу со сканером штрихкода, приведен на диске ИТС в разделе «1С. Методическая поддержка 1С:Предприятие 8.1» - «Работа с торговым оборудованием» в статье «Требования к разработке внешних обработок обслуживания торгового оборудования».
2 Ork
 
02.02.13
13:16
+ (1) Если есть конкретные вопросы - задавайте.
3 wade25
 
02.02.13
13:33
Что бы сделать как вы хотите, нужно прежде всего перевести сканер в режим Com порта.
4 Ork
 
02.02.13
13:53
(3) Не обязательно.

Внешняя компонента "1С: Сканер штрихкода" v 8.0.14.1
...
8.0.13 - Добавлена поддержка сканеров клавиатурного типа для всех типов штрихкодов.
5 V67070
 
02.02.13
18:14
Вот как это сделать без перевода в режим Com порта.

С Уважением, Александр.
6 Ork
 
02.02.13
18:16
(5) У компоненты есть метод ТестУстройства.
Вызвать - просканировать чего-нибудь - записать параметры - устанавливать их в рабочей базе при инициализации.
7 Ork
 
02.02.13
18:19
+(6) А вообще - для начала озвучьте версию вашей компоненты. Самая последняя на пользовательском сайте 1С - 8.0.14.1

Более ранние либо не поддерживают клавиатуру либо глючат в некоторых моментах.
8 V67070
 
02.02.13
18:27
Версия самая последняя 8.0.14.1
Пробовал тест сделать, выползло то, чего я не ожидал, никаких настроек.
Небольшое окно, в котором предлагается что нибудь сканировать и отображается это сканированное (штрихкод с префиксом/суффиксом).
На Итс смотрел, пример обработки обслуживания, вот как в этом примере подключают оборудование, полный листинг.

// Функция осуществляет подключение устройства.
// (API v1.0)
//
// Параметры:
//  Объект                         - <*>
//                                 - Объект драйвера торгового оборудования.
//
// Возвращаемое значение:
//  <ПеречислениеСсылка.ТООшибки*> - Результат работы функции.
//
Функция Подключить(Объект) Экспорт

   Результат = мНетОшибки;

   // Подключение устройства.

   Возврат Результат;

КонецФункции // Подключить()

С самой обработкой документация похоже не обновлена, какие методы и свойства для работы с клавиатурным сканером должны быть, неизвестно.

Пытался в УТ10.3 и в обработке обслуживания последней по коду отследить как это работает, но опыта видимо у меня мало, слишком много требуется, справочники, регистры, перечисления ... которые задействованы при казалось бы простом подключении железки.

С Уважением, Александр.
Программист всегда исправляет последнюю ошибку.