gifts2017

Сканеры штрих-кодов, ридеры и прочее под терминалом

Опубликовал defini (defini) в раздел Оборудование - Ридер магнитных карт

Управление com-портами клиентских машин из под терминала.
Возникла ситуация: 5 юзеров работают в 1С 7.7 под терминалом, на каждом рабочем месте присутствует ридер магнитных карт, подключенный через com-порт.
Праздный вопрос: как работать ридерами из 1С, которая стоит на сервере?

Вариантов решения данной проблемы в инете довольно много, предлагаю на Ваш суд еще один способ. Вот кусочек кода из глобальника при старте системы:
НомерПорта 
= 0
;
Network 
= СоздатьОбъект("WScript.Network")
;
WshShell
=СоздатьОбъект("WScript.Shell")
;
Если
СокрЛП
(
Network
.
UserName
) = "kassa1" Тогда//определили имя терминального пользователя
НомерПорта 
= 1
;
	WshShell
.
Run
("cmd /c "+"net use /delete com1",0)
;
//удалили com1, оставшийся от пред.сеанса
WshShell
.
Run
("cmd /c "+"net use com1 \\tsclient\com1",0)
;
//добавили com1, для тек.пользователя ИначеЕсли
СокрЛП
(
Network
.
UserName
) = "kassa2" Тогда
НомерПорта 
= 2
;
	WshShell
.
Run
("cmd /c "+"net use /delete com2",0)
;
	WshShell
.
Run
("cmd /c "+"net use com2 \\tsclient\com1",0)
;
КонецЕсли
;
Если
НомерПорта 
<> 0 Тогда //тут полет программерской мысли... Иначе //а вот здесь непредвиденная ситуация... КонецЕсли
;


Это все прекрасно работает 2000 и 2003 серверах, для Citrix необходимо вместо "tsclient" использовать "client".
Таким способом подключал сканера штрих-кодов, ридеры, терминалы сбора данных, весы.

См. также

Подписаться Добавить вознаграждение

Комментарии

1. ssp_ (ssp_) 13.07.07 17:42
А если юзверей не 5, а 50, как будет выглядеть код при старте?
2. defini (defini) 16.07.07 09:17
Если пользователей будет 50 человек, семерка сама по себе загнется...
И вообще-то, я предложил идею, концепт, опять-таки без ВК и приложений, а дальше уж кто во что гаразд...
3. Drock (d.snissarenko) 16.07.07 10:26
В целом нормально, не обязательно даже имя юзера, пусть у всех мапит, а то при смене имени пользователя (а такое может ) случится, уйдет некоторое время на решение проблемы, пока вспониш что у тебя в глобальнике прописано, а если это будеш не ты, то уйдет еще больше
4. defini (defini) 16.07.07 11:07
Ну я обычно для таких случаев в справочнике пользователей добавляю реквизит "СтрокаИнициализации", где и прописаны необходимые параметры запуска, по типу "Подключение торгового оборудования".
5. ssp_ (ssp_) 17.07.07 11:49
Я не понимаю, зачем каждому юзеру мапить устройство на свой порт? У меня все на один мапятся, все работают, никто никому не мешает. Или может так только Цитрикс умеет?
Привязывать аппаратные настройки к имени юзера - не очень правильно. Потому что они меняются очень часто. Лично я все скрипты для мапинга портов кладу на клиентскую машину, чтобы конфигурация железа была там же, где само железо. А при старте одинэски они запускаются через \\client\c$\...
6. defini (defini) 17.07.07 12:44
Сам ответил на свой вопрос, без глюков так умеет только Citrix :-(
7. Алексей Опарихин (Al-X) 16.11.07 09:51
Кроме Citrixа так умеет делать Windows 2003 (сервер терминалов) + Windows XP (клиенты).
Без всяких гемороев и изменения в конфе ! Просто включил перенаправление портов и ОК .
в данный момент на некоторых компах работает сразу по 2 штриха ФР К + сканер штрих кода + ридер магнитных карт.
Полет нормальный, проблем не наблюдаю.
8. misha226 (misha226) 20.05.10 09:57
У меня сканер работает через Scanopos.dll, ручной через COM. Долго лагал, пропускал некоторые штрихи, т.е. брал не с первого раза. Обновил длл до 8.0.4.1(от 1С) и убрал буфера в порту на клиенте. Все Ок!
Для написания сообщения необходимо авторизоваться
Прикрепить файл
Дополнительные параметры ответа