---
title: "Интерфейс событий документа; работа с файлом ksDocumentFileNotify/IDocumentFileNotify"
type: interface
api: [api5]
tags: [interface, api5, ksdocumentfilenotify]
sources:
  - ksdocumentfilenotify.html
---

*API интерфейсов. Версия 5 > Интерфейсы событий API5  > События в КОМПАС Общие сведения *


## Интерфейс событий документа; работа с файлом ksDocumentFileNotify/IDocumentFileNotify

| ksDocumentFileNotify | - интерфейс Automation |
| --- | --- |
| IDocumentFileNotify | - интерфейс COM |
События интерфейса позволяют контролировать состояние документа.
Источники событий для подписки:
• API 7,
• API 5.
ksDocumentFileNotify/IDocumentFileNotify - события
ksDocumentFileNotify/IDocumentFileNotify - методы


## Activate - Документ активизирован

Синтаксис Automation:
```
BOOL Activate();
```
Синтаксис COM:
```
BOOL Activate();
Возвращаемое значение:
- не используется.
```
Примечание:
1. Индекс события задан в перечислении событий документа....
2. В Automation источником событий для подписки на данный интерфейс являются объекты:
•ksDoсument2D (чертеж, фрагмент),
•ksSpcDocument (спецификация),
•ksDocumentTxt (текстовый документ),
•ksDocument3D (документ-модель).
В СOM источником для подписки на данный интерфейс является указатель на документ.


## ActivateToolbarSet - Активизация набора команд

Синтаксис Automation:
```
BOOL ActivateToolbarSet(BSTR OldToolbarSetId, BSTR NewToolbarSetId);;
```
Синтаксис COM:
```
BOOL ActivateToolbarSet(char  * OldToolbarSetId, char * NewToolbarSetId);
Входные параметры:
OldToolbarSetId    - идентификатор старого набора команд,
NewToolbarSetId    - идентификатор нового набора команд.
Возвращаемое значение:
- не используется.
Версия Компас v23
```


## AutoSaveDocument - Документ автосохранен

Синтаксис Automation:
```
BOOL AutoSaveDocument();
```
Синтаксис COM:
```
BOOL AutoSaveDocument();
Возвращаемое значение:
Не используется
```


## BeginAutoSaveDocument - Начало автосохранения документа

Синтаксис Automation:
```
BOOL BeginAutoSaveDocument();
```
Синтаксис COM:
```
BOOL BeginAutoSaveDocument();
Возвращаемое значение:
Не используется
```


## BeginCloseDocument - Начало закрытия документа

Синтаксис Automation:
```
BOOL BeginCloseDocument();
```
Синтаксис COM:
```
BOOL BeginCloseDocument();
Возвращаемое значение:
TRUE    - закрыть документ,
FALSE    - документ закрывать нельзя.
```
Примечание:
1. Индекс события задан в перечислении событий документа....
2. В Automation источником событий для подписки на данный интерфейс являются объекты:
•ksDoсument2D (чертеж, фрагмент),
•ksSpcDocument (спецификация),
•ksDocumentTxt (текстовый документ),
•ksDocument3D (документ-модель).
3. В СOM источником событий для подписки на данный интерфейс является указатель на документ.


## BeginProcess - Начало процесса

Синтаксис Automation:
```
BOOL BeginProcess( long Id );
```
Синтаксис COM:
```
BOOL BeginProcess( long Id );
```


## BeginSaveAsDocument - Начало сохранения документа c другим именем (до диалога выбора имени)

Синтаксис Automation:
```
BOOL BeginSaveAsDocument();
```
Синтаксис COM:
```
BOOL BeginSaveAsDocument();
Возвращаемое значение:
TRUE    - сохранить документ,
FALSE    - документ сохранить нельзя.
```
Примечание:
1. Индекс события задан в перечислении событий ksDocumentFileNotifyEnum.
2. В Automation источником событий для подписки на данный интерфейс являются объекты:
•ksDoсument2D (чертеж, фрагмент),
•ksSpcDocument (спецификация),
•ksDocumentTxt (текстовый документ),
•ksDocument3D (документ-модель).
3. В СOM источником событий для подписки на данный интерфейс является указатель на документ.


## BeginSaveDocument - Начало сохранения документа

