Перейти к содержимому


Услуги программиста 1С
Профессиональные программисты 1С.
Весь комплекс услуг сопровождения 1С.

Курсы 1С
Бухгалтерам, менеджерам
и программистам.
Бесплатно!
Живое индивидуальное обучение по 1С.

Работа со сканером штрихкода


  • Авторизуйтесь для ответа в теме
Сообщений в теме: 8

#1   kuriban

kuriban

      Рядовой

    • Пользователи
    • Сообщений: 11
    • Регистрация: 11-November 10
    • Откуда: , , Украина

Отправлено 26 January 2011 - 23:49

Привет, есть такой вопрос - к 1с 7.7 торговля+склад подключен сканер. Работает. В Расходной накладной есть поле ШК куда вносится отсканированный код. По нажатии на "Найти" находится товар и записывается в табличную часть документа. Как сделать так, чтобы не приходилось каждый раз нажимать на эту кнопку, т.е. чтобы после того, как код определился, товар находился и автоматически вносился в табличную часть.
  • 0

#2   Agent22

Agent22

      Майор

    • Пользователи
    • PipPipPipPip
    • Сообщений: 94
    • Регистрация: 17-July 10
    • Откуда: , , Украина

Отправлено 27 January 2011 - 09:21

Есть процедура ОбработкаВнешнегоСобытия(), в которой прописывается порядок дейсвий при возникновении этого самого события. Вот и надо прописать в ней при получении события от сканера поиск товара по ШК, добавление новой строки и ее заполнение.
  • 0
- Готово, Мастер.
- Что готово?
- Сломал!

#3   pak

pak

      Генерал-майор

    • Модераторы
    • Сообщений: 340
    • Регистрация: 02-February 09
    • Откуда:Солнечный Крым

Отправлено 27 January 2011 - 09:44

телепаты подсказывают:
Если у вас такие извращения, то сканер - в разрыв клавиатуры.
Следовательно:
1. Проверить чтоб сканер последним символом добавлял перевод каретки. (Искать в настройках сканера)
2. На поле ввода ШК повесить процедуру которая будет вставлять ваш товар. Я бы просто передрал процедуру поиска.

Подсказка: посмотрите в стандартной торговле обработку "ПодборПоШтрихКоду", там 20 строк и все предельно ясно.

Добавлено (27.01.2011, 09:44)
---------------------------------------------
Еще , кстати можете Атоловские драйвера посмотреть, там был драйвер который перехватывал сканер в разрыве клавы и гнал событие как от RS232

  • 0

#4   Kazimar

Kazimar

      Подполковник

    • Пользователи
    • PipPipPipPipPip
    • Сообщений: 136
    • Регистрация: 04-February 09
    • Откуда: , ,

Отправлено 27 January 2011 - 09:58

Если сканер новый (под USB), то проблем вообще не будет.
Делай так как тебе написал pak. Сканер вставит тебе ШК в поле ввода и автоматически запустится привязанная к этому полю процедура или функция.
  • 0

#5   pak

pak

      Генерал-майор

    • Модераторы
    • Сообщений: 340
    • Регистрация: 02-February 09
    • Откуда:Солнечный Крым

Отправлено 27 January 2011 - 10:04

Кстати да, упустил из виду.
USB сканеры которые мне попадались по умолчанию работали как в разрыв клавы.
Некоторые имели возможность переключаться в RS232. Почитайте доку на сканер.
Мне такой режим кажется более удобным. Но можно работать и в первом варианте.
  • 0

#6   Agent22

Agent22

      Майор

    • Пользователи
    • PipPipPipPip
    • Сообщений: 94
    • Регистрация: 17-July 10
    • Откуда: , , Украина

Отправлено 27 January 2011 - 11:09

Насчет Атолловских драйверов мягко скажем неправда. Они работают как с СОМ-портом так и с разрывом клавиатуры и никакой эмуляции, все четко в настройках выставляется. Работать удобнее на самом деле как раз с разрывом клавиатуры, особенно если удаленно - не надо подключать порты, которые могут поссорится. Проблема в том что драйвер, поставляемый с ТиС работает только с СОМ. Есть и другие проблемы - у товара задается только 1 штрихкод. Поэтому если надо работать с ШК в реальных условиях - лучше переделать и хранение ШК в программе и использовать драйвер Атолла - если найти версию года так 2006, то она бесплатна для программ семейства 1С.
  • 0
- Готово, Мастер.
- Что готово?
- Сломал!

#7   kuriban

kuriban

      Рядовой

    • Пользователи
    • Сообщений: 11
    • Регистрация: 11-November 10
    • Откуда: , , Украина

Отправлено 27 January 2011 - 22:37

Всем Большое спасибо. Но встал вопрос как вернуть фокус на это поле опять. Ничего не получалось (пробовал и активизировать и прочие способы), пока не воспользовался "Предупредить" на 1 сек. После предупреждения фокус не уходит на другой элемент.
  • 0

#8   takefive

takefive

      Подполковник

    • Пользователи
    • PipPipPipPipPip
    • Сообщений: 125
    • Регистрация: 16-November 07
    • Откуда:Днепропетровск

Отправлено 28 January 2011 - 10:02

Можно установить внешней обработкой. У меня по другому не получилось...

Code

Процедура Обработать()//Срабатывает формула в реквизите диалога
  //Обработаем
  Сообщить("Обработка значения: " + МойРеквизит);
  //Очистим  
  МойРеквизит = "";
  //Вернем курсор в поле. Откроем внешнюю обработку Курсор.ert
  //которая находится в одном каталоге с этой обработкой.
  //Она поставит курсор на место (МойРеквизит)
  Имя = "";
  Каталог = "";
  РасположениеФайла(Каталог,Имя);
   
  ОткрытьФормуМодально("Отчет",Контекст,Каталог + "\Курсор.ert");
КонецПроцедуры

Code

Процедура ПриОткрытии()
  //Получили контекст источника
  Источник = Форма.Параметр;
  //Установили курсор
  Источник.Активизировать("МойРеквизит");
  //Эту форму не открываем
  СтатусВозврата(0);
КонецПроцедуры

  • 0

#9   Kazimar

Kazimar

      Подполковник

    • Пользователи
    • PipPipPipPipPip
    • Сообщений: 136
    • Регистрация: 04-February 09
    • Откуда: , ,

Отправлено 28 January 2011 - 13:26

Сделай такую штуку. На форме, на всех реквизитах кроме ШК убери флажок "Пропускать при вводе"
Тогда у тебя постоянно будет фокус стоять только на реквизите ШК.
  • 0



Похожие темы

  Название темы Автор Статистика Последнее сообщение



Количество пользователей, читающих эту тему: 0

0 пользователей, 0 гостей, 0 анонимных