Files
kompas3d-mcp/docs/Kompas3D_SDK/interfaces/iproductdatamanager.md
T
mikhail e1337e4016 feat(sdk-docs): MD-база знаний SDK — в репозиторий; генератор и зеркало убраны
docs/Kompas3D_SDK/ становится каноническим источником справки КОМПАС SDK
и включается в репозиторий (2491 файл, ~14 МБ). HTML-зеркало
docs/KOMPAS_SDK_ru-RU/ (~1.4 ГБ, © АСКОН) и генератор
tools/build_kompas3d_sdk.py больше не нужны — регенерация не предполагается.

- .gitignore: MD-база разблокирована; зеркало остаётся проигнорированным
  (safety-net на случай повторной локальной выгрузки).
- CLAUDE.md / SKILL.md: убраны упоминания регенерации и зеркала.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-26 20:00:05 +03:00

471 lines
21 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
---
title: "Интерфейс IProductDataManager"
type: interface
api: [api7]
tags: [interface, api7, iproductdatamanager]
sources:
- iproductdatamanager.html
---
*API интерфейсов. Версия 7 > Дерево СЧИ *
## Интерфейс IProductDataManager
Менеджер Дерева СЧИ.
Иерархия:
IDispatch
IProductDataManager
Интерфейс является дополнительным к интерфейсу IKompasDocument. Данный интерфейс можно получить посредством вызова метода IUnknown::QueryInterface (const GUID far& iid, void** pif).
КОМПАС версия v18
## AddProductObject - Добавить объект дерева СЧИ по идентификатору
Синтаксис Automation:
```
LPDISPATCH AddProductObject( IPropertyKeeper * Parent, BSTR Name, ksProductObjectTypeEnum ObjectType );
```
Синтаксис COM:
```
HRESULT AddProductObject( IPropertyKeeper * Parent, BSTR Name, ksProductObjectTypeEnum ObjectType, IPropertyKeeper * * Result );
Возвращаемое значение:
TRUE - в случае успешного завершения.
Входные параметры:
Parent - владелец информационного объекта,
Name - имя объекта,
ObjectType - тип объекта.
```
Примечание:
В зависимости от типа информационного объекта выбирается владелец объекта. Например, для вставок моделей и тел владелец - исполнение.
## AddReferenceData - Добавить справочные данные
Синтаксис Automation:
```
BSTR AddReferenceData( BSTR ReferenceDataType, BSTR ReferenceDataInfo );
```
Синтаксис COM:
```
HRESULT AddReferenceData( BSTR ReferenceDataType, BSTR ReferenceDataInfo, BSTR * Result );
Возвращаемое значение:
- идентификатор справочных данных.
Входные параметры:
ReferenceDataType - тип справочных данных,
ReferenceDataInfo - заголовок справочных данных.
```
## ChildObjects - Список подчиненных объектов в исполнении
Тип данных: VARIANT
Синтаксис Automation:
```
ChildObjects = Object.ChildObjects( EmbodimentObject ) Получить свойство (* )
ChildObjects = Object.GetChildObjects( EmbodimentObject ) Получить свойство (**)
```
Синтаксис COM:
```
Object.get_ChildObjects( EmbodimentObject, &ChildObjects ) Получить свойство
```
Примечание:
Свойство доступно только для чтения.
КOMPAS v24
## DeleteProductObject - Удалить объект из дерева СЧИ по идентификатору
Синтаксис Automation:
```
BOOL DeleteProductObject( BSTR UniqueMetaObjectKey );
```
Синтаксис COM:
```
HRESULT DeleteProductObject( BSTR UniqueMetaObjectKey, BOOL * Result );
Возвращаемое значение:
TRUE - в случае успешного завершения.
Входные параметры:
UniqueMetaObjectKey - идентификатор объекта СЧИ.
```
## DeleteReferenceData - Удалить справочные данные
Синтаксис Automation:
```
BOOL DeleteReferenceData( BSTR ReferenceDataType, BSTR ReferenceDataId );
```
Синтаксис COM:
```
HRESULT DeleteReferenceData( BSTR ReferenceDataType, BSTR ReferenceDataId, BOOL * Result );
Возвращаемое значение:
TRUE - в случае успешного завершения.
Входные параметры:
ReferenceDataType - тип справочных данных,
ReferenceDataId - идентификатор справочных данных.
```
## FindProductObjectByGeometry - Найти объект дерева СЧИ по геометрии
Синтаксис Automation:
```
LPDISPATCH FindProductObjectByGeometry( IKompasAPIObject * Geometry );
```
Синтаксис COM:
```
HRESULT FindProductObjectByGeometry( IKompasAPIObject * Geometry, IPropertyKeeper * * Result );
Возвращаемое значение:
- Указатель на интерфейс IPropertyKeeper.
Входные параметры:
Geometry - указатель на объект.
Версия КОМПАС v22
```
## Geometry - Геометрия, подключенная к информационному объекту
Тип данных: VARIANT
Синтаксис Automation:
```
Geometry = Object.Geometry( PropObject ) Получить свойство (* )
Object.Geometry( PropObject ) = Geometry Установить свойство (* )
Geometry = Object.GetGeometry( PropObject ) Получить свойство (**)
Object.SetGeometry( PropObject, Geometry ) Установить свойство (**)
```
Синтаксис COM:
```
Object.get_Geometry( PropObject, &Geometry ) Получить свойство
Object.put_Geometry( PropObject, Geometry ) Установить свойство
Входные параметры:
IPropertyKeeper * PropObject - указатель на объект СЧИ.
```
Примечание:
Свойство возвращает переменную типа VARIANT на безопасный массив SAFEARRAY (VT_ARRAY | VT_DISPATCH).
## GetObjectLinkPropertyValue - Получить значение свойства в исполнении
Синтаксис Automation:
```
BOOL GetObjectLinkPropertyValue( IPropertyKeeper * PropObject, IPropertyKeeper * EmbodimentObject, BSTR PropertyPath, VARIANT * Value, BOOL * FromSource );
```
Синтаксис COM:
```
HRESULT GetObjectLinkPropertyValue( IPropertyKeeper * PropObject, IPropertyKeeper * EmbodimentObject, BSTR PropertyPath, VARIANT * Value, BOOL * FromSource, BOOL * Result );
Возвращаемое значение:
TRUE - в случае успешного завершения,
FALSE - в случае неудачи.
Входные параметры:
PropObject - указатель на объект СЧИ IPropertyKeeper,
EmbodimentObject - указатель на объект исполнения в СЧИ IPropertyKeeper,
PropertyPath - строковый идентификатор свойства.
Выходные параметры:
Value - значение свойства,
FromSource - значение было получено из источника.
Версия КОМПАС v23
```
## GetObjectPropertyValue - Получить значение свойства по строковому идентификатору в метаданных
Синтаксис Automation:
```
BOOL GetObjectPropertyValue( IPropertyKeeper * PropObject, BSTR PropertyPath, VARIANT * Value, BOOL * FromSource );
```
Синтаксис COM:
```
HRESULT GetObjectPropertyValue( IPropertyKeeper * PropObject, BSTR PropertyPath, VARIANT * Value, BOOL * FromSource, BOOL * Result );
Возвращаемое значение:
TRUE - в случае успешного завершения,
FALSE - в случае неудачи.
Входные параметры:
PropObject - указатель на объект СЧИ IPropertyKeeper,
PropertyPath - строковый идентификатор свойства.
Выходные параметры:
Value - значение свойства,
FromSource - значение было получено из источника.
Версия КОМПАС v23
```
## MetaProductInfo - Метаданные дерева СЧИ
Тип данных: BSTR
Синтаксис Automation:
```
MetaProductInfo = Object.MetaProductInfo Получить свойство (* )
Object.MetaProductInfo = MetaProductInfo Установить свойство (* )
MetaProductInfo = Object.GetMetaProductInfo() Получить свойство (**)
Object.SetMetaProductInfo( MetaProductInfo ) Установить свойство (**)
```
Синтаксис COM:
```
Object.get_MetaProductInfo( &MetaProductInfo ) Получить свойство
Object.put_MetaProductInfo( MetaProductInfo ) Установить свойство
```
## ObjectAttachedDocuments - Список подключенных к объекту документов
Тип данных: VARIANT
Синтаксис Automation:
```
ObjectAttachedDocuments = Object.ObjectAttachedDocuments( PropObject ) Получить свойство (* )
Object.ObjectAttachedDocuments( PropObject ) = ObjectAttachedDocuments Установить свойство (* )
ObjectAttachedDocuments = Object.GetObjectAttachedDocuments( PropObject ) Получить свойство (**)
Object.SetObjectAttachedDocuments( PropObject, ObjectAttachedDocuments ) Установить свойство (**)
```
Синтаксис COM:
```
Object.get_ObjectAttachedDocuments( PropObject, &ObjectAttachedDocuments ) Получить свойство
Object.put_ObjectAttachedDocuments( PropObject, ObjectAttachedDocuments ) Установить свойство
Входные параметры:
IPropertyKeeper * PropObject - указатель на объект СЧИ.
```
Примечание:
Свойство возвращает переменную типа VARIANT на безопасный массив имен файлов, связанных с объектом СЧИ SAFEARRAY (VT_ARRAY | VT_BSTR).
## ObjectAttribute - Значение атрибута объекта дерева СЧИ
Тип данных: VARIANT
Синтаксис Automation:
```
ObjectAttribute = Object.ObjectAttribute( PropObject, PropertyPath, Attribute ) Получить свойство (* )
ObjectAttribute = Object.GetObjectAttribute( PropObject, PropertyPath, Attribute ) Получить свойство (**)
```
Синтаксис COM:
```
Object.get_ObjectAttribute( PropObject, PropertyPath, Attribute, &ObjectAttribute ) Получить свойство
Возвращаемое значение:
- Значение атрибута.
Входные параметры:
PropObject - указатель на объект СЧИ IPropertyKeeper
PropertyPath - cтроковый идентификатор свойства,
Attribute - cтроковый идентификатор атрибута.
```
Примечание:
Свойство доступно только для чтения.
Версия Компас v23
## ObjectEmbodiments - Список исполнений, в которые входит объект
Тип данных: VARIANT
Синтаксис Automation:
```
ObjectEmbodiments = Object.ObjectEmbodiments( PropObject ) Получить свойство (* )
ObjectEmbodiments = Object.GetObjectEmbodiments( PropObject ) Получить свойство (**)
```
Синтаксис COM:
```
Object.get_ObjectEmbodiments( PropObject, &ObjectEmbodiments ) Получить свойство
Возвращаемое значение:
- Массив VT_ARRAY VT_BSTR идентификаторов объектов исполнений в СЧИ.
Входные параметры:
PropObject - указатель на объект СЧИ IPropertyKeeper.
```
Примечание:
Свойство доступно только для чтения.
Версия Компас v23
## ObjectLinkAttribute - Значение атрибута объекта дерева СЧИ в заданном исполнении
Тип данных: VARIANT
Синтаксис Automation:
```
ObjectLinkAttribute = Object.ObjectLinkAttribute( PropObject, EmbodimentObject, PropertyPath, Attribute ) Получить свойство (* )
ObjectLinkAttribute = Object.GetObjectLinkAttribute( PropObject, EmbodimentObject, PropertyPath, Attribute ) Получить свойство (**)
```
Синтаксис COM:
```
Object.get_ObjectLinkAttribute( PropObject, EmbodimentObject, PropertyPath, Attribute, &ObjectLinkAttribute ) Получить свойство
Возвращаемое значение:
- Значение атрибута.
Входные параметры:
PropObject - указатель на объект СЧИ IPropertyKeeper,
EmbodimentObject - указатель на объект исполнения в СЧИ IPropertyKeeper,
PropertyPath - cтроковый идентификатор свойства,
Attribute - cтроковый идентификатор атрибута.
```
Примечание:
Свойство доступно только для чтения.
Версия Компас v23
## ObjectMetaProductInfo - Метаданные объекта дерева СЧИ
Тип данных: BSTR
Синтаксис Automation:
```
ObjectMetaProductInfo = Object.ObjectMetaProductInfo( PropObject ) Получить свойство (* )
Object.ObjectMetaProductInfo( PropObject ) = ObjectMetaProductInfo Установить свойство (* )
ObjectMetaProductInfo = Object.GetObjectMetaProductInfo( PropObject ) Получить свойство (**)
Object.SetObjectMetaProductInfo( PropObject, ObjectMetaProductInfo ) Установить свойство (**)
```
Синтаксис COM:
```
Object.get_ObjectMetaProductInfo( PropObject, &ObjectMetaProductInfo ) Получить свойство
Object.put_ObjectMetaProductInfo( PropObject, ObjectMetaProductInfo ) Установить свойство
Входные параметры:
IPropertyKeeper * PropObject - указатель на объект СЧИ.
```
## ObjectSpcUsed - Признаки использования в спецификации
Тип данных: BOOL
Синтаксис Automation:
```
ObjectSpcUsed = Object.ObjectSpcUsed( PropObject, SpcUsed ) Получить свойство (* )
Object.ObjectSpcUsed( PropObject, SpcUsed ) = ObjectSpcUsed Установить свойство (* )
ObjectSpcUsed = Object.GetObjectSpcUsed( PropObject, SpcUsed ) Получить свойство (**)
Object.SetObjectSpcUsed( PropObject, SpcUsed, ObjectSpcUsed ) Установить свойство (**)
```
Синтаксис COM:
```
Object.get_ObjectSpcUsed( PropObject, SpcUsed, &ObjectSpcUsed ) Получить свойство
Object.put_ObjectSpcUsed( PropObject, SpcUsed, ObjectSpcUsed ) Установить свойство
Входные параметры:
PropObject - указатель на объект СЧИ IPropertyKeeper
SpcUsed - признаки использования в спецификации из перечисления ksSpcUsedTypeEnum.
```
Примечание:
Свойство доступно только для чтения.
Версия Компас v23
## ProductObject - Получить объект дерева СЧИ по идентификатору
Тип данных: Указатель на интерфейс IPropertyKeeper
Синтаксис Automation:
```
ProductObject = Object.ProductObject( UniqueMetaObjectKey ) Получить свойство (* )
ProductObject = Object.GetProductObject( UniqueMetaObjectKey ) Получить свойство (**)
```
Синтаксис COM:
```
Object.get_ProductObject( UniqueMetaObjectKey, &ProductObject ) Получить свойство
Входные параметры:
BSTR UniqueMetaObjectKey - уникальный идентификатор объекта.
```
Примечание:
Свойство доступно только для чтения.
## ProductObjects - Получить массив объектов дерева СЧИ
Тип данных: VARIANT
Синтаксис Automation:
```
ProductObjects = Object.ProductObjects( Filter ) Получить свойство (* )
ProductObjects = Object.GetProductObjects( Filter ) Получить свойство (**)
```
Синтаксис COM:
```
Object.get_ProductObjects( Filter, &ProductObjects ) Получить свойство
Входные параметры:
long Filter - фильтр по типам объектов.
```
Примечание:
Свойство доступно только для чтения.
Фильтр формируется из комбинации нужных типов объектов из перечисления ksProductObjectTypeEnum.
## ReferenceData - Справочные данные свойств
Тип данных: BSTR
Синтаксис Automation:
```
ReferenceData = Object.ReferenceData Получить свойство (* )
Object.ReferenceData = ReferenceData Установить свойство (* )
ReferenceData = Object.GetReferenceData() Получить свойство (**)
Object.SetReferenceData( ReferenceData ) Установить свойство (**)
```
Синтаксис COM:
```
Object.get_ReferenceData( &ReferenceData ) Получить свойство
Object.put_ReferenceData( ReferenceData ) Установить свойство
```
## ReferenceDataIds - Идентификаторы справочных данных
Тип данных: VARIANT
Синтаксис Automation:
```
ReferenceDataIds = Object.ReferenceDataIds( ReferenceDataType ) Получить свойство (* )
ReferenceDataIds = Object.GetReferenceDataIds( ReferenceDataType ) Получить свойство (**)
```
Синтаксис COM:
```
Object.get_ReferenceDataIds( ReferenceDataType, &ReferenceDataIds ) Получить свойство
```
Примечание:
Свойство доступно только для чтения.
Свойство возвращает переменную типа VARIANT на безопасный массив идентификаторов справочных данных SAFEARRAY (VT_ARRAY | VT_BSTR).
## ReferenceDataInfo - Справочные данные свойства
Тип данных: BSTR
Синтаксис Automation:
```
ReferenceDataInfo = Object.ReferenceDataInfo( ReferenceDataType, ReferenceDataId ) Получить свойство (* )
Object.ReferenceDataInfo( ReferenceDataType, ReferenceDataId ) = ReferenceDataInfo Установить свойство (* )
ReferenceDataInfo = Object.GetReferenceDataInfo( ReferenceDataType, ReferenceDataId ) Получить свойство (**)
Object.SetReferenceDataInfo( ReferenceDataType, ReferenceDataId, ReferenceDataInfo ) Установить свойство (**)
```
Синтаксис COM:
```
Object.get_ReferenceDataInfo( ReferenceDataType, ReferenceDataId, &ReferenceDataInfo ) Получить свойство
Object.put_ReferenceDataInfo( ReferenceDataType, ReferenceDataId, ReferenceDataInfo ) Установить свойство
Входные параметры:
BSTR ReferenceDataType - тип справочных данных,
BSTR ReferenceDataId - идентификатор справочных данных.
```
## SetObjectLinkPropertyValue - Установить значение свойства в исполнении
Синтаксис Automation:
```
BOOL SetObjectLinkPropertyValue( IPropertyKeeper * PropObject, IPropertyKeeper * EmbodimentObject, BSTR PropertyPath, VARIANT Value );
```
Синтаксис COM:
```
HRESULT SetObjectLinkPropertyValue( IPropertyKeeper * PropObject, IPropertyKeeper * EmbodimentObject, BSTR PropertyPath, VARIANT Value, BOOL * Result );
Возвращаемое значение:
TRUE - в случае успешного завершения,
FALSE - в случае неудачи.
Входные параметры:
PropObject - указатель на объект СЧИ IPropertyKeeper,
EmbodimentObject - указатель на объект исполнения в СЧИ IPropertyKeeper,
PropertyPath - строковый идентификатор свойства,
Value - значение свойства.
Версия КОМПАС v23
```
## SetObjectPropertyValue - Установить значение свойства по строковому идентификатору в метаданных
Синтаксис Automation:
```
BOOL SetObjectPropertyValue( IPropertyKeeper * PropObject, BSTR PropertyPath, VARIANT Value );
```
Синтаксис COM:
```
HRESULT SetObjectPropertyValue( IPropertyKeeper * PropObject, BSTR PropertyPath, VARIANT Value, BOOL * Result );
Возвращаемое значение:
TRUE - в случае успешного завершения,
FALSE - в случае неудачи.
Входные параметры:
PropObject - указатель на объект СЧИ IPropertyKeeper,
PropertyPath - строковый идентификатор свойства,
Value - значение свойства.
Версия КОМПАС v23
```