---
title: "Переменные"
type: interface
api: [api7]
tags: [interface, api7, ba1859837]
sources:
  - ba1859837.html
  - ivariable7.html
  - iprocesswithvariables.html
  - ivariabletable.html
  - iintervalvariable.html
---

*API интерфейсов. Версия 7 > Документ *




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

Интерфейс параметрической переменной модели.
Иерархия:
IKompasAPIObject
IVariable7
Описание:
Интерфейс позволяет изменять параметры объектов модели, не прибегая к их прямому редактированию. Выражения дают возможность устанавливать зависимости между параметрами объектов.
Примечание:
Интерфейс можно получить с помощью свойств:
•IInsertionFragment::Variable,
•IInsertionFragment::Variables,
•IKompasDocument2D1::Variable,
•IKompasDocument2D1::Variables,
•IView::Variable,
•IView::Variables
и метода:
•IKompasDocument2D1::AddVariable.


## AddProperty - Создать свойство переменная

Синтаксис Automation:
```
LPDISPATCH AddProperty();
```
Синтаксис COM:
```
HRESULT AddProperty( IProperty ** Result );
Возвращаемое значение:
- указатель на интерфейс свойства IProperty.
```


## CreateDeviationVariables - Создать переменные для отклонений

Синтаксис Automation:
```
BOOL CreateDeviationVariables();
```
Синтаксис COM:
```
HRESULT CreateDeviationVariables( BOOL * Result );
Возвращаемое значение:
TRUE    - в случае удачи,
FALSE    - в случае неудачи.
```


## Delete - Удалить переменную

Синтаксис Automation:
```
BOOL Delete();
```
Синтаксис COM:
```
HRESULT Delete( BOOL * Res )
Возвращаемое значение:
TRUE    - в случае удачи.
```


## DeviationExpression - Выражение для переменной отклонения

Тип данных: BSTR
Синтаксис Automation:
```
DeviationExpression = Object.DeviationExpression( HighDeviation )    Получить свойство (* )
Object.DeviationExpression( HighDeviation ) = DeviationExpression    Установить свойство (* )
DeviationExpression = Object.GetDeviationExpression( HighDeviation )    Получить свойство (**)
Object.SetDeviationExpression( HighDeviation, DeviationExpression )    Установить свойство (**)
```
Синтаксис COM:
```
Object.get_DeviationExpression( HighDeviation, &DeviationExpression )    Получить свойство
Object.put_DeviationExpression( HighDeviation, DeviationExpression )    Установить свойство
Входные параметры:
BOOL    - HighDeviation - верхнее (TRUE) или нижнее (FALSE) отклонение.
```


## DeviationOn - Включить отклонения

Тип данных: BOOL
Синтаксис Automation:
```
DeviationOn = Object.DeviationOn    Получить свойство (* )
Object.DeviationOn = DeviationOn    Установить свойство (* )
DeviationOn = Object.GetDeviationOn()    Получить свойство (**)
Object.SetDeviationOn( DeviationOn )    Установить свойство (**)
```
Синтаксис COM:
```
Object.get_DeviationOn( &DeviationOn )    Получить свойство
Object.put_DeviationOn( DeviationOn )    Установить свойство
```


## DeviationType - Тип отклонений

Тип данных: из перечисления ksDimensionDeviationEnum
Синтаксис Automation:
```
DeviationType = Object.DeviationType    Получить свойство (* )
Object.DeviationType = DeviationType    Установить свойство (* )
DeviationType = Object.GetDeviationType()    Получить свойство (**)
Object.SetDeviationType( DeviationType )    Установить свойство (**)
```
Синтаксис COM:
```
Object.get_DeviationType( &DeviationType )    Получить свойство
Object.put_DeviationType( DeviationType )    Установить свойство
```


## DisplayName - Отображаемое имя переменной

Тип данных: BSTR
Синтаксис Automation:
```
DisplayName = Object.DisplayName    Получить свойство (* )
DisplayName = Object.GetDisplayName()    Получить свойство (**)
```
Синтаксис COM:
```
Object.get_DisplayName( &DisplayName )    Получить свойство
Свойство позволяет получить отображаемое имя переменной.
```
Примечание:
Свойство доступно только для чтения.
Отображаемое имя переменной может отличаться от имени переменной IVariable7::Name для внешних переменных вставки детали в сборку.
К имени переменной из источника добавляется префикс, равный имени переменной «исключить из расчета».


