--- title: "Интерфейс спецификации ksSpecification" type: interface api: [api7] domain: [3d] tags: [interface, api7, 3d, ksspecification] sources: - ksspecification.html --- *API интерфейсов. Версия 5 > Документ-модель (Интерфейсы - ksDocument3D, IDocument3D )  > Интерфейсы спецификации ksSpecification, ISpecification * ## Интерфейс спецификации ksSpecification События... Интерфейс для работы со спецификацией. Примечания: 1. Для Автоматизации используется интерфейс ksSpecification. 2. Для COM используется интерфейс ISpecification3D и группа экспортных функций. Указатель на интерфейс ISpecification3D можно получить из интерфейса IDocument3D через стандартную функцию QueryInterface. 3. Указатель на интерфейс можно получить при помощи методов ksDocument2D::GetSpecification, ksSpcDocument::GetSpecification, ksDocument3D::GetSpecification. 4. События интерфейса позволяют контролировать редактирование описаний спецификации. В Automation источником событий для подписки на данный интерфейс является объект ksSpecification. В COM источником для подписки является документ (графический, документ-модель, спецификация). Смотрите также: •ksDocument2D, •ksDocument3D, •ksSpcDocument. ## D3GetSpcObjForGeomWithLimit - Получить указатель на объект спецификации, подключенный к трехмерному компоненту (детали или подсборке) с ограничениями по номеру раздела и типу атрибута Аналог данного метода при использовании API экспортных функций - D3GetSpcObjForGeomWithLimit. Синтаксис Automation: ``` long D3GetSpcObjForGeomWithLimit (LPCTSTR nameLib, long numb, LPDISPATCH part, short first, short section, double attrTypeNumb); Входные параметры: nameLib - имя библиотеки стилей спецификации, numb - номер стиля спецификации в библиотеке, part - указатель на интерфейс добавляемого компонента ksPart, first - 1 - первый объект, 0 - следующий объект, section - номер раздела, в котором нужно найти объект (0 - номер не ограничивается), attrTypeNumb - номер типа атрибута, для которого нужно найти объект (0 - номер не ограничивается). Возвращаемое значение: - указатель на объект спецификации. ``` Синтаксис COM: ``` ISpecification3D::GetSpcObjForGeomWithLimit ``` ## D3GetSpcObjGeometry - Получить деталь или подсборку, подключенную к объекту спецификации Аналог данного метода при использовании API экспортных функций - ksD3GetSpcObjGeometry. Синтаксис Automation: ``` LPDISPATCH D3GetSpcObjGeometry (long spcObj); Входные параметры: spcObj - указатель на объект спецификации. Возвращаемое значение: Указатель на интерфейс ksPart - в случае успешного завершения, 0 - если деталь не подключена или в случае ошибки. ``` ## D3SpcIncludePart - Добавить или изменить трехмерный компонент (деталь или подсборку) в объекте спецификации Аналог данного метода при использовании API экспортных функций - D3SpcIncludePart. Синтаксис Automation: ``` BOOL D3SpcIncludePart (LPDISPATCH part, VARIANT_BOOL fillTexts); Входные параметры: part - указатель на интерфейс компонента ksPart, fillTexts - признак автоматического заполнения: наименование, обозначение, масса из свойств ksPart: TRUE - автозаполнение включено, FALSE - выключено. Возвращаемое значение: TRUE - в случае удачного завершения. ``` Синтаксис COM: ``` ISpecification3D::SpcIncludePart ``` Примечание: Если при подключении компонента присылается флаг fillTexts = true, в объекте спецификации взводится флаг ISpecificationBaseObject::SyncronizeWithProperties. ## GetSpcObjectColumnTextEx - Получить текст объекта спецификации для определенного типа колонки и исполнения в виде динамического массива TEXT_LINE_ARR Аналог данного метода при использовании API экспортных функций - ksGetSpcObjectColumnTextEx. Синтаксис Automation: ``` LPDISPATCH ksGetSpcObjectColumnTextEx (long spcObj, long columnType, long ispoln, long block); Входные параметры: spcObj - указатель на объект спецификации, columnType - тип колонки, SPC_CLM_FORMAT...SPC_CLM_USER, ispoln - номер колонки данного типа начиная с 1, block - номер блока, если block = 0, то количество исполнений меньше количества исполнений в бланке спецификации (для групповой спецификации 2.113-75 количество исполнений меньше 10). Возвращаемое значение: указатель на интерфейс ksDynamicArray - в случае успеха, 0 - в случае неудачи. ``` ## GetSpcObjectNotify - Получить источник событий для объекта спецификации Синтаксис Automation: ``` SpcObjectNotify* GetSpcObjectNotify(); Возвращаемое значение: - указатель на интерфейс источника событий SpcObjectNotify. ``` ## ksAddSpcDescription - Добавить описание спецификации в указанный графический документ Аналог данного метода при использовании API экспортных функций - ksAddSpcDescription. Синтаксис Automation: ``` long ksAddSpcDescription (LPDISPATCH param); Входной параметр: param - указатель на интерфейс параметров описания спецификации ksSpcDescrParam, Возвращаемое значение: 1 - в случае удачного завершения, 0 - в случае неудачи. ``` ## ksDeleteSpcDescription - Удалить параметры описания спецификации в указанном графическом документе Аналог данного метода при использовании API экспортных функций - ksDeleteSpcDescription. Синтаксис Automation: ``` long ksDeleteSpcDescription (long index); Входной параметр: index - индекс (номер) описания спецификации в документе. Возвращаемое значение: 1 - в случае удачного завершения, 0 - в случае неудачи. ``` ## ksEditWindowSpcObject - Запустить окно редактирования для объекта спецификации, существующего в графическом документе Аналог данного метода при использовании API экспортных функций - ksEditWindowSpcObject. Синтаксис Automation: ``` long ksEditWindowSpcObject (long obj); Входной параметр: spcObj - указатель на объект спецификации. Возвращаемое значение: 1 - в случае удачного завершения. ``` Примечание: Метод запускает процесс. Так как сиcтема может работать только с одним процессом, то нужно завершить другие "процессные" функции: ksDocument2D::ksCursor, ksDocument2D::ksPlacement, ksDocument2D::ksCommandWindow, ksDocument2D::ksEditViewObject, ksDocument2D::ksCreateViewObject. ## ksGetCurrentSpcObject - Получить указатель текущего (выделенного или редактируемого) объекта спецификации Аналог данного метода при использовании API экспортных функций - ksGetCurrentSpcObject. Синтаксис Automation: ``` long ksGetCurrentSpcObject(); Возвращаемое значение: указатель на текущий объект - в случае успеха, 0 - в случае неудачи. ``` Примечание: Метод работает для видимых таблиц спецификации. ## ksGetSpcColumnNumb - Получить номер колонки для данного объекта спецификации Аналог данного метода при использовании API экспортных функций - ksGetSpcColumnNumb. Синтаксис Automation: ``` long ksGetSpcColumnNumb (long spcObj, long columnType, long ispoln, long block); Входные параметры: spcObj - указатель на объект спецификации, columnType - тип колонки, ispoln - номер колонки данного типа, начиная с 1, block - номер блока исполнений. Возвращаемое значение: - номер колонки спецификации. Типы колонок спецификации... ``` ## ksGetSpcColumnType - Получить параметры колонки по ее номеру для данного объекта спецификации Аналог данного метода при использовании API экспортных функций - ksGetSpcColumnType. Синтаксис Automation: ``` long ksGetSpcColumnType (long spcObj, long colNumb, LPDISPATCH par); Входные параметры: spcObj - указатель на объект спецификации, colNumb - номер колонки, начиная с 1. Выходной параметр: par - указатель на интерфейс параметров колонки ksSpcColumnParam. Возвращаемое значение: 1 - в случае удачного завершения, 0 - в случае неудачи. Типы колонок спецификации... ``` Примечание: Если количество исполнений больше числа колонок Количество в бланке спецификации, то недостающие колонки исполнений "пристыкованы" справа от видимых в таблице колонок, затем "пристыкованы" дополнительные колонки ## ksGetSpcDescription - Получить указатель на интерфейс параметров описания спецификации для указанного документа Аналог данного метода при использовании API экспортных функций - ksGetSpcDescription. Синтаксис Automation: ``` long ksGetSpcDescription (long index, LPDISPATCH param, BOOL* state); Входной параметр: index - индекс (номер) описания спецификации в документе (-1 - текущее описание). Выходные параметры: param - указатель на интерфейс ksSpcDescrParam параметров описания спецификации, state - состояние описания спецификации: TRUE - текущее, FALSE - не текущее. Возвращаемое значение: 1 - в случае удачного завершения, 0 - в случае неудачи. ``` Примечание: Для документа-спецификации параметр index не используется. ## ksGetSpcObject - Получить указатель на объект спецификации по номеру Аналог данного метода при использовании API экспортных функций - ksGetSpcObject. Синтаксис Automation: ``` long ksGetSpcObject (double objNumb); Входной параметр: objNumb - уникальный номер объекта спецификации. Возвращаемое значение: - указатель на объект спецификации. ``` ## ksGetSpcObjectAttributeNumber - Получить номер атрибута объекта спецификации Аналог данного метода при использовании API экспортных функций - ksGetSpcObjectAttributeNumber. Синтаксис Automation: ``` double ksGetSpcObjectAttributeNumber ( long spcObj ); Входные параметры: spcObj - объект спецификации. Возвращаемое значение: - номер атрибута. ``` Примечания: Если spcObj = 0, то возвращается номер редактируемого в текущий момент объекта спецификации, т.е. внутри блока: ksSpcObjectEdit(...); ksGetSpcObjectAttributeNumber(...); ksSpcObjectEnd(); ## ksGetSpcObjectColumnText - Получить строку с текстом из определенной колонки объекта спецификации Аналог данного метода при использовании API экспортных функций - ksGetSpcObjectColumnText. Синтаксис Automation: ``` BSTR ksGetSpcObjectColumnText (long spcObj, long columnType, long ispoln, long block); Входные параметры: spcObj - указатель на объект спецификации, columnType - тип колонки, ispoln - номер колонки данного типа, начиная с 1, block - номер блока исполнений, начиная с 0 (если количество исполнений больше числа колонок типа Количество). Типы колонок спецификации... Возвращаемое значение: - строка с текстом из колонки. ``` ## ksGetSpcObjectColumnTextAlign - Получить выравнивание для текста колонки объекта спецификации Аналог данного метода при использовании API экспортных функций - ksGetSpcObjectColumnTextAlign. Синтаксис Automation: ``` long ksGetSpcObjectColumnTextAlign( long spcObj, long columnNumber, long lineIndex ); Входной параметр: spcObj - указатель на объект спецификации, columnNumber - номер колонки, начиная с 1, lineIndex - индекс строки текста. Возвращаемое значение: 1 - в случае удачного завершения, 0 - в случае неудачи. ``` Примечания: Значение переменной align может принимать значения: 0 - Выравнивание влево; 1 - Выравнивание по центру; 2 - Выравнивание вправо; 3 - Выравнивание по ширине. ## ksGetSpcObjectNumber - Получить уникальный номер объекта спецификации Аналог данного метода при использовании API экспортных функций - ksGetSpcObjectNumber. Синтаксис Automation: ``` double ksGetSpcObjectNumber (long spcObj); Входной параметр: spcObj - указатель на объект спецификации. Возвращаемое значение: - уникальный номер объекта спецификации. ``` ## ksGetSpcObjectSummaryCount - Получить суммарное количество для одинаковых объектов Аналог данного метода при использовании API экспортных функций - ksGetSpcObjectSummaryCount. Синтаксис Automation: ``` double ksGetSpcObjectSummaryCount(long spcObj, long ispoln, long blockNumber ); Входные параметры: spcObj - объект спецификации, ispoln - номер колонки типа "количество", начиная с 1 (актуально для СП типа Б ), blockNumber - номер блока, начиная с 0 ( актуально для СП типа A). Возвращаемое значение: - cуммарное количество. ``` ## ksGetSpcObjectSummaryCountText - Выдать отображаемый текст объекта СП для колонки количество и исполнения в виде динамического массива Аналог данного метода при использовании API экспортных функций - ksGetSpcObjectSummaryCountText. Синтаксис Automation: ``` LPDISPATCH ksGetSpcObjectSummaryCountText( long spcObj, long ispoln, long block, LPDISPATCH arr ); Входные параметры: spcObj - объект спецификации, ispoln - номер колонки типа "количество", начиная с 1 (актуально для СП типа Б ), blockNumber - номер блока, начиная с 0 ( актуально для СП типа A). Возвращаемое значение: Указатель на на интерфейс ksDynamicArray - в случае успеха, 0 - в случае неудачи. ``` Примечание: •В разных разделах количество может иметь различный тип. •В разделе Детали стандартные изделия, например, количество имеет целочисленное значение. При объединении нескольких объектов спецификации в этом случае количество суммируется. •В разделе Материал количество строковое, и текст возвращается с объекта, у которого задано не пустое значение. •В разделе Документация также формируется объединенное значение. •В отличии от ksSpecification::ksGetSpcObjectSummaryCount метод может вернуть не пустое значение для строковых колонок. ## ksGetSpcObjForGeom - Получить указатель на объект спецификации, подключенный к данному графическому объекту Аналог данного метода при использовании API экспортных функций - ksGetSpcObjForGeom. Синтаксис Automation: ``` long ksGetSpcObjForGeom (BSTR nameLib, long numb, long obj, short equal, short first); Входные параметры: nameLib - имя библиотеки стилей спецификации, numb - номер стиля спецификации в библиотеке, obj - указатель на графический объект или группу объектов (0 - макроэлемент редактирования), equal - признак вхождения геометрии в состав объекта: 1 - геометрия идентична геометрии объекта спецификации, 0 - геометрия входит в объект спецификации, first - 1 - первый объект, 0 - следующий объект. Возвращаемое значение: - указатель на объект спецификации. ``` Примечания: 1. Данный метод - только для графических документов. 2. В настоящий момент метод реализован только для equal = 1. ## ksGetSpcObjForGeomWithLimit - Получить указатель на объект спецификации, подключенный к данному графическому объекту с ограничениями по номеру раздела и типу атрибута Аналог данного метода при использовании API экспортных функций - ksGetSpcObjForGeomWithLimit. Синтаксис Automation: ``` long ksGetSpcObjForGeomWithLimit (BSTR nameLib, long numb, long obj, short equal, short first, long section, double attrTypeNumb); Входные параметры: nameLib - имя библиотеки стилей спецификации, numb - номер стиля спецификации в библиотеке, obj - указатель на графический объект или группу объектов (0 - макроэлемент редактирования), equal - признак вхождения геометрии в состав объекта: 1 - геометрия идентична геометрии объекта спецификации, 0 - геометрия входит в объект спецификации, first - 1 - первый объект, 0 - следующий объект, section - номер раздела, в котором нужно найти объект (0 - номер не ограничивается), attrTypeNumb - номер типа атрибута, для которого нужно найти объект (0 - номер не ограничивается). Возвращаемое значение: - указатель на объект спецификации. ``` Примечания: 1. Данный метод - только для графических документов. 2. В настоящий момент метод реализован только для equal = 1. ## ksGetSpcObjGeometry - Получить деталь или подсборку, подключенную к объекту спецификации Аналог данного метода при использовании API экспортных функций - ksGetSpcObjGeometry. Синтаксис Automation: ``` long ksGetSpcObjGeometry (long spcObj); Входные параметры: spcObj - указатель на объект спецификации. Возвращаемое значение: указатель на группу - в случае успешного завершения, 0 - в случае, если геометрия не подключена или в случае ошибки. ``` ## ksGetSpcObjGeometryEx - Получить деталь или подсборку, подключенную к объекту спецификации Аналог данного метода при использовании API экспортных функций - ksGetSpcObjGeometryEx. Синтаксис Automation: ``` long ksGetSpcObjGeometryEx (long spcObj, long geomMode); Входные параметры: spcObj - указатель на объект спецификации, geomMode 0 - только геометрия; 1 - только линии выноски; 2 - геометрия и линии выноски. Возвращаемое значение: указатель на группу - в случае успешного завершения, 0 - в случае, если геометрия не подключена или в случае ошибки. ``` ## ksGetSpcPerformanceName - Получить отображаемое имя исполнения Аналог данного метода при использовании API экспортных функций - ksGetSpcPerformanceName. Синтаксис Automation: ``` BSTR ksGetSpcPerformanceName( long index, long ispoln, long block ); Входные параметры: index - индекс описания СП в документе, ispoln - номер колонки типа "количество", начиная с 1 (актуально для СП типа Б), blockNumber - номер блока, начиная с 0 (актуально для СП типа A). Возвращаемое значение: имя исполнения - в случае успешного завершения, FALSE - в случае, если геометрия не подключена или в случае ошибки. ``` ## ksGetSpcPropertyFill - Получить флаг Синхронизировать со свойствами компонента Синтаксис Automation: ``` BOOL ksGetSpcPropertyFill( long spcObj ); Входные параметры: spcObj - указатель на объект спецификации. Возвращаемое значение: Значение флага - cинхронизировать со свойствами компонента. ``` ## ksGetSpcSectionName - Получить название раздела спецификации по указателю на объект спецификации Аналог данного метода при использовании API экспортных функций - ksGetSpcSectionName. Синтаксис Automation: ``` BSTR ksGetSpcSectionName (long spcObj); Входной параметр: spcObj - указатель на объект спецификации. Возвращаемое значение: - строка с названием раздела спецификации. ``` ## ksGetSpcStyleParam - Получить указатель на интерфейс параметров ksSpcStyleParam или ksSpcTuningStyleParam для указанного стиля спецификации Аналог данного метода при использовании API экспортных функций - ksGetSpcStyleParam. Синтаксис Automation: ``` long ksGetSpcStyleParam (BSTR nameLib, long numb, LPDISPATCH par, long tPar); Входные параметры: nameLib - имя библиотеки стилей спецификаций (NULL - параметры берутся у текущего документа), numb - номер стиля спецификации в библиотеке, tPar - тип возвращаемых параметров. Выходной параметр: par - указатель на интерфейс параметров ksSpcStyleParam или ksSpcTuningStyleParam. Возвращаемое значение: 1 - в случае удачного завершения, 0 - в случае неудачи. ``` Примечание: tPar = ALLPARAM - интерфейс ksSpcStyleParam, tPar = SPC_TUNING_PARAM - интерфейс ksSpcTuningStyleParam. ## ksGetSpcTableColumn - Получить количество колонок для стиля спецификации в текущем документе Аналог данного метода при использовании API экспортных функций - ksGetSpcTableColumn. Синтаксис Automation: ``` long ksGetSpcTableColumn (BSTR nameLib, long numb, short additioanalCol); Входные параметры: nameLib - имя библиотеки стилей спецификаций, numb - номер стиля в библиотеке, additioanalCol - признак колонок: 0 - видимые колонки таблицы спецификации, 1 - дополнительные колонки. Возвращаемое значение: - количество колонок для стиля спецификации в текущем документе. ``` Примечания: 1. Если документ - спецификация, то параметры nameLib и numb не используются. 2. Если количество исполнений больше числа колонок "количество" в бланке спецификации, то количество колонок выдается с учетом всех исполнений. ## ksGetTuningSpcStyleParam - Получить параметры настройки спецификации документа Аналог данного метода при использовании API экспортных функций - ksGetTuningSpcStyleParam. Синтаксис Automation: ``` long ksGetTuningSpcStyleParam (long index, LPDISPATCH par); Входные параметры: index - индекс описания спецификации в документе, par - указатель на интерфейс ksSpcTuningStyleParam структуры параметров настроек спецификации. Возвращаемое значение: 1 - в случае успешного завершения, 0 - в случае неудачи. ``` Примечание: 1. Если index = -1, то для текущего описания спецификации. 2. Для документа спецификации настройки можно изменить всегда. 3. Для графического документа в случае, если документ подключен к спецификации или включен режим "Спецификация на листе". 4. Для документа трехмерного объекта в случае, если документ подключен к спецификации. ## ksGetWidthColumnSpc - Получить ширину колонки или текста в колонке Аналог данного метода при использовании API экспортных функций - ksGetWidthColumnSpc. Синтаксис Automation: ``` double ksGetWidthColumnSpc (long numColumn, BOOL cellOrText); Входные параметры: numColumn - номер колонки, cellOrText - признак объекта, ширину которого требуется узнать: TRUE - колонка, FALSE - текст в колонке. Возвращаемое значение: - ширина колонки или текста в колонке. ``` ## ksSetCurrentSpcObject - Установить текущий объект спецификации либо по указателю на него, либо по его индексу Аналог данного метода при использовании API экспортных функций - ksSetCurrentSpcObject. Синтаксис Automation: ``` long ksSetCurrentSpcObject (long spcObj, long index); Входные параметры: spcObj - указатель на объект, index - индекс объекта. Возвращаемое значение: 1 - в случае успешного завершения, 0 - в случае неудачи. ``` Примечание: Метод работает для видимых таблиц спецификации. ## ksSetSpcDescription - Установить указатель на интерфейс параметров описания спецификации для указанного документа Аналог данного метода при использовании API экспортных функций - ksSetSpcDescription. Синтаксис Automation: ``` long ksSetSpcDescription (long index, LPDISPATCH param, short state); Входные параметры: index - индекс (номер) описания спецификации в документе (-1 - текущее описание), param - указатель на интерфейс параметров описания спецификации ksSpcDescrParam, state - состояние описания спецификации: TRUE - текущее, FALSE - не текущее. Возвращаемое значение: 1 - в случае удачного завершения. ``` Примечания: 1. Метод изменяет параметры описания спецификации и/или делает его активным, если state = TRUE. 2. Если param = NULL - меняется только состояние. 3. Для документа-спецификации параметр index не используется. ## ksSetSpcObjectAttributeNumber - Установить номер атрибута объекта спецификации Аналог данного метода при использовании API экспортных функций - ksSetSpcObjectAttributeNumber. Синтаксис Automation: ``` BOOL ksSetSpcObjectAttributeNumber (long spcObj, double attrNumber ); Входные параметры: spcObj - объект спецификации, attrNumber - номер атрибута. Возвращаемое значение: 1 - в случае удачного завершения, 0 - в случае неудачи.- в случае неудачи. ``` Примечания: Если spcObj = 0, то возвращается номер редактируемого в текущий момент объекта спецификации, т.е. внутри блока: ksSpcObjectEdit(...); ksGetSpcObjectAttributeNumber(...); ksSpcObjectEnd(); ## ksSetSpcObjectColumnText - Установить текст в колонке определенного типа Аналог данного метода при использовании API экспортных функций - ksSetSpcObjectColumnText. Синтаксис Automation: ``` long ksSetSpcObjectColumnText (long columnType, long ispoln, long block, BSTR str); Входные параметры: columnType - тип колонки, ispoln - номер колонки данного типа, block - номер блока исполнений, начиная с 0 (если количество исполнений больше числа колонок типа Количество), str - строка, из которой нужно взять текст. Возвращаемое значение: 1 - в случае удачного завершения. ``` ## ksSetSpcObjectColumnTextAlign - Установить выравнивание для текста колонки объекта спецификации Аналог данного метода при использовании API экспортных функций - ksSetSpcObjectColumnTextAlign. Синтаксис Automation: ``` BOOL ksSetSpcObjectColumnTextAlign ( long spcObj, long columnNumber, long lineIndex, long align ); Входной параметр: spcObj - указатель на объект спецификации. columnNumber - номер колонки, начиная с 1, lineIndex - индекс строки текста, align - выравнивание. Возвращаемое значение: 1 - в случае удачного завершения, 0 - в случае неудачи. ``` Примечания: Значение переменной align может принимать значения: 0 - Выравнивание влево; 1 - Выравнивание по центру; 2 - Выравнивание вправо; 3 - Выравнивание по ширине. ## ksSetSpcObjectColumnTextEx - Задать текст объекта спецификации для определенного типа колонки и исполнения Аналог данного метода при использовании API экспортных функций - ksSetSpcObjectColumnTextEx. Синтаксис Automation: ``` long ksSetSpcObjectColumnTextEx (long columnType, long ispoln, long block, LPDISPATCH arr); Входные параметры: columnType - тип колонки, SPC_CLM_FORMAT...SPC_CLM_USER, ispoln - номер колонки данного типа, начиная с 1, block - номер блока. если block = 0, то количество исполнений меньше количества исполнений в бланке спецификации (для групповой спецификации 2.113-75 количество исполнений меньше 10), arr - указатель на интерфейс ksDynamicArray массива строк, тип массива - TEXT_LINE_ARR. Возвращаемое значение: 1 - в случае успеха, 0 - в случае неудачи. ``` Примечание: Функция работает в режиме создания нового или редактирования существующего объекта спецификации ksSpcObjectCreate(...); или ksSpcObjectEdit(...);. ksSetSpcObjectColumnTextEx(...);...reference spsObj = ksSpcObjectEnd(); ## ksSetSpcPerformanceName - Установить отображаемое имя исполнения Аналог данного метода при использовании API экспортных функций - ksSetSpcPerformanceName. Синтаксис Automation: ``` BOOL ksSetSpcPerformanceName( long index, long ispoln, long block, BSTR name ); Входные параметры: Index - индекс описания СП в документе, Ispoln - номер колонки типа Количество, начиная с 1(актуально для СП типа Б), blockNumber - номер блока, начиная с 0 (актуально для СП типа A), Name - имя исполнения. Возвращаемое значение: TRUE - в случае успешного завершения, FALSE - в случае, если геометрия не подключена или в случае ошибки. ``` ## ksSetSpcPropertyFill - Установить флаг Синхронизировать со свойствами компонента Синтаксис Automation: ``` BOOL ksGetSpcPropertyFill( long spcObj, long val ); Входные параметры: spcObj - указатель на объект спецификации, val - 1 включить синхронизацию, 0 - выключить синхронизацию. Возвращаемое значение: TRUE - в случае удачного завершения, FALSE - в случае неудачи. ``` ## ksSetTuningSpcStyleParam - Установить параметры настроек спецификации документа Аналог данного метода при использовании API экспортных функций - ksSetTuningSpcStyleParam. Синтаксис Automation: ``` long ksSetTuningSpcStyleParam(long index, LPDISPATCH par); Входные параметры: index - индекс описания спецификации в документе, par - указатель на интерфейс ksSpcTuningStyleParam структуры параметров настроек спецификации. Возвращаемое значение: 1 - в случае успешного завершения, 0 - в случае неудачи. ``` Примечание: 1. Если index = -1, то для текущего описания спецификации. 2. Для документа спецификации настройки можно изменить всегда. 3. Для графического документа в случае, если документ подключен к спецификации или включен режим "Спецификация на листе". 4. Для документа трехмерного объекта в случае, если документ подключен к спецификации. ## ksSpcChangeValue - Изменить значение компоненты с указанным номером в указанной колонке Аналог данного метода при использовании API экспортных функций - ksSpcChangeValue. Синтаксис Automation: ``` long ksSpcChangeValue (long colNumb, long itemNumb, LPDISPATCH userPars, short typeVal); Входные параметры: colNumb - номер колонки, начиная с единицы, itemNumb - номер компоненты, начиная с единицы, userPars - указатель на интерфейс ksUserParam, typeVal - тип данных. Типы данных.. Возвращаемое значение: 1 - в случае удачного завершения. ``` Примечания: 1. Метод работает в режиме создания нового или редактирования существующего объекта спецификации. 2. Если typeVal - запись (RECORD_ATTR_TYPE), в колонке может быть несколько компонент и itemNumb может быть не равен 1. ## ksSpcCount - Установить количество деталей для определенного исполнения Аналог данного метода при использовании API экспортных функций - ksSpcCount. Синтаксис Automation: ``` long ksSpcCount (short ispoln, BSTR sCount); Входные параметры: ispoln - номер исполнения, начиная с 1, sCount - количество деталей. Возвращаемое значение: 1 - в случае удачного завершения (если в объекте существует колонка с типом Количество). ``` ## ksSpcDocLinksClear - Создать объект спецификации в графическом документе Аналог данного метода при использовании API экспортных функций - ksSpcObjectCreate. Синтаксис Automation: ``` BOOL ksSpcDocLinksClear( long doc ) Входные параметры: doc - указатель на документ-источник объекта спецификации (графический, 3D, спецификация). Возвращаемое значение: 1 - в случае успешного завершения, 0 - в случае неудачи. ``` Примечания: Функция удаляет связки документа-источника объекта спецификации (графический, 3D, спецификация) с документом-владельцем объекта спецификации; Если doc = 0, то документом-источником объекта спецификации считается текущий документ. ## ksSpcIncludeReference - Добавить или изменить геометрию графического объекта или линию-выноску в объекте спецификации Аналог данного метода при использовании API экспортных функций - ksSpcIncludeReference. Синтаксис Automation: ``` long ksSpcIncludeReference (long obj, short clear); Входные параметры: obj - группа объектов или объект вида, clear - признак обработки существующей геометрии объекта спецификации: 1 - удалить геометрию, 0 - добавить новые объекты к существующей геометрии. Возвращаемое значение: 1 - в случае удачного завершения, 0 - в случае неудачи. ``` ## ksSpcMassa - Заполнить дополнительную колонку масса для объекта спецификации Аналог данного метода при использовании API экспортных функций - ksSpcMassa. Синтаксис Automation: ``` long ksSpcMassa (BSTR sMassa); Входной параметр: sMassa - строка с массой детали. Возвращаемое значение: 1 - в случае удачного завершения (если в объекте существует колонка с типом Масса), 0 - в случае неудачи. ``` ## ksSpcObjectCreate - Создать объект спецификации в графическом документе Аналог данного метода при использовании API экспортных функций - ksSpcObjectCreate. Синтаксис Automation: ``` long ksSpcObjectCreate (BSTR nameLib, long styleNumb, long secNumb, long subSecNumb, double numb, short typeObj); Входные параметры: nameLib - имя библиотеки стилей спецификации, styleNumb - номер стиля спецификации в библиотеке, secNumb - номер раздела, subSecNumb - номер подраздела, numb - для базового объекта - тип атрибута, который задан по ключам, или 0, для вспомогательного объекта - номер базового объекта, к которому прикрепляется вспомогательный, либо 0, typeObj - тип строки спецификации (0- базовый объект, 1 – вспомогательный объект). Возвращаемое значение: 1 - в случае удачного завершения. ``` Примечания: 1. Объект спецификации - составной объект. Его создание завершается методом ksSpecification::ksSpcObjectEnd. 2. Для атрибутов, описанных по ключам, нужно указать тип в numb, потому что типов с одинаковыми ключами может быть несколько. 3. Параметры nameLib и styleNumb используются только для объектов спецификации в графическом документе. ## ksSpcObjectEdit - Запустить режим редактирования объекта спецификации Аналог данного метода при использовании API экспортных функций - ksSpcObjectEdit. Синтаксис Automation: ``` long ksSpcObjectEdit (long spcObj); Входной параметр: spcObj - указатель на объект спецификации. Возвращаемое значение: 1 - в случае удачного завершения, 0 - в случае неудачи. ``` Примечания: 1. После вызова данного метода у объекта можно изменить атрибуты, геометрию, линии выноски, позицию, массу. 2. Редактирование объекта завершится вызовом метода ksSpecification::ksSpcObjectEnd. ## ksSpcObjectEnd - Завершить создание или редактирование объекта спецификации Аналог данного метода при использовании API экспортных функций - ksSpcObjectEnd. Синтаксис Automation: ``` long ksSpcObjectEnd(); Возвращаемое значение: - указатель на объект спецификации. ``` Примечание: Предварительно объект спецификации должен быть открыт на редактирование, или должен быть запущен режим его создания методами ksSpecification::ksSpcObjectEdit или ksSpecification::ksSpcObjectCreate. ## ksSpcPosition - Установить номер позиции Аналог данного метода при использовании API экспортных функций - ksSpcPosition. Синтаксис Automation: ``` long ksSpcPosition (long pos); Входной параметр: pos - номер позиции. Возвращаемое значение: 1 - в случае удачного завершения (если в объекте существует колонка с типом Позиция), 0 - в случае неудачи. ``` ## ksSpcVisible - Установить признак видимости компонента Аналог данного метода при использовании API экспортных функций - ksSpcVisible. Синтаксис Automation: ``` long ksSpcVisible (long colNumb, long itemNumb, short flagOn); Входные параметры: colNumb - номер колонки, начиная с единицы, itemNumb - номер компоненты, начиная с единицы, flagOn - признак видимости компонента: 1 -включить, 0- выключить. Возвращаемое значение: 1 - в случае удачного завершения, 0 - в случае неудачи. ``` Примечания: 1. Метод работает в режиме создания нового или редактирования существующего объекта спецификации. 2. В случае записи в колонке может быть несколько компонент и itemNumb может быть не равен 1.