---
title: "Интерфейс IAttachedDocuments"
type: interface
api: [api7]
tags: [interface, api7, iattacheddocuments]
sources:
  - iattacheddocuments.html
---

*API интерфейсов. Версия 7 > Работа со спецификацией *


## Интерфейс IAttachedDocuments

Интерфейс коллекции документов, присоединенных к объекту спецификации.
Иерархия:
IKompasAPIObject
IKompasCollection
IAttachedDocuments
Описание:
Объект спецификации можно связать с документами КОМПАС-3D. Эта связь является двусторонней и ассоциативной и позволяет передавать данные об объекте спецификации в подключенный документ или наоборот, данные из документа в соответствующий ему объект спецификации. Если к объекту спецификации подключено несколько документов, то в объект передаются данные из первого подключенного документа. Если отредактировать подключенную к объекту модель или данные в основной надписи подключенного документа, а также изменить его формат, то при сохранении этого документа будет выдан запрос на подтверждение передачи данных в спецификацию. После изменения наименования или обозначения объекта в документе-спецификации новые данные могут быть переданы в основную надпись подключенного документа.
Примечание:
1. Управляет массивом интерфейсов IAttachedDocument.
2. Данный интерфейс можно получить у интерфейса объекта спецификации ISpecificationObject с помощью свойства ISpecificationObject::AttachedDocuments.


## Add - Добавить новый документ к объекту спецификации и в коллекцию

Синтаксис Automation:
```
LPDISPATCH Add( BSTR Name, BOOL transmit );
```
Синтаксис COM:
```
HRESULT Add ( [in] BSTR Name,
[in] BOOL transmit,
[out, retval] IAttachedDocument** Result );
Входные параметры:
Name    - полное имя файла присоединяемого документа,
transmit    - передавать изменения в документ.
Возвращаемое значение:
- указатель на интерфейс IAttachedDocument присоединенного документа.
```
Примечание:
1. После вызова метода Add документ будет добавлен в коллекцию.
2. Для удаления документа из коллекции используется метод IAttachedDocument::Delete
3. После добавления нужных документов вызвать метод ISpecificationObject::Update.
4. В результате подключения документа в соответствующие колонки объекта спецификации автоматически будут переданы наименование и обозначение из модели или основной надписи чертежа, а также обозначение формата, на котором выполнен подключенный чертеж.
5. Информация из подключенного документа может передаваться не только в колонки бланка спецификации, но и в дополнительные колонки. Например, в дополнительную колонку объекта может быть автоматически передана масса детали из модели или из соответствующей графы основной надписи.


## AddDocument - Добавляет новый документ к объекту спецификации и в коллекцию

Синтаксис Automation:
```
LPDISPATCH AddDocument( BSTR Name, BOOL Transmit, BOOL FillText, BSTR
```
Синтаксис COM:
```
HRESULT AddDocument( BSTR Name, BOOL Transmit, BOOL FillText, BSTR
** Result);
Возвращаемое значение:
- указатель на интерфейс IAttachedDocument присоединенного документа.
Входные параметры:
Name    - полное имя присоединяемого документа,
Transmit    - передавать изменения в документ,
FillText    - взять данные из документа в объект спецификации,
EmbodimentMarking    - имя подключаемого исполнения.
```


## Item - Присоединенный документ, заданный по индексу

Тип данных: указатель на интерфейс IAttachedDocument присоединенного документа
Синтаксис Automation:
```
ColumnItem = iObject.Item( Index )    Получить свойство (* )
ColumnItem = iObject.GetItem( Index )    Получить свойство (**)
```
Синтаксис COM:
```
iObject->get_Item( Index, &ColumnItem )    Получить свойство
```
Примечание:
Свойство доступно только для чтения.