## Expression - Выражение

Тип данных: BSTR
Синтаксис Automation:
```
Expression = Object.Expression    Получить свойство (* )
Object.Expression = Information    Установить свойство (* )
Expression = Object.GetExpression()    Получить свойство (**)
Object.SetExpression( Expression )    Установить свойство (**)
```
Синтаксис COM:
```
Object.get_Expression( &Expression )    Получить свойство
Object.put_Expression( Expression )    Установить свойство
Свойство позволяет устанавливать и получать выражение.
```


## External - Внешняя переменная

Тип данных: BOOL
Синтаксис Automation:
```
External = Object.External    Получить свойство (* )
Object.External = External    Установить свойство (* )
External = Object.GetExternal()    Получить свойство (**)
Object.SetExternal( External )    Установить свойство (**)
```
Синтаксис COM:
```
Object.get_External( &External )    Получить свойство
Object.put_External( External )    Установить свойство
Свойство позволяет устанавливать и получать признак внешней переменной.
```


## GetLinkEmbodimentMarking - Обозначение исполнения

Синтаксис Automation:
```
BSTR GetLinkEmbodimentMarking( ksVariantMarkingTypeEnum MarkingType, BOOL AddSystemDelimer );
```
Синтаксис COM:
```
HRESULT GetLinkEmbodimentMarking( ksVariantMarkingTypeEnum MarkingType, BOOL AddSystemDelimer, BSTR * Result );
Возвращаемое значение:
TRUE    - в случае удачи,
FALSE    - в случае неудачи.
Входные параметры:
MarkingType    - часть обозначения из перечисления ksVariantMarkingTypeEnum,
AddSystemDelimer    - добавлять системные разделители.
```


## HasTolerance - Отключить допуск

Тип данных: BOOL
Синтаксис Automation:
```
HasTolerance = Object.HasTolerance    Получить свойство (* )
Object.HasTolerance = HasTolerance    Установить свойство (* )
HasTolerance = Object.GetHasTolerance()    Получить свойство (**)
Object.SetHasTolerance( HasTolerance )    Установить свойство (**)
```
Синтаксис COM:
```
Object.get_HasTolerance( &HasTolerance )    Получить свойство
Object.put_HasTolerance( HasTolerance )    Установить свойство
Свойство позволяет устанавливать и получать признак отключения допуска.
```


## HighDeviation - Верхнее отклонение

Тип данных: double
Синтаксис Automation:
```
HighDeviation = Object.HighDeviation    Получить свойство (* )
Object.HighDeviation = HighDeviation    Установить свойство (* )
HighDeviation = Object.GetHighDeviation()    Получить свойство (**)
Object.SetHighDeviation( HighDeviation )    Установить свойство (**)
```
Синтаксис COM:
```
Object.get_HighDeviation( &HighDeviation )    Получить свойство
Object.put_HighDeviation( HighDeviation )    Установить свойство
```


## Information - Информационная переменная

Тип данных: BOOL
Синтаксис Automation:
```
Information = Object.Information    Получить свойство (* )
Object.Information = Information    Установить свойство (* )
Information = Object.GetInformation()    Получить свойство (**)
Object.SetInformation( Information )    Установить свойство (**)
```
Синтаксис COM:
```
Object.get_Information( &Information )    Получить свойство
Object.put_Information( Information )    Установить свойство
Свойство позволяет устанавливать и получать признак информационной переменной.
```


## IsAngular - Свойство задано в градусах

Тип данных: BOOL
Синтаксис Automation:
```
IsAngular = Object.IsAngular    Получить свойство (* )
IsAngular = Object.GetIsAngular()    Получить свойство (**)
```
Синтаксис COM:
```
Object.get_IsAngular( &IsVariable )    Получить свойство
```
Примечание:
Свойство доступно только для чтения.


## IsCreatedDeviationVariables - Созданы ли переменные для отклонений

Тип данных: BOOL
Синтаксис Automation:
```
IsCreatedDeviationVariables = Object.IsCreatedDeviationVariables    Получить свойство (* )
IsCreatedDeviationVariables = Object.GetIsCreatedDeviationVariables()    Получить свойство (**)
```
Синтаксис COM:
```
Object.get_IsCreatedDeviationVariables( &IsCreatedDeviationVariables )    Получить свойство
```
Примечание:
Свойство доступно только для чтения.