Синтаксис Automation:
```
BOOL BeginSaveDocument (BSTR docName);
```
Синтаксис COM:
```
BOOL BeginSaveDocument (char * docName);
Входные параметры:
docName    - имя файла документа, с которым он будет сохранен.
Возвращаемое значение:
TRUE    - сохранить документ,
FALSE    - не сохранять документ.
```
Примечание:
1. Индекс события задан в перечислении событий документа....
2. В Automation источником событий для подписки на данный интерфейс являются объекты:
•ksDoсument2D (чертеж, фрагмент),
•ksSpcDocument (спецификация),
•ksDocumentTxt (текстовый документ),
•ksDocument3D (документ-модель).
3. В СOM источником для подписки на данный интерфейс является указатель на документ.


## CloseDocument - Документ закрыт

Синтаксис Automation:
```
BOOL CloseDocument();
```
Синтаксис COM:
```
BOOL CloseDocument();
Возвращаемое значение:
- не используется.
```
Примечание:
1. Индекс события задан в перечислении событий документа....
2. В Automation источником событий для подписки на данный интерфейс являются объекты:
•ksDoсument2D (чертеж, фрагмент),
•ksSpcDocument (спецификация),
•ksDocumentTxt (текстовый документ),
•ksDocument3D (документ-модель).
3. В СOM источником для подписки на данный интерфейс является указатель на документ.
4. При обработке данного события необходимо отписаться от всех событий, связанных с закрываемым документом. Библиотека должна сама следить за отпиской событий.


## Deactivate - Документ деактивирован

Синтаксис Automation:
```
BOOL Deactivate();
```
Синтаксис COM:
```
BOOL Deactivate();
Возвращаемое значение:
- не используется.
```
Примечание:
1. Индекс события задан в перечислении событий документа....
2. В Automation источником событий для подписки на данный интерфейс являются объекты:
•ksDoсument2D (чертеж, фрагмент),
•ksSpcDocument (спецификация),
•ksDocumentTxt (текстовый документ),
•ksDocument3D (документ-модель).
В СOM источником для подписки на данный интерфейс является указатель на документ.


## DocumentFrameOpen - Окно документа открылось

Интерфейс..
Синтаксис Automation:
```
BOOL DocumentFrameOpen (LPDISPATCH v);
```
Синтаксис COM:
```
BOOL DocumentFrameOpen (LPUNKNOWN v);
Входные параметры:
v    - указатель на интерфейс IDocumentFrame открытого окна документа.
Возвращаемое значение:
- не используется.
```
Примечание:
Индекс события задан в перечислении событий ksDocumentFileNotifyEnum.


## EndProcess - Завершение процесса

Синтаксис Automation:
```
BOOL EndProcess(long Id, BOOL Success);
```
Синтаксис COM:
```
BOOL EndProcess(long Id, BOOL Success);
```


## ProcessActivate - Процесс активизирован

Синтаксис Automation:
```
BOOL ProcessActivate (long Id);
```
Синтаксис COM:
```
BOOL ProcessActivate (long Id);
Входные параметры:
Id    - идентификатор активизируемого процесса из перечисления Типы процессов в КОМПАС 3D ProcessTypeEnum.
Возвращаемое значение:
- Не используется.
```
Примечание:
Индекс события задан в перечислении событий окна документа ksDocumentFileNotifyEnum.


## ProcessDeactivate - Процесс деактивирован

Синтаксис Automation:
```
BOOL ProcessDeactivate (long Id);
```
Синтаксис COM:
```
BOOL ProcessDeactivate (long Id);
Входные параметры:
Id    Идентификатор деактивируемого процесса из перечисления Типы процессов в КОМПАС 3D ProcessTypeEnum,
х,у    - координаты в экранных пикселях.
Возвращаемое значение:
- Не используется.
```
Примечание:
Индекс события задан в перечислении событий ksDocumentFileNotifyEnum.


## SaveDocument - Документ сохранен

Синтаксис Automation:
```
BOOL SaveDocument();
```
Синтаксис COM:
```
BOOL SaveDocument();
Возвращаемое значение:
- не используется.
```
Примечание:
1. Индекс события задан в перечислении событий документа....
2. В Automation источником событий для подписки на данный интерфейс являются объекты:
•ksDoсument2D (чертеж, фрагмент),
•ksSpcDocument (спецификация),
•ksDocumentTxt (текстовый документ),
•ksDocument3D (документ-модель).
3. В СOM источником для подписки на данный интерфейс является указатель на документ.
