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

*API интерфейсов. Версия 7 > Документ  > Хранилища  > Интерфейс IUserDataStorage *


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

Интерфейс коллекции пользовательских хранилищ.
Иерархия:
IKompasAPIObject
IKompasCollection
IUserDataStorages
Описание:
Коллекция привязана к одному объекту в документе или непосредственно к документу (объект NULL).
Элементы коллекции – хранилища представляют собой «именованные закладки», каждая из которых содержит данные различных типов в табличной форме.
Примечание:
Интерфейс можно получить у Менеджера хранилищ, используя метод IUserDataStoragesMng::Item.


## Add - Создать новое хранилище и добавить его в коллекцию

Синтаксис Automation:
```
LPDISPATCH Add( LPCTSTR storageName );
```
Синтаксис COM:
```
HRESULT Add( [in] BSTR StorageName,
[out, retval] IUserDataStorage ** Result );
Входные параметры:
storageName    - имя создаваемого хранилища.
```


## Delete - Удалить хранилище из коллекции по имени или по индексу

Синтаксис Automation:
```
BOOL Delete ( LPCTSTR password, const VARIANT index );
```
Синтаксис COM:
```
HRESULT Delete( [in] BSTR password,
[in] VARIANT Index,
[out, retval] VARIANT_BOOL* PVal );
Входные параметры:
Index    - индекс или имя хранилища,
password    - пароль на хранилище.
Возвращаемое значение:
TRUE    - в случае успеха,
FALSE    - в случае неудачи.
```
Примечание:
1. В качестве индекса можно задать число или имя хранилища (VT_BSTR).
2. Если хранилище защищено паролем, то метод работает только в случае указания правильного пароля.


## Item - Хранилище, заданное по имени или по индексу

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