# Макросы и автоматизация

## Интерфейс автоматизации в QlikView

QlikView имеет интерфейс автоматизации (ранее функция автоматизации называлась автоматизацией OLE). Данный интерфейс позволяет внешней программе или внутреннему макросу получать доступ к приложению QlikView.

Полное техническое описание интерфейса автоматизации QlikView можно найти в папке Documentation приложения QlikView.

Интерфейс автоматизации является составной частью QlikView, и для его активации не требуется выполнять какие-либо особые операции.

## Управление QlikView с помощью автоматизации и макросов

### Внешнее управление QlikView

Объекты QlikView доступны посредством автоматизации внешних программ, например Visual Basic или C++, которые поддерживают функцию автоматизации.

Такой код можно использовать для управления QlikView из других приложений или автономных программ.

Автономные исполняемые файлы можно вызывать из документа QlikView посредством кнопок запуска.

### Внутренний преобразователь макросов

Объекты QlikView также доступны посредством функции автоматизации внутри QlikView посредством встроенного интерпретатора макросов.

Макросы, написанные в VBScript или JScript, в документе QlikView могут теперь вызываться несколькими различными способами:

#### События документа:

* Макрос можно запустить после открытия документа QlikView.
* Макрос можно запустить после повторного выполнения скрипта.
* Макрос можно запустить после команды Сокращение данных.
* Макрос можно запустить после выбора в любом поле документа.

#### События листа:

* Макрос можно запустить после включения листа.
* Макрос можно запустить после выключения листа.

#### События объекта листа:

* Макрос можно запустить после включения объекта листа.
* Макрос можно запустить после выключения объекта листа.

#### События кнопки:

* Объекты листа кнопки могут быть связаны с макросом.

#### События поля:

* Макрос можно запустить после выбора в указанном поле.
* Макрос можно запустить после совершения выбора в любом поле, которое логически ассоциируется с указанным полем.
* Макрос можно запустить после блокирования выборок в указанном поле.
* Макрос можно запустить после разблокирования выборок в указанном поле.

#### События переменной:

* Макрос можно запустить после ввода значения для указанной переменной.
* Макрос можно запустить, когда значение указанной переменной, содержащей формулу, было изменено в результате изменения значения формулы.