На уникальность статьи не претендую, но, возможно, представленный метод кому-нибудь поможет.
Мною было замечено, что при работе с типовыми конфигурациями типа УТ 10.3 и Розница для платформы 8.2 возникают проблемы с торговым оборудованием при работе через RDP. В конфигурации КА 1.1 данная проблема решена, возможно, ее нет и в УПП.
Проблема следующая: когда нужно настроить работу торгового оборудования через RDP на нескольких рабочих местах, без доработки это сделать не удастся, т.к. 1С будет получать неправильное имя компьютера, для которого нужно получить сохраненные настройки. Т.е. 1С получает не имя клиентского компьютера, а имя сервера, где запускается 1С. Отсюда и проблемы.
Вся суть кроется в функции ПолучитьИмяКомпьютераТО() в модуле обработки СерверТО. В типовых УТ 10.3 и Розница она выглядит так:
Функция ПолучитьИмяКомпьютераТО() Экспорт
Если мИмяКомпьютера = Неопределено Тогда
мИмяКомпьютера = ВРег(ИмяКомпьютера());
КонецЕсли;
Возврат мИмяКомпьютера;
КонецФункции // ПолучитьИмяКомпьютераТО()
Данную функцию нужно заменить на следующую:
Функция ПолучитьИмяКомпьютераТО() Экспорт
Если мИмяКомпьютера = Неопределено Тогда
WSS = Новый COMОбъект("WScript.Shell");
WSSE = WSS.Environment("Process");
мИмяКомпьютера = ВРег(WSSE.Item("ClientName"));
Если ПустаяСтрока(мИмяКомпьютера) Тогда
мИмяКомпьютера = Неопределено;
КонецЕсли;
КонецЕсли;
Если мИмяКомпьютера = Неопределено ИЛИ ВРег(СокрЛП(мИмяКомпьютера)) = "CONSOLE" Тогда
мИмяКомпьютера = ВРег(ИмяКомпьютера());
КонецЕсли;
Возврат мИмяКомпьютера;
КонецФункции // ПолучитьИмяКомпьютераТО()
Вот и все. Всем удачи и спасибо за внимание!