## LinkDocumentName - Документ, в котором хранится ссылочная переменная

Тип данных: BSTR
Синтаксис Automation:
```
LinkDocumentName = Object.LinkDocumentName    Получить свойство (* )
LinkDocumentName = Object.GetLinkDocumentName()    Получить свойство (**)
```
Синтаксис COM:
```
Object.get_LinkDocumentName( &LinkDocumentName )    Получить свойство
Свойство позволяет получать имя документа, в котором хранится ссылочная переменная.
```
Примечание:
Свойство доступно только для чтения.


## LinkEmbodimentIndex - Индекс текущего исполнения

Тип данных: long
Синтаксис Automation:
```
LinkEmbodimentIndex = Object.LinkEmbodimentIndex    Получить свойство (* )
LinkEmbodimentIndex = Object.GetLinkEmbodimentIndex()    Получить свойство (**)
```
Синтаксис COM:
```
Object.get_LinkEmbodimentIndex( &LinkEmbodimentIndex )    Получить свойство
```
Примечание:
Свойство доступно только для чтения.


## LinkVariableName - Имя переменной, на которую сделана ссылка

Тип данных: BSTR
Синтаксис Automation:
```
LinkVariableName = Object.LinkVariableName    Получить свойство (* )
LinkVariableName = Object.GetLinkVariableName()    Получить свойство (**)
```
Синтаксис COM:
```
Object.get_LinkVariableName( &LinkVariableName )    Получить свойство
Свойство позволяет получить имя переменной, на которую сделана ссылка.
```
Примечание:
Свойство доступно только для чтения.
Переменная может ссылаться на переменную из другого документа.
Ссылка формируется из имени документа IVariable7::LinkDocumentName и имени переменной.
Ссылку можно создать с помощью функции IVariable7::SetLink.


## LowDeviation - Нижнее отклонение

Тип данных: double
Синтаксис Automation:
```
LowDeviation = Object.LowDeviation    Получить свойство (* )
Object.LowDeviation = LowDeviation    Установить свойство (* )
LowDeviation = Object.GetLowDeviation()    Получить свойство (**)
Object.SetLowDeviation( LowDeviation )    Установить свойство (**)
```
Синтаксис COM:
```
Object.get_LowDeviation( &LowDeviation )    Получить свойство
Object.put_LowDeviation( LowDeviation )    Установить свойство
```


## Name - Имя переменной

Тип данных: BSTR
Синтаксис Automation:
```
Name = Object.Name    Получить свойство (* )
Name = Object.GetName()    Получить свойство (**)
```
Синтаксис COM:
```
Object.get_Name( &Name )    Получить свойство
Свойство позволяет получить имя переменной.
```
Примечание:
Свойство доступно только для чтения


## Note - Комментарий к переменной

Тип данных: BSTR
Синтаксис Automation:
```
Note = Object.Note    Получить свойство (* )
Object.Note = Note    Установить свойство (* )
Note = Object.GetNote()    Получить свойство (**)
Object.SetNote( Note )    Установить свойство (**)
```
Синтаксис COM:
```
Object.get_Note( &Note )    Получить свойство
Object.put_Note( Note )    Установить свойство
Свойство позволяет устанавливать и получать комментарий к переменной.
```


## ParameterNote - Имя параметра переменной

Тип данных: BSTR
Синтаксис Automation:
```
ParameterNote = Object.ParameterNote    Получить свойство (* )
Object.ParameterNote = ParameterNote    Установить свойство (* )
ParameterNote = Object.GetParameterNote()    Получить свойство (**)
Object.SetParameterNote( ParameterNote )    Установить свойство (**)
```
Синтаксис COM:
```
Object.get_ParameterNote( &ParameterNote )    Получить свойство
Object.put_ParameterNote( ParameterNote )    Установить свойство
Свойство позволяет устанавливать и получать имя параметра переменной.
```


## Property - Получить интерфейс свойства

Тип данных: Указатель на интерфейс IProperty
Синтаксис Automation:
```
Property = Object.Property    Получить свойство (* )
Property = Object.GetProperty()    Получить свойство (**)
```
Синтаксис COM:
```
Object.get_Property( &Property )    Получить свойство
```
Примечание:
Свойство доступно только для чтения.


## ReadOnly - Только чтение

