Имя: Пароль:
1C
1С v8
Можно ли подключить два сканера в "РАЗРЫВ КЛАВИАТУРЫ" к одному компу
,
0 Alexprimer
 
18.07.12
11:35
Можно ли подключить два сканера шк в "РАЗРЫВ КЛАВИАТУРЫ" к одному компу? Как отличить ШК отсканированный с одного и другого сканера без драйвера?
1 sergeev-ag-1977
 
18.07.12
11:35
Можно, можно хоть 100... Будет ли работать - вот в чем вопрос ...
2 Cashtane
 
18.07.12
11:58
Можно подключить. Но нужно больше подробностей о задаче. Разрыв клавиатуры не очень универсален.
Попробуй с префиксами поиграться. На первом сканере выставляй "1", на втором "2". В 1С обрезай.
3 Alexprimer
 
18.07.12
12:09
Задача и состоит в том чтобы один и тот же шк различить с какого сканера считали. Собственно меня бы устроил тот факт, что можно добавлять префикс, а в 1с его обрезать. Попробовать не на чем, поэтому и обратился.
4 rutony
 
18.07.12
12:17
(0) Можно, очень распространенная тема: прикассовая клавиатура, клавиатура и сканер, и все подключено друг в друга...

Различить можно по префиксам, суффиксам.
5 Cashtane
 
18.07.12
12:18
Если совсем по уму, то было бы разумно в префиксах использовать какие ни будь служебные символы. Т.е. которые не будут выводится, при сканировании. Но которые можно обработать. В случае с "1" и "2", придется все вводы обрабатывать, что муторно.
6 Defender77
 
18.07.12
12:21
(0) Пробовать нужно - может питания не хватить. Если внешние блоки питания у каждого - тогда все ок
7 Фдулич
 
18.07.12
12:31
а  работать будет только один считывать
8 Cashtane
 
18.07.12
12:33
Не пугайте, на два сканера питания хватит. Да и считывать будут оба.
9 Dmitriy_76
 
18.07.12
12:34
интерсный вопрос..а если 2 сканера одновременно пошлют данные что тогда ?

на выходе первого "12345678"
второго "йцукенгш"

что поймает 1с ???
"1й2ц3у4к5е6н7г8ш" ?
10 Cashtane
 
18.07.12
12:37
Не пошлют одновременно.
11 Cashtane
 
18.07.12
12:38
12345678йцукенгш ИЛИ йцукенгш12345678
12 big
 
18.07.12
13:44
(9) Драйвер обработает оба события - т.е. оба сканирования. А далее уже проблема программиста как эти данные распределить.

Вообще, после наступления события от сканера, драйверу шлется команда об остановке передачи данных. Когда 1С обработает данные по логике заложенной программистом, дается команда на разрешение передачи данных и всё повторяется. По такому алгоритму в 1С всё и обрабатывается. Ессно, если не используется ***нутый способ текстового поля на форме и горячих клавиш.

Каждый сканер надо настроить на разные суффиксы (с префиксами ИМХО неудобнее). В результате в драйвере будет 2 ЛУ, которые при поступлении событий от сканера будут будут обрабатываться по нужной логике.


з.ы. нет никаких технических проблем с реализацией этой задачи.
13 Cashtane
 
18.07.12
13:57
Big, расскажи про нормальные способы обработки 1С-ом. Кроме ужо упомянутого текстового поля на форме и горячих клавиш.
14 big
 
19.07.12
05:48
(13) я не знаю как конкретно это сделано в 8-ке, раза 2-3 что-то я правил в обработках обслуживания, но давно это было. А принцип он все равно одинаков.

Я использую драйвер Атола. При подключении драйвера выставляются свойства
AutoDisable = 1;       // остановка посылки данных в 1С после сканирования
DataEventEnabled = 1;  // устройство включено

После поступления от драйвера события в форму, автоматически (драйвером) свойство DataEventEnabled устанавливается в 0 (т.е. FALSE). Спокойно отрабатываю алгоритм обработки поступивших данный, а в конце свойство DataEventEnabled устанавливаю в TRUE. Ессно, если в очереди есть данные, то они вновь генерируют событие.

В алгоритме обработки данных я могу узнать от какого устройста (ЛУ) пришло событие, что это за утройство (сканер, карт-ридер, спецклавиатура и т.п.), соответственно делаю всё что мне нужно.

Вот собссно и всё.

з.ы. драйвер распознает разные устройства по их свойствам, установленных в параметрах ЛУ. Это модель (сканер, карт-ридер и т.п.) + префикс-суффикс. Т.е. в случае, если у нас 2-3-4 сканера, то он их будет различать по разным префиксам-суффиксам.
15 Cashtane
 
19.07.12
06:11
А о разве в "разрыве клавиатуры" всё также?
16 big
 
19.07.12
06:33
(15) да, всё аналогично. Ессно в атоловском драйвере надо выставить порт "Клавиатура"
17 Cashtane
 
19.07.12
11:21
Спасибо за информацию.