Files
kompas3d-mcp/docs/Kompas3D_SDK/interfaces/iuserdatastoragesmng.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

96 lines
4.3 KiB
Markdown
Raw Blame History

This file contains invisible Unicode characters
This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
---
title: "Интерфейс IUserDataStoragesMng"
type: interface
api: [api7]
tags: [interface, api7, iuserdatastoragesmng]
sources:
- iuserdatastoragesmng.html
---
*API интерфейсов. Версия 7 > Документ  > Хранилища  > Интерфейс IUserDataStorage *
## Интерфейс IUserDataStoragesMng
Интерфейс Менеджера пользовательских хранилищ.
Иерархия:
IKompasAPIObject
IKompasCollection
IUserDataStoragesMng
Описание:
Объект документа или непосредственно документ (объект NULL) может быть связан с коллекцией хранилищ. Каждое хранилище представляет собой структурированный набор данных простых типов (Variant) или также указателей на объекты документа. Менеджер пользовательских хранилищ позволяет управлять пользовательскими хранилищами объектов и их коллекциями. Хранилище может быть использовано для графических документов и документов–моделей.
Примечание:
Интерфейс можно получить у документа, используя метод IKompasDocument::UserDataStoragesMng.
## Add - Создать новое хранилища по объекту и добавить его в коллекцию
Синтаксис Automation:
```
LPDISPATCH Add( LPDISPATCH Object );
```
Синтаксис COM:
```
HRESULT Add( [in] IKompasAPIObject* Object,
[out, retval] IUserDataStorages ** Result );
Входные параметры:
Object - Указатель на интерфейс объекта IKompasAPIObject.
Выходные параметры:
- Указатель на интерфейс коллекции объектов хранилища IUserDataStorages.
```
Примечание:
1. Метод позволяет добавить массив хранилищ по объекту в коллекцию. Если объект NULL, то хранилище добавляется к документу.
2. Если в коллекции было создано хранилище по выбранному объекту, то метод сработает как GetItem.
## Clear - Очистить менеджер от всех коллекций
Синтаксис Automation:
```
BOOL Clear();
```
Синтаксис COM:
```
HRESULT Clear( [out, retval] VARIANT_BOOL* pVal );
Возвращаемое значение:
TRUE - в случае успеха,
FALSE - в случае неудачи.
```
## Delete - Удалить коллекцию по ссылке на объект или по индексу
Синтаксис Automation:
```
BOOL Delete (const VARIANT & index );
```
Синтаксис COM:
```
HRESULT Delete( [in] VARIANT Index,
[out, retval] VARIANT_BOOL* pVal );
Входные параметры:
Index - Индекс или указатель на интерфейс коллекции объектов хранилища IUserDataStorages.
Возвращаемое значение:
TRUE - в случае успеха,
FALSE - в случае неудачи.
```
Примечание:
В качестве индекса можно задать число или объект, к которому привязано хранилище (тип VT_DISPATCH)
## Item - Объект, заданный по ссылке на объект или по индексу
Тип данных: указатель на интерфейс IUserDataStorages коллекции объектов хранилища.
Синтаксис Automation:
```
StorageObj = iObject.Item (Index) Получить свойство (* )
StorageObj = iObject.GetItem (Index) Получить свойство (**)
```
Синтаксис COM:
```
iObject->get_Item (Index, &StorageObj) Получить свойство
```
Примечание:
1. Свойство доступно только для чтения.
2. В качестве индекса можно задать число или объект, к которому привязано хранилище (тип VT_DISPATCH).