Тип данных: BSTR
Синтаксис Automation:
```
ReadOnly = Object.ReadOnly    Получить свойство (* )
Object.ReadOnly = ReadOnly    Установить свойство (* )
ReadOnly = Object.GetReadOnly()    Получить свойство (**)
Object.SetReadOnly( ReadOnly )    Установить свойство (**)
```
Синтаксис COM:
```
Object.get_ReadOnly( &ReadOnly )    Получить свойство
Object.put_ReadOnly( ReadOnly )    Установить свойство
```
Примечание:
Свойство задает доступность изменения выражения переменной.
Свойство используется для переменных документа.


## Rectangle - Текст в рамочке

Тип данных: BOOL
Синтаксис Automation:
```
Rectangle = Object.Rectangle    Получить свойство (* )
Object.Rectangle = Rectangle    Установить свойство (* )
Rectangle = Object.GetRectangle()    Получить свойство (**)
Object.SetRectangle( Rectangle )    Установить свойство (**)
```
Синтаксис COM:
```
Object.get_Rectangle( &Rectangle )    Получить свойство
Object.put_Rectangle( Rectangle )    Установить свойство
```


## SetLink - Установить ссылку на переменную

Синтаксис Automation:
```
BOOL SetLink( BSTR DocumentName, BSTR VariableName )
```
Синтаксис COM:
```
HRESULT SetLink( BSTR DocumentName, BSTR VariableName, BOOL * Res )
Входные параметры:
DocumentName    - имя документа,
VariableName    - имя переменной.
Возвращаемое значение:
TRUE    - в случае удачи.
```


## SetLinkEmbodiment - Установить ссылку на переменную

Синтаксис Automation :
BOOL SetLinkEmbodiment( BSTR DocumentName, BSTR VariableName, VARIANT Index );
Синтаксис COM :
HRESULT SetLinkEmbodiment( BSTR DocumentName, BSTR VariableName, VARIANT Index, BOOL * Result );
Входные параметры:
| DocumentName | - имя документа, |
| --- | --- |
| VariableName | - имя переменной, |
| Index | - индекс или строковый номер исполнения. |


## Tolerance - Квалитет

Тип данных: BSTR
Синтаксис Automation:
```
Tolerance = Object.Tolerance    Получить свойство (* )
Object.Tolerance = Tolerance    Установить свойство (* )
Tolerance = Object.GetTolerance()    Получить свойство (**)
Object.SetTolerance( Tolerance )    Установить свойство (**)
```
Синтаксис COM:
```
Object.get_Tolerance( &Tolerance )    Получить свойство
Object.put_Tolerance( Tolerance )    Установить свойство
```


## ToleranceOn - Включить квалитет

Тип данных: BOOL
Синтаксис Automation:
```
ToleranceOn = Object.ToleranceOn    Получить свойство (* )
Object.ToleranceOn = ToleranceOn    Установить свойство (* )
ToleranceOn = Object.GetToleranceOn()    Получить свойство (**)
Object.SetToleranceOn( ToleranceOn )    Установить свойство (**)
```
Синтаксис COM:
```
Object.get_ToleranceOn( &ToleranceOn )    Получить свойство
Object.put_ToleranceOn( Tolerance On)    Установить свойство
```


## Value - Значение переменной

Тип данных: double
Синтаксис Automation:
```
Value = Object.Value    Получить свойство (* )
Object.Value = Value    Установить свойство (* )
Value = Object.GetValue()    Получить свойство (**)
Object.SetValue( Value )    Установить свойство (**)
```
Синтаксис COM:
```
Object.get_Value( &Value )    Получить свойство
Object.put_Value( Value )    Установить свойство
Свойство позволяет устанавливать и получать значение переменной.
```


## VariableID - Идентификатор параметра в объектах

Тип данных: long
Синтаксис Automation:
```
VariableID = Object.VariableID    Получить свойство (* )
VariableID = Object.GetVariableID()    Получить свойство (**)
```
Синтаксис COM:
```
Object.get_VariableID( &VariableID )    Получить свойство
```
Примечание:
Свойство доступно только для чтения
Версия Компас v21


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

Интерфейс процесса с переменными.
Иерархия:
IDispatch
IProcessWithVariables
Описание:
Интерфейс является дополнительным к интерфейсу IProcess3D.
Интерфейс можно получить с помощью метода IUnknown::QueryInterface.
Версия: Компас v20


