Два пользователя с ФР на терминальном сервере с УТ 10.3
Т.к. в 1с идет привязка торгового оборудования к имени компьютера
работа от двух пользователей на одном терминале с разными кассами невозможна.
Полно веток про то что надо что-то в коде поменять, но нет конкретики.
.
Подскажите путь к решению проблемы
Не знаю как в УТ, в БП просто пробросил порты на ТС (ККМ должны быть подключены на разные номера портов). Учти, что в данной конфигурации могут возникать ошибки пробития чека, т.к. ККМ и драйвер находятся на разных машинах.
(0) В обработке ТОСервер в модуле объекта изменить фукнцию ПолучитьИмяКомпьютераТО(). Например, добавив к имени компьютера имя пользователя БД, но тогда для каждого пользователя придется настраивать ТО:
// Функция возвращает строку c именем компьютера для нужд торгового оборудования.
//
// Возвращаемое значение:
// Строка - имя компьютера для торгового оборудования.
//
Функция ПолучитьИмяКомпьютераТО() Экспорт
Если мИмяКомпьютера = Неопределено Тогда
мИмяКомпьютера = ВРег(ИмяКомпьютера())+ ВРег(ПользователиИнформационнойБазы.ТекущийПользователь().Имя);
КонецЕсли;
Возврат мИмяКомпьютера;
КонецФункции // ПолучитьИмяКомпьютераТО()
+(5)
Я сначала делал привязку к пользователю, но т.к. кассиры периодически менялись местами - привязал к имени пользователя сеанса
Network = Новый COMОбъект("WScript.Network");
ИмяПользователя = NetWork.UserName;
Функция ПолучитьИмяКомпьютераТО() Экспорт
Если мИмяКомпьютера = Неопределено Тогда
мИмяКомпьютера = ВРег(ИмяКомпьютера())+ ИмяПользователя
КонецЕсли;
Возврат мИмяКомпьютера;
КонецФункции // ПолучитьИмяКомпьютераТО()
Глупец, лишенный способности посмеяться над собой вместе с другими, не сможет долго выносить программирование. Фредерик Брукс-младший