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>
44 KiB
title, type, api, tags, sources
| title | type | api | tags | sources | |||||
|---|---|---|---|---|---|---|---|---|---|
| Интерфейс работы с атрибутами (ksAttributeObject) | interface |
|
|
|
*API интерфейсов. Версия 5 > Интерфейсы работы с атрибутами *
Интерфейс работы с атрибутами (ksAttributeObject)
Интерфейс для работы с атрибутами. Примечание: Указатель на интерфейс можно получить при помощи метода KompasObject::GetAttributeObject. Смотрите также KompasObject
ksAddAttrRow - Добавить строку к табличному атрибуту неопределенной длины
Аналог данного метода при использовании API экспортных функций - ksAddAttrRow. Синтаксис Automation:
long ksAddAttrRow (reference pAttr,
long rowNumb,
LPDISPATCH flagVisible,
LPDISPATCH value,
BSTR password);
Входные параметры:
pAttr - указатель на атрибут,
rowNumb - номер строки,
flagVisible - указатель на интерфейс динамического массива типа LTVARIANT_ARR ksDynamicArray, указывающего флаги видимости ячеек строки,
value - указатель на интерфейс ksUserParam, откуда копируются данные,
password - пароль атрибута.
Возвращаемое значение:
1 - в случае удачного завершения.
Смотрите также ksLtVariant
Примечание.
1. Указатель на атрибут reference pAttr может быть получен следующими способами:
•с помощью интерфейса итератора ksIterator и методов ksIterator::ksCreateAttrIterator, ksIterator::ksMoveAttrIterator,
•с помощью методов создания атрибутов ksAttributeObject::ksCreateAttr или выбора атрибутов ksAttributeObject::ksChoiceAttr.
2. Перед использованием указатель flagVisible должен быть получен от интерфейса KompasObject с помощью метода KompasObject::GetParamStruct с параметром ko_LtVariant, методов интерфейса ksLtVariant, ksDynamicArray.
3. Перед использованием указатель value должен быть получен от интерфейса KompasObject с помощью метода KompasObject::GetParamStruct с параметром ko_UserParam с последующим наполнением массива с помощью методов интерфейса ksUserParam, ksLtVariant, ksDynamicArray.
ksChoiceAttr - Вывести диалог для просмотра атрибутов объекта и выбора нужного атрибута
Аналог данного метода при использовании API экспортных функций - ChoiceAttr. Синтаксис Automation:
long ksChoiceAttr (reference pObj);
Входной параметр:
pObj - указатель на объект, к которому подключены атрибуты.
Возвращаемое значение:
указатель на атрибут - в случае удачного завершения,
0 - в случае неудачи.
Примечание: Указатель на объект reference pObj может быть получен следующими способами: •с помощью свойства reference интерфейса соответствующего объекта, •с помощью интерфейса итератора ksIterator и методов ksIterator::ksCreateIterator, ksIterator::ksMoveIterator.
ksChoiceAttr3D - Просмотреть атрибуты объекта документа-модели
Аналог данного метода при использовании API экспортных функций - ksChoiceAttr3D. Синтаксис Automation:
ksAttribute3D * ksChoiceAttr3D (LPDISPATCH pObj);
Входные параметры:
pObj - указатель на объект.
Возвращаемое значение:
Указатель на интерфейс атрибута ksAttribute3D - в случае удачного завершения,
0 - в случае неудачи.
ksChoiceAttrTypes - Выбрать указанный пользователем в диалоге тип атрибута из библиотеки или документа
Аналог данного метода при использовании API экспортных функций - ChoiceAttrTypes. Синтаксис Automation:
double ksChoiceAttrTypes (BSTR libName);
Входной параметр:
libName - имя библиотеки типов атрибутов, если libname = NULL, то тип атрибута берется из текущего документа.
Возвращаемое значение:
уникальный номер типа атрибута - в случае удачного завершения,
0 - в случае неудачи.
Примечание: Диалог "привязан" к главному окну.
ksCreateAttr - Создать атрибут по номеру типа атрибута
Аналог данного метода при использовании API экспортных функций - ksCreateAttr. Синтаксис Automation:
long ksCreateAttr (reference pObj,
LPDISPATCH attr,
double attrID,
BSTR libName);
Входные параметры:
pObj - указатель на объект (группа, вид, отдельный объект), атрибут которого создается. Если pObj = 0, то создается атрибут документа,
attr - указатель на интерфейс параметров атрибута ksAttributeParam,
attrID - уникальный номер типа атрибута,
libName - имя библиотеки типов атрибутов, если libname = NULL, то тип атрибута берется из текущего документа.
Возвращаемое значение:
указатель на атрибут - в случае удачного завершения,
0 - в случае неудачи.
Примечание.
1. Указатель на объект reference pObj может быть получен следующими способами:
•с помощью свойства reference интерфейса соответствующего объекта,
•с помощью интерфейса итератора ksIterator и методов ksIterator::ksCreateAttrIterator, ksIterator::ksMoveAttrIterator,
2. Параметры атрибута должны быть заданы с помощью метода KompasObject::GetParamStruct с параметром ko_Attribute с последующим наполнением массива с помощью свойств и методов интерфейса ksAttributeParam.
3. Уникальный номер типа атрибута attrID может быть получен от интерфейса ksLibraryAttrTypeParam с помощью свойства ksLibraryAttrTypeParam::typeid. Тип атрибута должен быть предварительно создан, например, с помощью метода ksAttributeObject::ksCreateAttrType.
ksCreateAttr3D - Cоздать атрибут по номеру типа атрибута из библиотеки
Аналог данного метода при использовании API экспортных функций - ksCreateAttr3D. Синтаксис Automation:
ksAttribute3D* ksCreateAttr3D (LPDISPATCH pObj,
LPDISPATCH attr,
double attrID,
BSTR libname);
Входные параметры:
pObj - указатель на объект для которого создается атрибут,
attr - указатель на интерфейс параметров атрибута ksAttributeParam,
attrID - уникальный номер типа атрибута,
libname - имя библиотеки атрибутов если libname = NULL - тип атрибута берется в документе.
Возвращаемое значение:
Указатель на интерфейс атрибута ksAttribute3D - в случае удачного завершения,
0 - в случае неудачи.
Примечание:
- Атрибут можно добавить ко всем объектам дерева построений, кроме компонентов, сопряжений, группы сопряжений.
- Параметры атрибута должны быть заданы с помощью метода KompasObject::GetParamStruct с параметром ko_Attribute с последующим наполнением массива с помощью свойств и методов интерфейса ksAttributeParam.
- Уникальный номер типа атрибута attrID может быть получен от интерфейса ksLibraryAttrTypeParam с помощью свойства ksLibraryAttrTypeParam::typeid. Тип атрибута должен быть предварительно создан, например, с помощью метода ksAttributeObject::ksCreateAttrType.
ksCreateAttr3DEx - Cоздать атрибут по номеру типа атрибута из библиотеки libname
Аналог данного метода при использовании API экспортных функций - ksCreateAttr3DEx. Синтаксис Automation:
ksAttribute3D * ksCreateAttr3DEx (LPDISPATCH pObj,
LPDISPATCH pSourcePart,
LPDISPATCH attr,
double attrID,
BSTR libname);
Входные параметры:
pObj - указатель на объект для которого создается атрибут,
sourcePart - указатель на интерфейс вставки детали IPart,
attr - указатель на структуру параметров атрибута ksAttribute,
attrID - уникальный номер типа атрибута,
libName - имя библиотеки типов атрибутов, если libname = NULL, то тип атрибута берется в документе.
Возвращаемое значение:
Указатель на атрибут IAttribute3D - в случае удачного завершения,
0 - в случае неудачи.
Примечание:
- Если libname = NULL - тип атрибута берется в документе.
- pObj - может быть равен: •NULL или указателю на интерфейс 3d документа IDocument3D - создается атрибут у документа, •указателю на интерфейс коллекции объектов дерева IFeatureCollection - атрибут групповой, •указателю на интерфейс объекта дерева IFeature - атрибут у определенного объекта.
- Атрибут можно добавить ко всем объектам дерева построений, кроме верхнего компонентов, сопряжений, группы сопряжений.
- sourcePart - может быть: •NULL - атрибут будет создан в текущем документе, •указателю на интерфейс детали или подсборки вставленной в сборку IPart - атрибут будет создан в документе-источнике, •если sourcePart == pObj создается атрибут документа в источнике.
ksCreateAttrType - Создать тип атрибута в библиотеке
Аналог данного метода при использовании API экспортных функций - ksCreateAttrType. Синтаксис Automation:
double ksCreateAttrType (LPDISPATCH attrType,
BSTR libName);
Входные параметры:
attrType - указатель на интерфейс параметров типа табличного атрибута ksAttributeTypeParam,
libName - имя библиотеки типов атрибутов, если libname = NULL, то тип атрибута создается в текущем документе.
Возвращаемое значение:
уникальный номер типа атрибута - в случае удачного завершения,
0 - в случае неудачи.
Примечание: Параметры атрибута должны быть заданы с помощью метода KompasObject::GetParamStruct с параметром ko_AttributeType с последующим наполнением массива с помощью свойств и методов интерфейса ksAttributeTypeParam.
ksDeleteAttr - Удалить атрибут
Аналог данного метода при использовании API экспортных функций - DeleteAttr. Синтаксис Automation:
long ksDeleteAttr (reference pObj,
reference pAttr,
BSTR password);
Входные параметры:
pObj - указатель на объект, к которому подключен атрибут. Если pObj = 0 - атрибут текущего документа,
pAttr - указатель на удаляемый атрибут,
password - пароль атрибута.
Возвращаемое значение:
1 - в случае удачного завершения.
Примечание:
- Указатель на объект reference pObj может быть получен следующими способами: •с помощью свойства reference интерфейса соответствующего объекта, •с помощью интерфейса итератора ksIterator и методов ksIterator::ksCreateIterator, ksIterator::ksMoveIterator.
- Указатель на атрибут reference pAttr может быть получен следующими способами: •с помощью интерфейса итератора ksIterator и методов ksIterator::ksCreateAttrIterator, ksIterator::ksMoveAttrIterator, •с помощью методов создания атрибутов ksAttributeObject::ksCreateAttr или выбора атрибутов ksAttributeObject::ksChoiceAttr.
ksDeleteAttr3D - Удалить атрибут объекта 3D документа
Аналог данного метода при использовании API экспортных функций - ksDeleteAttr3D. Синтаксис Automation:
long ksDeleteAttr3D (LPDISPATCH pObj, ksAttribute3D *pAttr, BSTR password);
Входные параметры:
pObj - указатель на объект, у которого удаляется атрибут,
pAttr - указатель на атрибут,
password - пароль.
Возвращаемое значение:
1 - в случае удачного завершения,
0 - в случае неудачи.
ksDeleteAttrRow - Удалить строку табличного атрибута неопределенной длины
Аналог данного метода при использовании API экспортных функций - ksDeleteAttrRow. Синтаксис Automation:
long ksDeleteAttrRow (reference pAttr,
long rowNumb,
BSTR password);
Входные параметры:
pAttr - указатель на атрибут,
rowNumb - номер строки,
password - пароль атрибута.
Возвращаемое значение:
1 - в случае удачного завершения.
Примечание: Указатель на атрибут reference pAttr может быть получен следующими способами: •с помощью интерфейса итератора ksIterator и методов ksIterator::ksCreateAttrIterator, ksIterator::ksMoveAttrIterator, •с помощью методов создания атрибутов ksAttributeObject::ksCreateAttr или выбора атрибутов ksAttributeObject::ksChoiceAttr.
ksDeleteAttrType - Удалить тип атрибута из библиотеки
Аналог данного метода при использовании API экспортных функций - DeleteAttrType. Синтаксис Automation:
long ksDeleteAttrType (double attrID,
BSTR libName,
BSTR password);
Входные параметры:
attrID - уникальный номер типа,
libName - имя библиотеки типов атрибутов, если libname = NULL, то тип атрибута удаляется из текущего документа,
password - пароль типа атрибута.
Возвращаемое значение:
1 - в случае удачного завершения,
0 - в случае неудачи.
Примечание: Уникальный номер типа атрибута attrID может быть получен от интерфейса ksLibraryAttrTypeParam с помощью свойства ksLibraryAttrTypeParam::typeid или с помощью метода ksAttributeObject::ksGetAttrKeysInfo.
ksGetAttrColumnInfo - Получить информацию о столбце атрибута
Аналог данного метода при использовании API экспортных функций - GetAttrColumnInfo. Синтаксис Automation:
long ksGetAttrColumnInfo (reference pAttr,
long columnNumb,
LPDISPATCH columnInfo);
Входные параметры:
pAttr - указатель на атрибут,
columnNumb - номер колонки.
Выходной параметр:
columnInfo - указатель на интерфейс параметров столбца табличного атрибута ksColumnInfoParam.
Возвращаемое значение:
1 - в случае удачного завершения,
0 - в случае неудачи.
Примечание: Указатель на атрибут reference pAttr может быть получен следующими способами: •с помощью интерфейса итератора ksIterator и методов ksIterator::ksCreateAttrIterator, ksIterator::ksMoveAttrIterator, •с помощью методов создания атрибутов ksAttributeObject::ksCreateAttr или выбора атрибутов ksAttributeObject::ksChoiceAttr.
ksGetAttrKeysInfo - Получить информацию о ключах атрибута
Аналог данного метода при использовании API экспортных функций - GetAttrKeysInfo. Синтаксис Automation:
long ksGetAttrKeysInfo (reference pAttr,
long* key1,
long* key2,
long* key3,
long* key4,
double* attrID);
Входной параметр:
pAttr - указатель на атрибут.
Выходные параметры:
key1, key2, key3, key4 - ключи атрибута,
attrID - уникальный номер типа атрибута.
Возвращаемое значение:
1 - в случае удачного завершения,
0 - в случае неудачи.
Примечание: Указатель на атрибут reference pAttr может быть получен следующими способами: •с помощью интерфейса итератора ksIterator и методов ksIterator::ksCreateAttrIterator, ksIterator::ksMoveAttrIterator, •с помощью методов создания атрибутов ksAttributeObject::ksCreateAttr или выбора атрибутов ksAttributeObject::ksChoiceAttr.
ksGetAttrRow - Получить строку атрибута
Аналог данного метода при использовании API экспортных функций - ksGetAttrRow. Синтаксис Automation:
long ksGetAttrRow (reference pAttr,
long rowNumb,
LPDISPATCH flagVisible,
LPDISPATCH columnKeys,
LPDISPATCH value);
Входные параметры:
pAttr - указатель на атрибут,
rowNumb - номер строки.
Выходной параметр:
value - указатель на интерфейс ksUserParam, куда копируются данные.
flagVisible - указатель на интерфейс динамического массива типа LTVARIANT_ARR ksDynamicArray, указывающего флаги видимости ячеек строки,
columnKeys - указатель на интерфейс динамического массива типа LTVARIANT_ARR ksDynamicArray, указывающего ключи строки.
Возвращаемое значение:
1 - в случае удачного завершения.
Смотрите также:ksLtVariant
Примечание:
- Указатель на атрибут reference pAttr может быть получен следующими способами: •с помощью интерфейса итератора ksIterator и методов ksIterator::ksCreateAttrIterator, ksIterator::ksMoveAttrIterator, •с помощью методов создания атрибутов ksAttributeObject::ksCreateAttr или выбора атрибутов ksAttributeObject::ksChoiceAttr.
- Перед использованием указатель flagVisible должен быть получен от интерфейса KompasObject с помощью метода KompasObject::GetParamStruct с параметром ko_LtVariant.
- Перед использованием указатель value должен быть получен от интерфейса KompasObject с помощью метода KompasObject::GetParamStruct с параметром ko_UserParam.
- Для получения размера данных строки атрибута может быть использован метод ksAttributeObject::ksGetSizeAttrRow.
ksGetAttrTabInfo - Получить информацию о количестве строк и столбцов атрибута
Аналог данного метода при использовании API экспортных функций - GetAttrTabInfo. Синтаксис Automation:
long ksGetAttrTabInfo (long pAttr,
long* rowsCount,
long* columnsCount);
Входной параметр:
pAttr - указатель на атрибут.
Выходные параметры:
rowsCount - количество строк атрибута,
columnsCount - количество столбцов атрибута.
Возвращаемое значение:
1 - в случае удачного завершения,
0 - в случае неудачи.
Примечание: Указатель на атрибут reference pAttr может быть получен следующими способами: •с помощью интерфейса итератора ksIterator и методов ksIterator::ksCreateAttrIterator, ksIterator::ksMoveAttrIterator, •с помощью методов создания атрибутов ksAttributeObject::ksCreateAttr или выбора атрибутов ksAttributeObject::ksChoiceAttr.
ksGetAttrType - Получить описание типа табличного атрибута из библиотеки или текущего документа
Аналог данного метода при использовании API экспортных функций - ksGetAttrType. Синтаксис Automation:
long ksGetAttrType (double attrID,
BSTR libName,
LPDISPATCH attrType);
Входной параметр:
attrID - уникальный номер типа атрибута,
libName - имя библиотеки типов атрибутов, если libname = NULL, то тип атрибута из текущего документа.
Выходной параметр:
attrType - указатель на интерфейс параметров типа табличного атрибута ksAttributeTypeParam.
Возвращаемое значение:
1 - в случае удачного завершения,
0 - в случае неудачи.
Примечание:
- Уникальный номер типа атрибута attrID может быть получен от интерфейса ksLibraryAttrTypeParam с помощью свойства ksLibraryAttrTypeParam::typeid или с помощью метода ksAttributeObject::ksGetAttrKeysInfo. Тип атрибута должен быть предварительно создан, например, с помощью метода ksAttributeObject::ksCreateAttrType.
- Перед использованием указатель attrType должен быть получен с помощью метода KompasObject::GetParamStruct с параметром ko_AttributeType.
ksGetAttrValue - Получить значение ячейки из таблицы атрибута
Аналог данного метода при использовании API экспортных функций - ksGetAttrValue. Синтаксис Automation:
long ksGetAttrValue (reference pAttr,
long rowNumb,
long columnNumb,
LPDISPATCH flagVisible,
LPDISPATCH columnKeys,
LPDISPATCH value);
Входные параметры:
pAttr - указатель на атрибут,
rowNumb - номер строки,
columnNumb - номер колонки.
Выходной параметр:
value - указатель на интерфейс ksUserParam, куда копируется значение ячейки,
flagVisible - указатель на интерфейс динамического массива типа LTVARIANT_ARR ksDynamicArray, указывающего флаги видимости ячеек,
columnKeys - указатель на интерфейс динамического массива типа LTVARIANT_ARR ksDynamicArray, указывающего ключи полей колонки.
Возвращаемое значение:
1 - в случае удачного завершения,
0 - в случае неудачи.
Смотрите также:ksLtVariant
Примечание
- Для нетабличного атрибута номер колонки равен нулю.
- Указатель на атрибут reference pAttr может быть получен следующими способами: •с помощью интерфейса итератора ksIterator и методов ksIterator::ksCreateAttrIterator, ksIterator::ksMoveAttrIterator, •с помощью методов создания атрибутов ksAttributeObject::ksCreateAttr или выбора атрибутов ksAttributeObject::ksChoiceAttr.
- Перед использованием указатель flagVisible должен быть получен от интерфейса KompasObject с помощью метода KompasObject::GetParamStruct с параметром ko_LtVariant.
- Перед использованием указатель value должен быть получен от интерфейса KompasObject с помощью метода KompasObject::GetParamStruct с параметром ko_UserParam.
- Для получения размера данных ячейки атрибута может быть использован метод ksAttributeObject::ksGetSizeAttrValue.
ksGetLibraryAttrTypesArray - Получить указатель на динамический массив типов атрибутов типа LIBRARY_ATTR_TYPE_ARR, находящихся в заданной библиотеке типов - ksDynamicArray
Аналог данного метода при использовании API экспортных функций - ksGetLibraryAttrTypesArray. Синтаксис Automation:
LPDISPATCH ksGetLibraryAttrTypesArray (BSTR libName);
Входной параметр:
libName - имя библиотеки типов атрибутов. Если libname = NULL, то типы атрибутов из текущего документа.
Возвращаемое значение:
указатель на интерфейс массива ksDynamicArray типа LIBRARY_ATTR_TYPE_ARR - в случае удачного завершения,
0 - в случае неудачи.
ksGetSizeAttrRow - Получить размер данных строки атрибутов
Аналог данного метода при использовании API экспортных функций - ksGetSizeAttrRow. Синтаксис Automation:
long ksGetSizeAttrRow (reference pAttr,
long* count);
Входной параметр:
pAttr - указатель на атрибут.
Выходной параметр:
count - число ячеек с учетом записей.
Возвращаемое значение:
длина строки атрибута - в случае удачного завершения,
0 - в случае неудачи.
Примечание:
- Указатель на атрибут reference pAttr может быть получен следующими способами: •с помощью интерфейса итератора ksIterator и методов ksIterator::ksCreateAttrIterator, ksIterator::ksMoveAttrIterator, •с помощью методов создания атрибутов ksAttributeObject::ksCreateAttr или выбора атрибутов ksAttributeObject::ksChoiceAttr.
- При использовании данного метода, не использующего Unicode, размер данных строкового типа будет рассчитываться для unicode строк, как для ANSI строк.
ksGetSizeAttrRowW - Получить размер данных строки атрибутов (Unicode)
Аналог данного метода при использовании API экспортных функций - ksGetSizeAttrRowW. Синтаксис Automation:
long ksGetSizeAttrRowW (reference pAttr,
long* count);
Входной параметр:
pAttr - указатель на атрибут.
Выходной параметр:
count - число ячеек с учетом записей.
Возвращаемое значение:
длина строки атрибута - в случае удачного завершения,
0 - в случае неудачи.
Примечание:
- Указатель на атрибут reference pAttr может быть получен следующими способами: •с помощью интерфейса итератора ksIterator и методов ksIterator::ksCreateAttrIterator, ksIterator::ksMoveAttrIterator, •с помощью методов создания атрибутов ksAttributeObject::ksCreateAttr или выбора атрибутов ksAttributeObject::ksChoiceAttr.
- При использовании метода ksAttributeObject::ksGetSizeAttrRow, не использующего Unicode, размер данных строкового типа будет расcчитываться для unicode строк, как для ANSI строк.
ksGetSizeAttrValue - Получить размер данных ячейки
Аналог данного метода при использовании API экспортных функций - ksGetSizeAttrValue Синтаксис Automation:
long ksGetSizeAttrValue (reference pAttr,
long columnNumb,
long* count);
Входные параметры:
pAttr - указатель на атрибут,
columnNumb - номер колонки.
Выходной параметр:
count - число ячеек с учетом записей.
Возвращаемое значение:
длина строки ячейки атрибута - в случае удачного завершения,
0 - в случае неудачи.
Примечание:
- Указатель на атрибут reference pAttr может быть получен следующими способами: •с помощью интерфейса итератора ksIterator и методов ksIterator::ksCreateAttrIterator, ksIterator::ksMoveAttrIterator, •с помощью методов создания атрибутов ksAttributeObject::ksCreateAttr или выбора атрибутов ksAttributeObject::ksChoiceAttr.
- При использовании данного метода, не использующего Unicode, размер данных строкового типа будет расcчитываться для unicode строк, как для ANSI строк.
ksGetSizeAttrValueW - Получить размер данных ячейки (Unicode)
Аналог данного метода при использовании API экспортных функций - ksGetSizeAttrValueW Синтаксис Automation:
long ksGetSizeAttrValueW (reference pAttr,
long columnNumb,
long* count);
Входные параметры:
pAttr - указатель на атрибут,
columnNumb - номер колонки.
Выходной параметр:
Count - число ячеек с учетом записей.
Возвращаемое значение:
длина строки ячейки атрибута - в случае удачного завершения,
0 - в случае неудачи.
Примечание:
- Указатель на атрибут reference pAttr может быть получен следующими способами: •с помощью интерфейса итератора ksIterator и методов ksIterator::ksCreateAttrIterator, ksIterator::ksMoveAttrIterator, •с помощью методов создания атрибутов ksAttributeObject::ksCreateAttr или выбора атрибутов ksAttributeObject::ksChoiceAttr.
- При использовании метода ksAttributeObject::ksGetSizeAttrValue, не использующего Unicode, размер данных строкового типа будет расcчитываться для unicode строк, как для ANSI строк.
ksSetAttrRow - Установить данные строки в таблице атрибута
Аналог данного метода при использовании API экспортных функций - ksSetAttrRow. Синтаксис Automation:
long ksSetAttrRow (reference pAttr,
long rowNumb,
LPDISPATCH flagVisible,
LPDISPATCH сolumnKeys,
LPDISPATCH value,
BSTR password);
Входные параметры:
pAttr - указатель на атрибут,
rowNumb - номер строки,
flagVisible - указатель на интерфейс динамического массива типа LTVARIANT_ARR ksDynamicArray, указывающего флаги видимости ячеек строки,
columnKeys - указатель на интерфейс динамического массива типа LTVARIANT_ARR ksDynamicArray, указывающего ключи строки,
value - указатель на интерфейс ksUserParam, откуда копируются данные,
password - пароль атрибута.
Возвращаемое значение:
1 - в случае удачного завершения.
Смотрите также:ksLtVariant
Примечание:
- Указатель на атрибут reference pAttr может быть получен следующими способами: •с помощью интерфейса итератора ksIterator и методов ksIterator::ksCreateAttrIterator, ksIterator::ksMoveAttrIterator, •с помощью методов создания атрибутов ksAttributeObject::ksCreateAttr или выбора атрибутов ksAttributeObject::ksChoiceAttr.
- Указатель flagVisible может быть получен от интерфейса KompasObject с помощью метода KompasObject::GetParamStruct с параметром ko_LtVariant, методов интерфейса ksLtVariant, ksDynamicArray.
- Указатель value может быть получен от интерфейса KompasObject с помощью метода ompasObject::GetParamStruct с параметром ko_UserParam с последующим наполнением массива с помощью методов интерфейса ksUserParam, ksLtVariant, ksDynamicArray.
ksSetAttrType - Изменить тип атрибута в библиотеке или текущем документе
Аналог данного метода при использовании API экспортных функций - ksSetAttrType. Синтаксис Automation:
double ksSetAttrType (double attrID,
BSTR libName,
LPDISPATCH attrType,
BSTR password);
Входные параметры:
attrID - уникальный номер типа атрибута,
libName - имя библиотеки типов атрибутов, если libname = NULL, то тип атрибута изменяется в текущем документе,
attrType - указатель на интерфейс параметров типа табличного атрибута ksAttributeTypeParam,
password - пароль типа атрибута.
Возвращаемое значение:
уникальный номер типа атрибута - в случае удачного завершения,
0 - в случае неудачи.
Примечание:
- Уникальный номер типа атрибута attrID может быть получен от интерфейса ksLibraryAttrTypeParam с помощью свойства ksLibraryAttrTypeParam::typeid или с помощью метода ksAttributeObject::ksGetAttrKeysInfo. Тип атрибута типа должен быть предварительно создан, например, с помощью метода ksAttributeObject::ksCreateAttrType.
- Перед использованием указатель attrType должен быть получен с помощью метода KompasObject::GetParamStruct с параметром ko_AttributeType с последующим наполнением параметрами с помощью свойств и методов интерфейса ksAttributeTypeParam.
ksSetAttrValue - Установить значение ячейки в таблице атрибута
Аналог данного метода при использовании API экспортных функций - ksSetAttrValue. Синтаксис Automation:
long ksSetAttrValue (reference pAttr,
long rowNumb,
long columnNumb,
LPDISPATCH
flagVisible,
LPDISPATCH columnKeys,
LPDISPATCH value,
BSTR password);
Входные параметры:
pAttr - указатель на атрибут,
rowNumb - номер строки,
columnNumb - номер колонки,
flagVisible - указатель на интерфейс динамического массива типа LTVARIANT_ARR ksDynamicArray, указывающего флаги видимости ячеек,
columnKeys - указатель на интерфейс динамического массива типа LTVARIANT_ARR ksDynamicArray, указывающего ключи полей колонки,
value - указатель на интерфейс ksUserParam, откуда копируется значение ячейки,
password - пароль атрибута.
Возвращаемое значение:
1 - в случае удачного завершения.
Смотрите также:ksLtVariant
Примечание:
- Для нетабличного атрибута номер колонки равен нулю.
- Указатель на атрибут reference pAttr может быть получен следующими способами: •с помощью интерфейса итератора ksIterator и методов ksIterator::ksCreateAttrIterator, ksIterator::ksMoveAttrIterator, •с помощью методов создания атрибутов ksAttributeObject::ksCreateAttr или выбора атрибутов ksAttributeObject::ksChoiceAttr.
- Перед использованием указатель flagVisible должен быть получен от интерфейса KompasObject с помощью метода KompasObject::GetParamStruct с параметром ko_LtVariant, методов интерфейса ksLtVariant, интерфейса ksDynamicArray, метода ksDynamicArray::ksSetArrayItem, ksDynamicArray::ksAddArrayItem.
- Перед использованием указатель value должен быть получен от интерфейса KompasObject с помощью метода KompasObject::GetParamStruct с параметром ko_UserParam с последующим наполнением массива с помощью методов интерфейса ksUserParam, ksLtVariant, ksDynamicArray.
ksViewEditAttr - Вывести диалог для просмотра или редактирования атрибута
Аналог данного метода при использовании API экспортных функций - ViewEditAttr. Синтаксис Automation:
long ksViewEditAttr (reference pAttr,
long type,
BSTR password);
Входные параметры:
pAttr - указатель на атрибут,
type - режим работы: - 1 - режим просмотра, 2 - режим редактирования
password - пароль типа атрибута.
Возвращаемое значение:
1 - в случае удачного завершения.
Примечание:
- Диалог "привязан" к главному окну.
- Указатель на атрибут reference pAttr может быть получен следующими способами: •с помощью интерфейса итератора ksIterator и методов ksIterator::ksCreateAttrIterator, ksIterator::ksMoveAttrIterator, •с помощью методов создания атрибутов ksAttributeObject::ksCreateAttr или выбора атрибутов ksAttributeObject::ksChoiceAttr.
ksViewEditAttrType - Вывести диалог для просмотра или редактирования типа атрибута
Аналог данного метода при использовании API экспортных функций - ViewEditAttrType. Синтаксис Automation:
long ksViewEditAttrType (BSTR libName,
long type,
double attrID,
BSTR password);
Входные параметры:
libName - имя библиотеки типов атрибутов. Если libname = NULL, типы атрибутов берутся из текущего документа,
type - режим работы: 1 - режим просмотра, 2 - режим редактирования,
attrId - уникальный номер типа атрибута,
password - пароль типа атрибута.
Возвращаемое значение:
1 - в случае удачного завершения.
Примечание: Уникальный номер типа атрибута attrID может быть получен от интерфейса ksLibraryAttrTypeParam с помощью свойства ksLibraryAttrTypeParam::typeid или от интерфейса ksAttributeObject с помощью метода ksAttributeObject::ksGetAttrKeysInfo. Тип атрибута должен быть предварительно создан, например, с помощью метода ksAttributeObject::ksCreateAttrType.