## ClearExpressions - Очистить список выражений и переменных процесса

Синтаксис Automation:
```
BOOL ClearExpressions();
```
Синтаксис COM:
```
HRESULT ClearExpressions( BOOL * Result );
Возвращаемое значение:
TRUE    - в случае успешного завершения,
FALSE    - в случае неудачи.
```


## GetControlExpression - Получить выражение из контрола

Синтаксис Automation:
```
BSTR GetControlExpression( IPropertyControl * Control );
```
Синтаксис COM:
```
HRESULT GetControlExpression( IPropertyControl * Control, BSTR * Result );
Возвращаемое значение:
- Выражение.
Входные параметры:
Control    - Указатель на интерфейс IPropertyControl,
```


## GetControlVariableName - Получить имя переменной из контрола

Синтаксис Automation:
```
BSTR GetControlVariableName( IPropertyControl * Control );
Синтаксис COM :
HRESULT GetControlVariableName( IPropertyControl * Control, BSTR * Result );
Возвращаемое значение:
- Имя переменной.
Входные параметры:
Control    - Указатель на интерфейс IPropertyControl,
```


## SetControlExpression - Установить выражение в контрол

Синтаксис Automation:
```
BOOL SetControlExpression( IPropertyControl * Control, BSTR VariableName, BSTR Expression );
```
Синтаксис COM:
```
HRESULT SetControlExpression( IPropertyControl * Control, BSTR VariableName, BSTR Expression, BOOL * Result );
Возвращаемое значение:
TRUE    - в случае успешного завершения,
FALSE    - в случае неудачи.
Входные параметры:
Control    - Указатель на интерфейс IPropertyControl,
VariableName    - Имя переменной,
Expression    - Выражение.
```


## UpdateExpressionsControls - Обновить выражения в контролах

Синтаксис Automation:
```
BOOL UpdateExpressionsControls();
```
Синтаксис COM:
```
HRESULT UpdateExpressionsControls( BOOL * Result );
Возвращаемое значение:
TRUE    - в случае успешного завершения,
FALSE    - в случае неудачи.
```


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

Интерфейс таблицы переменных.
Иерархия:
IKompasAPIObject
IVariableTable
Описание:
Позволяет считывать, изменять, добавлять параметры таблицы переменных компонента, применять параметры из таблицы переменных к компоненту.
Примечание:
1. Данный интерфейс можно получить:
•от интерфейса IPart7, используя свойство IPart7::VariableTable,
•от интерфейса IKompasDocument2D1, используя свойство IKompasDocument2D1::VariableTable.
2. Доступно редактирование таблицы переменных только верхнего компонента.


## AddColumn - Добавить колонку в таблицу переменных

Синтаксис Automation:
```
long AddColumn (LPCTSTR VarName);
```
Синтаксис COM:
```
HRESULT AddColumn (BSTR VarName, long * ColumnIndex);
Входные параметры:
VarName    - имя добавляемой переменной.
Возвращаемое значение:
ColumnIndex - индекс добавленной колонки в таблице переменных    - в случае успеха,
-1    - в случае неудачи.
```
Примечание:
1. Метод доступен только для верхнего компонента.
2. Если компонент не имел таблицы переменных, она создается.


## AddRow - Добавить строку в таблицу переменных

Синтаксис Automation:
```
long AddRow (LPCTSTR Comment);
```
Синтаксис COM:
```
HRESULT AddRow (BSTR Comment, long * index);
Входные параметры:
Comment    - комментарий к добавляемой строке.
Возвращаемое значение:
index - индекс добавленной строки в таблице переменных    - в случае успеха,
-1    - в случае неудачи.
```
Примечание:
1. Метод доступен только для верхнего компонента.
2. Если компонент не имел таблицы переменных, она создается.


## ApplyVars - Применить параметры строки к компоненту

Синтаксис Automation:
```
BOOL ApplyVars (VARIANT index);
```
Синтаксис COM:
```
HRESULT ApplyVars (VARIANT index, VARIANT_BOOL * result);
Входные параметры:
index    - индекс строки типа long или комментарий к строке типа BSTR.
Возвращаемое значение:
TRUE    - значения параметров из заданной строки успешно применены к компоненту,
FALSE    - значения параметров из заданной строки не применены к компоненту.
```
Примечание:
Метод доступен только для верхнего компонента.


## Cell - Значение в ячейке таблицы переменных

