---
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.
