---
title: "Интерфейсы событий графического документа ksDocument2DNotify/ IDocument2DNotify"
type: interface
api: [api5]
domain: [2d]
tags: [interface, api5, 2d, ksdocument2dnotify]
sources:
  - ksdocument2dnotify.html
---

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


## Интерфейсы событий графического документа ksDocument2DNotify/ IDocument2DNotify

| ksDocument2DNotify | - интерфейс Automation |
| --- | --- |
| IDocument2Dnotify | - интерфейс COM |
Интерфейс позволяет контролировать редактирование графического документа.
В Automation источник событий для подписки Document2DNotify можно получить при помощи метода ksDocument2D::GetDocument2DNotify.
В COM источником для подписки является графический документ.


## BeginChoiceMaterial - Начало выбора материала

Синтаксис Automation:
```
BOOL BeginChoiceMaterial();
```
Синтаксис COM:
```
BOOL BeginChoiceMaterial();
Возвращаемое значение:
TRUE    - выбрать материал,
FALSE    - выбор материала запрещен.
```
Примечание:
1. Индекс метода задан в перечислении событий графического документа...
2. Для вызова события необходимо в команде Расчет МЦХ тел вращения в диалоге Свойства объекта нажать кнопку Выбрать из справочника.


## BeginChoiceProperty - Начало выбора свойства

Синтаксис Automation:
```
BOOL BeginChoiceProperty();
```
Синтаксис COM:
```
BOOL BeginChoiceProperty();
Возвращаемое значение:
TRUE    - выбрать свойство,
FALSE    - выбор свойства запрещен.
```
Примечание:
Индекс метода задан в перечислении событий графического документа...


## BeginDeleteProperty - Начало удаления значения свойства

Синтаксис Automation:
```
BOOL DeleteProperty( long objRef, double propID );
```
Синтаксис COM:
```
BOOL DeleteProperty( long objRef, double propID );
Входные параметры:
objRef    - указатель на объект или группу объектов,
propID    - идентификатор свойства.
Возвращаемое значение:
- Не используется.
Версия КОМПАС v22
```


## BeginInsertFragment - Начало вставки фрагмента (до диалога выбора имени)

Синтаксис Automation:
```
BOOL BeginInsertFragment();
```
Синтаксис COM:
```
BOOL BeginInsertFragment();
Возвращаемое значение:
TRUE    - вставить фрагмент,
FALSE    - вставка фрагмента запрещена.
```
Примечание:
Индекс метода задан в перечислении событий графического документа...


## BeginRebuild - Начало перестроения ассоциативного чертежа

Синтаксис Automation:
```
BOOL BeginRebuild();
```
Синтаксис COM:
```
BOOL BeginRebuild();
Возвращаемое значение:
TRUE    - перестроить чертеж,
FALSE    - перестройка чертежа запрещена.
```
Примечание:
Индекс метода задан в перечислении событий графического документа...


## СhoiceMaterial - Закончен выбор материала

Синтаксис Automation:
```
BOOL СhoiceMaterial (BSTR material, double density);
```
Синтаксис COM:
```
BOOL СhoiceMaterial(char * material, double density);
Возвращаемое значение:
- не используется.
```
Примечание:
Индекс метода задан в перечислении событий графического документа...
Для вызова события необходимо в команде в диалоге Свойства объекта, который появляется на экране после вызова команды Расчет МЦХ тел вращения, нажать кнопку Выбрать из справочника.


## ChoiceProperty - Закончен выбор свойства

Синтаксис Automation:
```
BOOL ChoiceProperty(long objRef, double propID);
```
Синтаксис COM:
```
BOOL СhoiceProperty(long objRef, double propID);
Возвращаемое значение:
- не используется.
```
Примечание:
Индекс метода задан в перечислении событий графического документа...


## IsNotIifyProcess - Ограничение обрабатываемых событий

Синтаксис Automation:
```
Не используется.
```
Синтаксис COM:
```
BOOL IsNotifyProcess (int notifyType);
Входной параметр:
notifyType    - номер события в перечислении событий.
Возвращаемое значение:
TRUE    - событие будет обрабатываться,
FALSE    - событие обрабатываться не будет.
```
Примечание:
В COM перед любым вызовом события система сделает запрос о возможности его обработки с использованием данного метода. Библиотека сама может ограничивать обрабатываемые события.


## LocalFragmentEdit - Редактирование локального фрагмента

Синтаксис Automation:
```
BOOL LocalFragmentEdit (LPDISPATCH newDoc, BOOL newFrw);
```
Синтаксис COM:
```
BOOL LocalFragmentEdit (long newDoc, BOOL newFrw);
Входные параметры:
newDoc    - указатель на интерфейс документа, в котором создаётся локальный фрагмент,
newFrw    - TRUE - при создании нового фрагмента, - FALSE – при редактировании.
Возвращаемое значение:
- не используется.
```
Примечание:
Индекс метода задан в перечислении событий графического документа...


## Rebuild - Ассоциативный чертеж перестроен

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