Automation Server и Automation Client - инструмент интеграции с другими программными системами. Automation ServerОсновное назначение Automation-сервера 1С:Предприятие 8 - управление приложением системы 1С:Предприятие 8 из других приложений и выполнение действий аналогичных интерактивным действиям. Automation-сервер 1С:Предприятие 8 предоставляет доступ ко всем свойствам и методам своего глобального контекста, имеет дополнительные свойства и методы для выполнения действий, специфичных для работы в режиме Automation. Для запуска системы 1С:Предприятие 8 в качестве Automation-сервера из внешнего приложения, выполняется следующая последовательность действий: - создается COM-объект с идентификатором V82.Application;
- выполняется инициализация системы 1С:Предприятие 8 методом Connect();
- вызываются свойства и методы системы 1С:Предприятие 8 как Automation-сервера.
Пример В качестве примера можно рассмотреть обращение к информационной базе 1С:Предприятия 8 из программы на языке MS Visual Basic. В данном примере запускается и инициализируется конфигурация 1С:Предприятие 8 с базой данных в каталоге c:\InfoBases\Trade. Далее в программе 1С:Предприятие 8 создается объект типа СправочникМенеджер.Товары и создается новая группа элементов с названием ***** Экспорт из Excel ******. Во вновь созданную группу каталога записываются данные из таблицы MS Excel. Sub Excel_to_trade() Dim trade As Object Dim Элемент As Object Set trade = CreateObject("V82.Application") "Создать Automation сервер trade.Connect("File=""c:\InfoBases\Trade"";Usr=""Director"";") "Соединиться с информационной базой Set СправочникТоваров = trade.Справочники. Товары Set ГруппаТоваров = СправочникТоваров.СоздатьГруппу() ГруппаТоваров.Наименование = "***** Экспорт из Excel ******" ГруппаТоваров.Записать N = 100 "Количество строк в документе For Count = 1 To N Set Элемент = СправочникТоваров.СоздатьЭлемент() Элемент.Наименование = Application.Cells(Count, 2).Value Элемент.Розн_Цена = Application.Cells(Count, 3).Value Элемент.Мел_Опт_Цена = Application.Cells(Count, 4).Value Элемент.Опт_Цена = Application.Cells(Count, 5).Value Элемент.Родитель = ГруппаТоваров.Ссылка Элемент.Записать
Next Count
End Sub Контекст исполнения Объект Automation-сервер 1С:Предприятие 8 в качестве своих свойств может иметь: - системные константы,
- значения заданных в конфигураторе объектов, доступ к которым осуществляется с помощью менеджеров (например, константы, перечисления, справочники, документы, журналы документов, отчеты, обработки, планы видов характеристик, планы счетов, планы видов расчета, регистры);
- переменные, объявленные в модуле приложения.
Automation-сервер 1С:Предприятие 8 в качестве своих методов может иметь: - системные процедуры и функции;
- процедуры и функции модуля приложения и общих модулей, объявленные с ключевым словом Экспорт;
- два дополнительных метода - Connect() и NewObject().
Automation Client Как и многие современные программные продукты, 1С:Предприятие 8 может выступать в роли клиентов Automation. Поэтому имеется возможность из системы 1С:Предприятие 8 обращаться к другой копии 1С:Предприятие 8 (например, к другой конфигурации) для обмена данными. В качестве примера можно рассмотреть обращение к информационной базе 1С:Предприятия 8 из другой информационной базы 1С:Предприятия 8. В данном примере запускается и инициализируется конфигурация 1С:Предприятия 8 с базой данных в каталоге c:\InfoBases\Trade. Далее в этой базе, в справочнике Товары создается новая группа с наименованием *** Экспорт из другой базы 1С:Предприятия 8 ***, и эта группа записывается.
|