Книга: Технологии интеграции "1С:Предприятия 8.3""
Назад: Automation Server
Дальше: Внешнее соединение

Automation Client

Основное назначение Automation-клиента «1С:Предприятия» ? управление другими приложениями из системы «1С:Предприятие» и выполнение действий, аналогичных интерактивным действиям.

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

В общем случае применение этой технологии состоит из двух частей: создание объекта по его идентификатору и последующее использование объекта. Создание объекта выполняется оператором Новый COMОбъект(ИдентификаторОбъекта).

Использование созданного объекта ничем не отличается от использования остальных объектов «1С:Предприятия».

Дополнительные возможности предоставляет функция ПолучитьCOMОбъект(). С ее помощью можно создать Automation-объект из файла или подключиться к уже существующему в операционной системе экземпляру Automation-объекта.

подробнее

Подробнее познакомиться с примером работы с книгой программы Microsoft Excel можно в демонстрационной конфигурации «Интеграция с 1С», которая прилагается к книге.

Пример работы с книгой программы Microsoft Excel приведен в листинге 5.5.

Листинг 5.5. Пример работы с книгой Excel

&НаКлиенте

Процедура РаботаСКнигойExcel(Команда)

 

Путь= "c:\temp\";

Сообщение = Новый СообщениеПользователю();

 

Документ = ПолучитьCOMОбъект(Путь + "Integration.xls");

 

НомерЛиста = 2;

Клиент = Документ.Sheets(НомерЛиста).Cells(1, 2).Value;

Сообщение.Текст = Клиент;

Сообщение.Сообщить();

 

// Обработать дальнейшие данные шапки документа.

 

НомерСтроки=2;

Номер = Документ.Sheets(НомерЛиста).Cells(НомерСтроки, 1).Value;

 

НомерСтроки=6;

Номер = Документ.Sheets(НомерЛиста).Cells(НомерСтроки, 1).Value;

 

Пока СокрЛП(Номер) <> "#" Цикл

Номенклатура = Документ.Sheets(НомерЛиста).Cells(НомерСтроки, 2).Value;

Цена = Документ.Sheets(НомерЛиста).Cells(НомерСтроки, 6).Value;

 

Сообщение.Текст = Номенклатура;

Сообщение.Сообщить();

Сообщение.Текст = Цена;

Сообщение.Сообщить();

 

// Обработать дальнейшие данные табличной части документа.

НомерСтроки = НомерСтроки + 1;

Номер = Документ.Sheets(НомерЛиста).Cells(НомерСтроки, 1).Value;

КонецЦикла;

 

// Завершить работу.

Документ.Application.Quit();

 

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

Следует отметить, что для завершения работы с объектами Microsoft Оffice, имеющими метод Quit(), его желательно вызывать в явном виде.

Назад: Automation Server
Дальше: Внешнее соединение