Глобальная серверная переменная для COM-соединения
Для обмена данными по локальной сети часто используется COM-соединение.
Такое соединение может устанавливаться по времени довольно долго, поэтому хотелось бы его установить один раз в течение клиентской сессии, что бы не делать это каждый раз при обращении к методу обмена данными, например при запуске экранных форм, использующих этот метод.
- Описание
- Подробнее
Описание
Первое, что приходит в голову, это использовать для хранения соединения “Параметры сеанса”. Но дело в том, что для параметра сеанса в 1С невозможно указать тип для COM-соединения. (Тип “ЛюбаяСсылка” тоже не подходит).
Для того, чтобы эмулировать глобальную серверную переменную, можно использовать экспортируемую функцию в общем модуле с “Повторным использованием возвращаемых значений”.
Функция будет выглядеть так:
Function Cnn(servername,dbname) Export
ret = Undefined;
Try
com = New ComObject("V83.COMConnector");
ret = com.Connect("Srvr="""+servername+""";Ref="""+dbname+"""; Usr=""admin""; Pwd=""12345678"";");
Except
ret = Undefined;
EndTry;
return ret;
EndFunction
Теперь, когда будет производиться повторное обращение к этой функции с теми же аргументами, что и при первом обращении, будет возвращаться ранее установленное COM-соединение.
Вместо глобальной серверной переменной используется значение, которое хранится в кЭше функции со свойством "Повторное использование возвращаемых значений" в течение всего клиентского сеанса.
Теп
Т