Добрый день.
Подскажите пожалуйста алгоритм доступа к перечислениям TSObjectLibrary > Перечисления.
Нравится
Добрый день, Станислав.
Уточните пожалуйста что Вы имеете в виду?
Механизм доступа к сервису перечисления "enm_" в конфигурации?
Или Вам необходимо подключить библиотеку TSObjectLibrary к стороннему приложению и там обратиться к сервису перечисления конфигурации Terrasoft?
Павел, добрый день!
Речь идет о доступе к перечислениям непосредственно из TerraSoft. В рамках библитеки TSObjectLibrary существует набор перечислений, как получить доступ к одному из них, а именно: enum _RoundingTypeEnum ?
Для примера:
var RT = CreateObject('TSObjectLibrary._RoundingTypeEnum ');Благодарю за помощь.
Добрый день, Станислав.
В библиотеках "перечисления" являются константными значениями. Доступ к ним из сервисов конфигурации получить не удастся.
Пример: в WindowLibrary.dll объявлен enum
[javascript]
enum _DirectionEnum {
dHorizontal = 0,
dVertical = 1
};
[/javascript]
В сервисах конфигурации мы данные константы объявляем явно, например в scr_SysEnums:
[javascript]
// Constants for enum _DirectionEnum
dHorizontal = 0x00000000;
dVertical = 0x00000001;
[/javascript]
Использование: у элемента формы "Frame" есть свойство "Direction", тип которого _DirectionEnum. Соответственно из конфигурации ему можем присвоить значение dVertical = 1 выражением:
Frame.Direction = dVertical;
Интересующее Вас перечисление RoundingTypeEnum также описано в scr_SysEnums:
[javascript]
// Constants for enum _RoundingTypeEnum
drNone = 0x00000000;
drHalfEven = 0x00000001;
drHalfPos = 0x00000002;
drHalfNeg = 0x00000003;
drHalfDown = 0x00000004;
drHalfUp = 0x00000005;
drRndNeg = 0x00000006;
drRndPos = 0x00000007;
drRndDown = 0x00000008;
drRndUp = 0x00000009;
[/javascript]