Тип данных: double.
Синтаксис Automation:
```
Cell = iObject.Cell (rIndex,cIndex)    Получить свойство (* )
iObject.Cell (rIndex,cIndex) = Cell    Установить свойство (* )
Cell = iObject.GetCell (rIndex,cIndex)    Получить свойство (**)
iObject.SetCell (rIndex,cIndex,Cell)    Установить свойство (**)
```
Синтаксис COM:
```
iObject->get_Cell(rIndex,cIndex,&Cell)    Получить свойство
iObject->put_Cell (rIndex,cIndex,Cell)    Установить свойство
Входные параметры:
long rIndex    - индекс строки таблицы переменных,
long cIndex    - индекс колонки таблицы переменных.
```
Примечание:
Установка свойства доступна только для верхнего компонента.


## Clear - Очистить всю таблицу - удалить все строки и колонки

Синтаксис Automation:
```
BOOL Clear();
```
Синтаксис COM:
```
HRESULT Clear (VARIANT_BOOL * result);
Возвращаемое значение:
TRUE    - в случае успеха,
FALSE    - в случае неудачи.
```
Примечание:
Метод доступен только для верхнего компонента.


## ColumnsCount - Количество столбцов в таблице переменных

Тип данных: long
Синтаксис Automation:
```
ColumnsCount = iObject.ColumnsCount    Получить свойство (* )
ColumnsCount = iObject.GetColumnsCount()    Получить свойство (**)
```
Синтаксис COM:
```
iObject->get_ColumnsCount(&ColumnsCount)    Получить свойство
Значение свойства:
Количество столбцов    в случае успеха,
-1    в случае неудачи.
```
Примечание:
Свойство только для чтения.


## Comment - Комментарий к строке в таблице переменных

Тип данных: BSTR
Синтаксис Automation:
```
Comment = iObject.Comment    Получить свойство (* )
iObject.Comment = Comment    Установить свойство (* )
Comment = iObject.GetComment()    Получить свойство (**)
iObject.SetComment (Comment)    Установить свойство (**)
```
Синтаксис COM:
```
iObject->get_Comment(&Comment)    Получить свойство
iObject->put_Comment (Comment)    Установить свойство
```
Примечание:
Установка свойства доступна только для верхнего компонента.


## DeleteColumn - Удалить колонку из таблицы переменных

Синтаксис Automation:
```
BOOL DeleteColumn (VARIANT Column);
```
Синтаксис COM:
```
HRESULT DeleteColumn (VARIANT Column, VARIANT_BOOL * result);
Входные параметры:
Column    - индекс колонки типа long или имя переменной типа BSTR.
Возвращаемое значение:
TRUE    - в случае успеха,
FALSE    - в случае неудачи.
```
Примечание:
Метод доступен только для верхнего компонента.


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

Синтаксис Automation:
```
BOOL DeleteRow (VARIANT Row);
```
Синтаксис COM:
```
HRESULT DeleteRow (VARIANT Row, VARIANT_BOOL * result);
Входные параметры:
Row    - индекс строки типа long или комментарий типа BSTR.
Возвращаемое значение:
TRUE    - в случае успеха,
FALSE    - в случае неудачи.
```
Примечание:
Метод доступен только для верхнего компонента.


## FindColumnIndex - Найти индекс колонки по имени переменной

Синтаксис Automation:
```
long FindColumnIndex (LPCTSTR val);
```
Синтаксис COM:
```
HRESULT FindColumnIndex ([in] BSTR Val, [out, retval] long * PVal);
Входные параметры:
val    - имя переменной.
Возвращаемое значение:
Индекс колонки    - в случае успеха,
-1    - в случае неудачи.
```


## RowsCount - Количество строк в таблице переменных

Тип данных: long
Синтаксис Automation:
```
RowsCount = iObject.RowsCount    Получить свойство (* )
RowsCount = iObject.GetRowsCount()    Получить свойство (**)
```
Синтаксис COM:
```
iObject->get_RowsCount(&RowsCount)    Получить свойство
Значение свойства:
Количество строк    в случае успеха,
-1    в случае неудачи.
```
Примечание:
Свойство только для чтения.


## TableRow - Строка переменных в таблице переменных

