Добрый вечер!
У меня такая проблемка возникла.. подключил сканер шк (com) , настроил в 1с-ке в подключении и настройке торгового оборудования - там всё ок, все тесты проходит, штрихкоды считывает. А вот в документе при сканировании никак не хочет заходить в процедуру "внешнее событие"... кто знает что может быть?
---
всё, справился! stanru1 спасибо за наводку!
у меня не управляемое приложение, поэтому прописал

ПриОткрытии()
ПолучитьСерверТО().ПодключитьКлиента(ЭтаФорма);
...

и добавил функцию
Функция ПоддерживаетсяВидТО(Вид) Экспорт

 Результат = Ложь;

 Если Вид = Перечисления.ВидыТорговогоОборудования.СканерШтрихКода
  Или Вид = Перечисления.ВидыТорговогоОборудования.СчитывательМагнитныхКарт
  Или Вид = Перечисления.ВидыТорговогоОборудования.ДисплейПокупателя
  Или Вид = Перечисления.ВидыТорговогоОборудования.ЭлектронныеВесы
  Или Вид = Перечисления.ВидыТорговогоОборудования.ФискальныйРегистратор
  Или Вид = Перечисления.ВидыТорговогоОборудования.ТерминалСбораДанных
  Или Вид = Перечисления.ВидыТорговогоОборудования.ЭквайринговаяСистема Тогда
  Результат = Истина;
 КонецЕсли;

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

КонецФункции // ПоддерживаетсяВидТО()

так заработало, всем спасибо :)
---
xornet, может все-таки ком не настроен, а через юсб сканируете? открой блокнот и просканируй в него, если пропишется штрихкод - значит не ком
---
sanja, в блокнот не сканируется, так как сканер не в разрыв клавиатуры, а комовский, в ком-порт без всяких эмуляторов... сканирует в гипертерминале, да и в 1с-ке в настройке оборудования тоже всё считывается
---
документ типовой? что за конфигурация?
в УТ11 может не определяться правильно рабочее место (а значит, и не подключаться оборудование при открытии документа)
---
stanru1, ну да-документ (а точнее даже форма записи регистра сведений - мне там нужно сканировать) не типовая, сам добавлял объект метаданных в конфигурацию... ну так внешнее событие должно же везде обрабатываться, разве нет?
---
xornet, опять же непонятно, какая конфигурация.
в УТ11 "слушать" штрихкод надо через ОбработкуОповещения. И не забыть привязать ее к форме.
как-то так:

```1c
    &НаКлиенте
    Процедура ОбработкаОповещения(ИмяСобытия, Параметр, Источник)

    // ПодключаемоеОборудование
    Если Источник = "ПодключаемоеОборудование"
    И ВводДоступен() Тогда
    Если ИмяСобытия = "ScanData" Тогда
    //Преобразуем предварительно к ожидаемому формату
    Если Параметр[1] = Неопределено Тогда
    ОбработатьШтрихкоды(Новый Структура("Штрихкод, Количество", Параметр[0], 1)); // Достаем штрихкод из основных данных
    Иначе
    ОбработатьШтрихкоды(Новый Структура("Штрихкод, Количество", Параметр[1][1], 1)); // Достаем штрихкод из дополнительных данных
    КонецЕсли;
    КонецЕсли;
    КонецЕсли;
    // Конец ПодключаемоеОборудование

    КонецПроцедуры
```
---
stanru1, ага... а вот это уже интересно) конфигурация у меня управление строительством. спасибо!! думаю в этом может быть причина, буду сейчас экспериментировать)
---
xornet, попробуй отловить в модуле приложения
---
, (8) блин, ни в "ОбработкуОповещения", ни в МодульПриложения тоже не заходит.. что ж такое-то..
---
ещё что нашёл! если открыть документ чек ккм и считать ШК там, то срабатывает и события из документа чека и из моего... почему так..?
---
xornet, как ты в своей обработке подключаешь шк?

```1c
    &НаКлиенте
    Процедура ПриОткрытии(Отказ)

    МенеджерОборудованияКлиент.ПриНачалеРаботыСистемы();

    // МеханизмВнешнегоОборудования
    Если ИспользоватьПодключаемоеОборудование // Проверка на включенную ФО "Использовать ВО"
    И МенеджерОборудованияКлиент.ОбновитьРабочееМестоКлиента() Тогда // Проверка на определенность рабочего места ВО
    ОписаниеОшибки = ";

    ПоддерживаемыеТипыВО = Новый Массив();
    ПоддерживаемыеТипыВО.Добавить("СканерШтрихкода");

    Если Не МенеджерОборудованияКлиент.ПодключитьОборудованиеПоТипу(УникальныйИдентификатор, ПоддерживаемыеТипыВО, ОписаниеОшибки) Тогда
    ТекстСообщения = НСтр("ru = 'При подключении оборудования произошла ошибка:
    |"%ОписаниеОшибки%".'");
    ТекстСообщения = СтрЗаменить(ТекстСообщения, "%ОписаниеОшибки%", ОписаниеОшибки);
    ОбщегоНазначенияКлиентСервер.СообщитьПользователю(ТекстСообщения);
    КонецЕсли;
    КонецЕсли;
    // Конец МеханизмВнешнегоОборудования
    ...
```
---
всё, справился! stanru1 спасибо за наводку!
у меня не управляемое приложение, поэтому прописал

ПриОткрытии()
ПолучитьСерверТО().ПодключитьКлиента(ЭтаФорма);
...

и добавил функцию
Функция ПоддерживаетсяВидТО(Вид) Экспорт

 Результат = Ложь;

 Если Вид = Перечисления.ВидыТорговогоОборудования.СканерШтрихКода
  Или Вид = Перечисления.ВидыТорговогоОборудования.СчитывательМагнитныхКарт
  Или Вид = Перечисления.ВидыТорговогоОборудования.ДисплейПокупателя
  Или Вид = Перечисления.ВидыТорговогоОборудования.ЭлектронныеВесы
  Или Вид = Перечисления.ВидыТорговогоОборудования.ФискальныйРегистратор
  Или Вид = Перечисления.ВидыТорговогоОборудования.ТерминалСбораДанных
  Или Вид = Перечисления.ВидыТорговогоОборудования.ЭквайринговаяСистема Тогда
  Результат = Истина;
 КонецЕсли;

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

КонецФункции // ПоддерживаетсяВидТО()

так заработало, всем спасибо :)