Подключение сканера штрих кода в терминальном режиме. Нужна помощь
Добрый день!
Конфигурация 1с: 1С:Предприятие 8.3 (8.3.4.408) "Управление торговлей", редакция 10.3 (10.3.32.1)
1с УТ работает в Sql режиме на сервере компании - запущен сервер 1с и база на postgrees. Вход в 1с пользователи
осуществляют в терминальном режиме через удаленное подключение к рабочему столу сервера и запуска 1с с рабочего стола сервера.
У каждого пользователя стоит галочка "использовать принтеры" и принтеры пользователей видятся нормально и печатают они каждый на своем принтере. Есть пользователи, у которых установлены сканеры штрихкодов. Галочка "Проброс портов" в настройках подключения 0,у этих пользователей тоже настроен.
В 1с УТ установка сканера штрихкода запускается в меню "подключение и настройка торгового оборудования". Здесь я добавил сканер штрихкода, указал ему COM порт локального компьютера с которого подключаюсь к серверу и сканер заработал на этом компьютере.
Но у других пользователей этот же сканер тоже доступен и вызывает ошибку при работе со справочником номенклатуры.
Вопрос: Как настроить несколько сканеров штрихкодов в 1с УТ (они у нас подключены к трем локальным компам), но чтобы они не мешали другим пользователям работать в справочнике номенклатура?
Конфигурация 1с: 1С:Предприятие 8.3 (8.3.4.408) "Управление торговлей", редакция 10.3 (10.3.32.1)
1с УТ работает в Sql режиме на сервере компании - запущен сервер 1с и база на postgrees. Вход в 1с пользователи
осуществляют в терминальном режиме через удаленное подключение к рабочему столу сервера и запуска 1с с рабочего стола сервера.
У каждого пользователя стоит галочка "использовать принтеры" и принтеры пользователей видятся нормально и печатают они каждый на своем принтере. Есть пользователи, у которых установлены сканеры штрихкодов. Галочка "Проброс портов" в настройках подключения 0,у этих пользователей тоже настроен.
В 1с УТ установка сканера штрихкода запускается в меню "подключение и настройка торгового оборудования". Здесь я добавил сканер штрихкода, указал ему COM порт локального компьютера с которого подключаюсь к серверу и сканер заработал на этом компьютере.
Но у других пользователей этот же сканер тоже доступен и вызывает ошибку при работе со справочником номенклатуры.
Вопрос: Как настроить несколько сканеров штрихкодов в 1с УТ (они у нас подключены к трем локальным компам), но чтобы они не мешали другим пользователям работать в справочнике номенклатура?
По теме из базы знаний
Ответы
В избранное
Подписаться на ответы
Сортировка:
Древо развёрнутое
Свернуть все
(2) DJDUH, Передача портов в терминальной сессии настроена. Раньше на данном компьютере-сервере стояла 1с 7 ТиС и сканеры у всех трех пользователей работали нормально - порты пробрасывались с каждого компьютера свой Com порт, а у на других компьютерах настройки сканера не было. Сейчас же если я настраиваю на каком-нибудь компьютере пользователя сканер штрихкода в 1с 8 ут, то и у других пользователей данный сканер тоже оказывается включенным и так как его нет - выдается ошибка.
А вот что значит подтянуть в обработке каждому пользователю назначенный ему сканер - не совсем понял, это получается программировать что-ли надо? Хотелось бы обойтись какими-нибудь стандартными средствами - ведь в 1с 7 они же работали!
А вот что значит подтянуть в обработке каждому пользователю назначенный ему сканер - не совсем понял, это получается программировать что-ли надо? Хотелось бы обойтись какими-нибудь стандартными средствами - ведь в 1с 7 они же работали!
(3) serpolit, стандартными средствами вряд ли получится. Там проверка подключения идет на компьютер, а при RDP он один (сервер). Этот геморрой 1С никак не хочет решать даже в УФ. Хотя там чуть попроще решается.
В данном случае только править код. В обработке ТОСервер.
В данном случае только править код. В обработке ТОСервер.
(4) spacecraft, Чтобы не править код решил сделать у данных пользователей запуск 1с не в терминальном режиме, а с локальной станции и сканеры стали привязываться к локальному компьютеру и работают. Почему-то до этого думал, что так будут проблемы с лицензиями на 1с, но на самом деле все нормально. Всем спасибо.
(6) ture, тут проблема не в сканере, а в обработке обслуживания. Она тупо находит все "подключенное" оборудование на рабочее место (а на сервере по RDP это всегда одно и тоже для всех). Соответственно даже у кого сканера нет, обработка будет его пробовать подключить.
В БПО под управляемые формы немного получше сделали. Можно для каждого пользователя свое рабочее место указать.
В БПО под управляемые формы немного получше сделали. Можно для каждого пользователя свое рабочее место указать.
Хоть тема и старая но с ней приходится до сих пор сталкиватся, в 1С оборудование привязывается к имени компьютера при настройке, на терминалте имя компьютера одинаково для всех подключенных сеансов, но имя удаленного компьютера подключенного к терминалу можно определить используюя WScript.Shell (работает только в Windows).
Я решил эту проблему изменив в модуле обработки подключения оборудования (Обработки.ТОСервер) функцию получения имени компьютера:
Я решил эту проблему изменив в модуле обработки подключения оборудования (Обработки.ТОСервер) функцию получения имени компьютера:
Функция ПолучитьИмяКомпьютераТО() Экспорт
Если мИмяКомпьютера = Неопределено Тогда
ПеременныеОкружения = ПолучитьПеременныеОкружения();
мИмяКомпьютера = ВРег(ПеременныеОкружения.Получить("ИмяКопьютера"));
КонецЕсли;
Возврат мИмяКомпьютера;
КонецФункции // ПолучитьИмяКомпьютераТО()
Функция ПолучитьПеременныеОкружения() Экспорт
ПеременныеОкружения = Новый Соответствие;
WshShell = Новый COMОбъект("WScript.Shell");
ИмяЛокальногоКомпьютера = WshShell.ExpandEnvironmentStrings("%ComputerName%");
ИмяУдаленногоКомпьютера = WshShell.ExpandEnvironmentStrings("%ClientName%");
Если ИмяУдаленногоКомпьютера = "%ClientName%" Тогда
//1С запущена на локальном компьютере
ИмяУдаленногоКомпьютера = "";
ИмяКопьютера = ИмяЛокальногоКомпьютера;
Иначе
//1С запущена на удаленном компьютере (RDP)
ИмяКопьютера = ИмяУдаленногоКомпьютера;
КонецЕсли;
ПеременныеОкружения.Вставить("ИмяЛокальногоКомпьютера", ИмяЛокальногоКомпьютера);
ПеременныеОкружения.Вставить("ИмяУдаленногоКомпьютера", ИмяУдаленногоКомпьютера);
ПеременныеОкружения.Вставить("ИмяКопьютера", ИмяКопьютера);
ПеременныеОкружения.Вставить("ИмяПользователя", WshShell.ExpandEnvironmentStrings("%UserName%"));
ПеременныеОкружения.Вставить("ИмяСессии", WshShell.ExpandEnvironmentStrings("%SESSIONNAME%"));
ПеременныеОкружения.Вставить("CMD", WshShell.ExpandEnvironmentStrings("%COMSPEC%"));
ПеременныеОкружения.Вставить("ДоменПользователя", WshShell.ExpandEnvironmentStrings("%USERDOMAIN%"));
Возврат ПеременныеОкружения;
КонецФункции
Показать
Вакансии
Аналитик 1С / Бизнес-аналитик
Нижний Новгород
зарплата от 100 000 руб. до 250 000 руб.
Временный (на проект)
Нижний Новгород
зарплата от 100 000 руб. до 250 000 руб.
Временный (на проект)