Тип данных: VARIANT
Синтаксис Automation:
```
Row = iObject.TableRow    Получить свойство (* )
iObject.TableRow = Row    Установить свойство (* )
Row = iObject.GetRableRow()    Получить свойство (**)
iObject.SetTableRow (Row)    Установить свойство (**)
```
Синтаксис COM:
```
iObject->get_TableRow(&TableRow)    Получить свойство
iObject->put_TableRow (Row)    Установить свойство
```
Примечание:
Массив значений переменных передаётся через массив SAFEARRAY значений типа double.


## VarName - Имя переменной в колонке таблицы переменных

Тип данных: BSTR (строка)
Синтаксис Automation:
```
Name = iObject.VarName (column)    Получить свойство (* )
iObject.VarName (column) = Name    Установить свойство (* )
Name = iObject.GetVarName (column)    Получить свойство (**)
iObject.SetVarName (column, Name)    Установить свойство (**)
```
Синтаксис COM:
```
iObject->get_VarName (column, &Name)    Получить свойство
iObject->put_VarName (column, Name)    Установить свойство
Входные параметры:
long column    - индекс колонки таблицы переменных.
```
Примечание:
Установка свойства доступна только для верхнего компонента.


## VarNames - Массив имен переменных в таблице переменных

Тип данных: VARIANT
Синтаксис Automation:
```
VarNames = iObject.VarNames    Получить свойство (* )
iObject.VarNames = VarNames    Установить свойство (* )
VarNames = iObject.GetVarNames()    Получить свойство (**)
iObject.SetVarNames (VarNames)    Установить свойство (**)
```
Синтаксис COM:
```
iObject->get_VarNames(&VarNames)    Получить свойство
iObject->put_VarNames (VarNames)    Установить свойство
```
Примечание:
1. Массив имён переменных передаётся через массив SAFEARRAY значений типа BSTR.
2. Установка свойства доступна только для верхнего компонента.


## VisualTable - Выдать таблицу в визуальном режиме (получить индекс выбранной строки)

Тип данных: long
Синтаксис Automation:
```
rIndex = iObject.VisualTable(WinVal,Select)    Получить свойство (* )
rIndex = iObject.GetVisualTable(WinVal,Select)    Получить свойство (**)
```
Синтаксис COM:
```
iObject->get_VisualTable (WinVal, Select, rIndex)    Получить свойство
Входные параметры:
OLE_HANDLE WinVal    - дескриптор окна (может быть задан ноль - признак главного окна),
BOOL Select    - признак открытия окна только для чтения и выбора строки из таблицы.
Возвращаемое значение:
индекс выбранной строки    - в случае успеха,
-1    - в случае неудачи.
```
Примечание:
1. Свойство доступно только для чтения.
2. Если задан признак выбора Select = TRUE, по нажатию ОК в диалоге таблицы переменных возвращается индекс выбранной строки.
3. Если задан признак выбора Select = FALSE, доступно редактирование и по нажатию ОК в диалоге таблицы переменных возвращается -1.
4. Если задан признак выбора Select = FALSE, доступно редактирование и по нажатию Присвоить значения параметрам в диалоге таблицы переменных возвращается индекс выбранной строки.
5. Редактирование таблицы переменных доступно только для верхнего компонента.


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

Интерфейс интервальной переменной.
Иерархия:
IDispatch
IIntervalVariable
Интерфейс является дополнительным к интерфейсу переменной IVariable.
Версия: Компас v20


## FirstValue - Первое значение интервала

Тип данных: double
Синтаксис Automation:
```
FirstValue = Object.FirstValue    Получить свойство (* )
Object.FirstValue = FirstValue    Установить свойство (* )
FirstValue = Object.GetFirstValue()    Получить свойство (**)
Object.SetFirstValue( FirstValue )    Установить свойство (**)
```
Синтаксис COM:
```
Object.get_FirstValue( &FirstValue )    Получить свойство
Object.put_FirstValue( FirstValue )    Установить свойство
```


## SecondValue - Второе значение интервала

Тип данных: double
Синтаксис Automation:
```
SecondValue = Object.SecondValue    Получить свойство (* )
Object.SecondValue = SecondValue    Установить свойство (* )
SecondValue = Object.GetSecondValue()    Получить свойство (**)
Object.SetSecondValue( SecondValue )    Установить свойство (**)
```
Синтаксис COM:
```
Object.get_SecondValue( &SecondValue )    Получить свойство
Object.put_SecondValue( SecondValue )    Установить свойство
```
