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

21 KiB

title, type, api, tags, sources
title type api tags sources
Интерфейс IProductDataManager interface
api7
interface
api7
iproductdatamanager
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