Версия для печати Поиск

Главная <-- Обзор платформы <-- Толковый словарь 1С:Предприятия 8 <-- A <-- Automation Client/Server

Видеоматериалы | Книги | Учебные курсы

Automation Client/Server

Поддержка технологий 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 ***,  и эта группа записывается.

Полезные ссылки: