1CLenta.ru  

1С:Предприятие - COM соединение (V83.COMConnector, V82.COMConnector)

Программирование системы     24.05.2016 14:42     47804

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

Для установки внешнего соединения с информационной базой 1С:Предприятия 8, используется COM-объект V83.COMConnector(для платформы версии 8.3) или V82.COMConnector(для платформы версии 8.2). С помощью одного экземпляра объекта можно установить неограниченное количество соединений. При данном виде внешнего соединения не доступен пользовательский интерфейс.

Процедура УстановитьВнешнееСоединение()


Процедура устанавливает внешнее соединение из одной информационной базы к другой. В зависимости от типа подключаемой информационной базы(файловый, серверный) строка подключения задаётся в разном формате.

Файловый вариант
  • File - имя каталога, в котором размещается информационная база
  • Usr - имя пользователя информационной базы
  • Pwd - пароль пользователя информационной базы

Серверный вариант
  • Srvr - имя компьютера или его ip-адрес
  • Ref - имя базы в кластере серверов
  • Usr - имя пользователя информационной базы
  • Pwd - пароль пользователя информационной базы


Перем мСоединение;
Процедура УстановитьВнешнееСоединение()

//Файловый вариант
СтрокаПодключения = "File=""""; Usr=""""; Pwd="""";";

//Серверный вариант
СтрокаПодключения = "Srvr=""""; Ref=""""; Usr=""""; Pwd="""";";

Если мСоединение <> Неопределено Тогда
Возврат;
КонецЕсли;

Попытка
Соединитель = Новый COMObject("V83.COMConnector");
мСоединение = Соединитель.Connect(СтрокаПодключения);
Исключение
Сообщить("Не удалось подключиться: " + ОписаниеОшибки());
КонецПопытки;

КонецПроцедуры


Процедура ВыполнитьДействия()


Процедура ВыполнитьДействия()

//Обработать данные

Справочник = мСоединение.Справочники.ИмяСправочника;
Документ = мСоединение.Документы.ИмяДокумента;
Регистр = мСоединение.РегистрыСведений.ИмяРегистра;
//...
//...
//...

//Создать любой объект встроенного языка

ЗапросCOM = мСоединение.NewObject("Запрос");
ТаблицаCOM = мСоединение.NewObject("ТаблицаЗначений");
МассивCOM = мСоединение.NewObject("Массив");
//...
//...
//...

КонецПроцедуры


Процедура ЗакрытьВнешнееСоединение()


Процедура ЗакрытьВнешнееСоединение()
мСоединение = Неопределено;
КонецПроцедуры


Также внешнее соединение с 1С:Предприятием 8, можно установить через Automation сервер. Данный вид соединения позволяет программно выполнять интерактивные действия в приложении. Внешнее соединение c 1С:Предприятием через Automation сервер запускается как отдельное приложение и требует больше компьютерных ресурсов для работы, чем соединение через V83.COMConnector.

Комментарии (0)