Перейти в хранилище документации
Обратиться в техническую поддержку
Общее описание и примеры использования математических функций, функций преобразования, форматирования и строковых функций показаны в таблице.
Функции (В квадратных скобках указано количество исполняемых параметров) | Общее описание, пример использования |
МАТЕМАТИЧЕСКИЕ | |
sin[1] | Тригонометрическая функция расчета синуса угла. Формат: y=sin(x); где y – значение функции, x – аргумент функции (в радианах) Пример: y=sin(1.6) Полученное событие: Event : CORE VAR_CHANGED nt_obj_id<1>,value<0.997495>,name<y>,time<15:26:41>,date<21-09-04> |
сos[1] | Тригонометрическая функция расчета косинуса угла. Формат: y=cos(x); где y – значение функции, x – аргумент функции (в радианах) Пример: y=cos(2.2) Полученное событие: Event : CORE VAR_CHANGED int_obj_id<1>,value<-0.588501>,name<y>,time<16:00:45>,date<21-09-04> |
tan[1] | Тригонометрическая функция, возвращает тангенс угла. Формат: y=tan(x); где y – значение функции, x – аргумент функции (в радианах) Пример: y=tan(1) Полученное событие: Event : CORE VAR_CHANGED int_obj_id<1>,value<1.557408>,name<y>,time<16:43:45>,date<21-09-04> |
asin[1] | Возвращает арксинус заданного числового выражения. Формат: y=asin(x); где y – значение функции (в радианах), x – аргумент Пример: y=asin(0.5) Полученное событие: Event : CORE VAR_CHANGED int_obj_id<1>,value<0.523599>,name<y>,time<16:46:39>,date<21-09-04> |
acos[1] | Возвращает арккосинус заданного числового выражения. Формат: y=acos(x); где y – значение функции (в радианах), x – аргумент Пример: y=acos(0.55) Полученное событие: Event : CORE VAR_CHANGED int_obj_id<1>,value<0.988432>,name<y>,time<16:46:39>,date<21-09-04> |
atan[1] | Возвращает арктангенс заданного числового выражения. Формат: y=atan(x); где: y – значение функции (в радианах), x – аргумент Пример: y=atan(1.2) Полученное событие: Event : Event : CORE VAR_CHANGED int_obj_id<1>,value<0.876058>,name<y>,time<17:07:09>,date<21-09-04> |
sinh[1] | Функция sinh возвращает гиперболический синус значения аргумента. Формат: y=sinh(x); где y – значение функции, x – аргумент функции Пример: y=sinh(0.8) Полученное событие: Event : CORE VAR_CHANGED int_obj_id<1>,value<0.888106>,name<y>,time<17:12:26>,date<21-09-04> |
сosh[1] | Функция cosh возвращает гиперболический косинус значения аргумента. Формат: y=cosh(х); где y – значение функции, x – аргумент функции Пример: y=cosh(0.35) Полученное событие: Event : CORE VAR_CHANGED int_obj_id<1>,value<0.336376>,name<y>,time<17:25:25>,date<21-09-04> |
tanh[1] | Тригонометрическая функция расчета угла. Формат: y=tanh(x); где y – значение функции, x – аргумент функции Пример: y=tanh(0.35) Полученное событие: Event : CORE VAR_CHANGED int_obj_id<1>,value<1.419068>,name<y>,time<17:25:25>,date<21-09-04> |
exp[1] | Возвращает значение функции e^x, где x - заданное числовое выражение. Формат: y=exp(x); где y – значение функции, x – аргумент Пример: y=exp(1.65) Полученное событие: Event : CORE VAR_CHANGED int_obj_id<1>,value<5.20698>,name<y>,time<17:39:22>,date<21-09-04> |
log[1] | Возвращает натуральный логарифм (по основанию «e») заданного числового выражения. Формат: y=log(x); где: y – значение функции, x – аргумент Пример: y=log(0.65) Полученное событие: Event : CORE VAR_CHANGED int_obj_id<1>,value<-0.430783>,name<y>,time<17:43:22>,date<21-09-04> |
log10[1] | Возвращает десятичный логарифм (по основанию 10) заданного числового выражения. Формат: y=log10(x); где y – значение функции, x – аргумент Пример: y=log10(0.05) Полученное событие: Event : CORE VAR_CHANGED int_obj_id<1>,value<-1.30103>,name<y>,time<17:46:28>,date<21-09-04> |
sqrt[1] | Возвращает квадратный корень из заданного числового выражения. Формат: y=sqrt(x); где y – значение функции, x – аргумент Пример: y=sqrt(9) Полученное событие: Event : CORE VAR_CHANGED int_obj_id<1>,value<3>,name<y>,time<17:25:25>,date<21-09-04> |
abs[1] | Функция abs возвращает абсолютное значение целого аргумента. Формат: y=abs(x); где y – значение функции, x – аргумент Пример: y= abs(-1) Полученное событие: Event : CORE VAR_CHANGED int_obj_id<1>,value<1>,name<y>,time<13:39:37>,date<22-09-04> |
deg[1] | Тригонометрическая функция расчета угла. Возвращает градусную меру. Формат: y=deg(x); где y – значение функции в градусах, x – значение аргумента в радианах Пример: y=deg(3.14) Полученное событие: Event : CORE VAR_CHANGED int_obj_id<1>,value<179.908748>,name<y>,time<13:13:51>,date<22-09-04> |
rad[1] | Тригонометрическая функция расчета угла. Формат: y=rad(x); где y – значение функции в радианах, x – значение аргумента в градусах Пример: y=rad(180) Полученное событие: Event : CORE VAR_CHANGED value<3.141593>,name<y>,time<15:04:17>,date<17-03-08> |
ПРЕОБРАЗОВАНИЕ | |
floor[1] | Функция преобразования до целого числа в меньшую сторону. Формат: x= floor(y); где x – значение функции, y – дробное или целое число Пример: x= floor(5.55) Полученное событие: Event : CORE VAR_CHANGED int_obj_id<1>,value<5>,name<x>,time<20:51:48>,date<21-09-04> |
ceil[1] | Функция преобразования до целого числа в большую сторону. Формат: x= ceil (y); где x – значение функции, y – дробное или целое число Пример: x= ceil(5.55) Полученное событие: Event : CORE VAR_CHANGED int_obj_id<1>,value<6>,name<x>,time<20:51:48>,date<21-09-04> |
str[1] | Функция преобразования числа к строке. Формат: x=str(y); где x – значение функции, y – аргумент Пример: z=(9); a=str(z); b=sqrt(a); Полученные события: Event : CORE VAR_CHANGED int_obj_id<1>,value<9>,name<z>,time<14:27:31>,date<22-09-04> Event : CORE VAR_CHANGED int_obj_id<1>,value<9>,name<a>,time<14:27:31>,date<22-09-04> Event : CORE VAR_CHANGED int_obj_id<1>,value<3>,name<b>,time<14:27:31>,date<22-09-04> |
atof[1] | Функция преобразования строки в число. Формат: x=atof(y); где x – значение функции, y – аргумент Пример: x="0"; x=str(atof(x)+10); Полученное событие: Event : CORE VAR_CHANGED value<0>,name<x>,time<15:34:44>,date<17-03-08> Event : CORE VAR_CHANGED value<10>,name<x>,time<15:34:44>,date<17-03-08> |
val[1] | Функция преобразования строки в число. Формат: x=val(y); где x – значение функции, y – аргумент Пример: x="10"; x=str(val(x)+2); Полученное событие: Event : CORE VAR_CHANGED value<10>,name<x>,time<15:34:44>,date<17-03-08> Event : CORE VAR_CHANGED value<12>,name<x>,time<15:34:44>,date<17-03-08> |
int[1] | Преобразование дробного числа в целое (отбросить дробную часть). Формат: x=int(y); где x – значение функции, y – аргумент (дробное число для преобразования) Пример: y=(2.33); x=int(y); Полученное событие: Event : CORE VAR_CHANGED int_obj_id<1>,value<2.33>,name<y>,time<16:05:28>,date<22-09-04> Event : CORE VAR_CHANGED int_obj_id<1>,value<2>,name<x>,time<16:05:28>,date<22-09-04> |
long2time[1] | Используется для преобразования заданного количества секунд во время. Формат: x=long2time(y); где x – значение функции(время), y – число в секундах Формат исходной записи (аргумента): <ММ> Формат полученной записи: <ЧЧ:ММ:СС> Пример: x=long2time(12345); Полученное событие: Event : CORE VAR_CHANGED int_obj_id<1>,value<03:25:45>,name<x>,time<13:53:02>,date<20-09-04>. |
time2long[1] | Преобразовать время в количество секунд. Формат: x=time2 long(y); где x – значение в секундах, y – время в формате <часы>.<минуты> Пример: y=(0.15); x=time2long(y); Полученное событие: Event : CORE VAR_CHANGED int_obj_id<1>,value<0.15>,name<y>,time<19:39:49>,date<22-09-04> Event : CORE VAR_CHANGED int_obj_id<1>,value<900>,name<x>,time<19:39:49>,date<22-09-04> |
scalar2date[1] | Преобразовать количество дней в дату (количество дней исчисляется с начала нашей эры). Формат: x=scalar2date (y); где x – значение(дата), y – количество дней Пример: y=(731500); x=scalar2date(y); Полученное событие: Event : CORE VAR_CHANGED int_obj_id<1>,value<731500>,name<y>,time<19:57:46>,date<22-09-04> Event : CORE VAR_CHANGED int_obj_id<1>,value<12-10-03>,name<x>,time<19:57:46>,date<22-09-04> |
scalar[1] | Преобразовать дату в количество дней (количество дней исчисляется с начала нашей эры). Формат: x=scalar(y); где x – числовое значение (в сутках), y – дата Формат записи: <ДД.ММ.ГГГГ> Пример: x=scalar(“19.10.2004”) Полученное событие: Event : CORE VAR_CHANGED int_obj_id<10>,value<731873>,owner<WS1>,name<x>,time<15:24:11>, guid_pk<{42E93AF5-4862-485E-AEF6-D14C7BF79C5B}>,date<08-12-09> |
convert_num[1] | Преобразовать число в строку написания этого числа. Формат: x=convert_num(y); где x – строковое значение числа, y – преобразуемое число Пример: y=(24009921); x=convert_num(y); Полученное событие: Event : CORE VAR_CHANGED int_obj_id<1>,value<24009921>,name<y>,time<12:37:20>,date<23-09-04> Event : CORE VAR_CHANGED int_obj_id<1>,value<Двадцать четыре миллиона девять тысяч девятсот двадцать один >,name<x>,time<12:37:20>,date<23-09-04> |
convert_cur[1] | Преобразовать число (денежную сумму) в строку написания этого числа и добавить руб. и коп. Формат: x=convert_cur(y); где x – строковое значение денежной суммы, y – число(денежная сумма) Формат записи: <РР.КК> Пример: y=(17999.98); x=convert_cur(y); Полученное событие: Event : CORE VAR_CHANGED int_obj_id<1>,value<17999.98>,name<y>,time<12:49:30>,date<23-09-04> Event : CORE VAR_CHANGED int_obj_id<1>,value<Семнадцать тысяч девятсот девяносто девять рублей 98 копеек>,name<x>,time<12:49:30>,date<23-09-04> |
ФОРМАТИРОВАНИЯ | |
number_frm[2] | Форматирование числа. Формат: x=number_frm(y,z); где x – значение функции, y-исходное число, z – количество цифр после запятой Пример: y=(17999.09998); x=number_frm(y,3); Полученное событие: Event : CORE VAR_CHANGED int_obj_id<1>,value<17999.09998>,name<y>,time<14:21:24>,date<23-09-04> Event : CORE VAR_CHANGED int_obj_id<1>,value<17999.100>,name<x>,time<14:21:24>,date<23-09-04> |
int_frm[2] | Форматирование числа. Формат: x=int_frm(y,z); где x – значение, y-исходное число, z – количество цифр в числе на выходе Пример: y=(17999.99); x=int_frm(y,10); Полученное событие: Event : CORE VAR_CHANGED int_obj_id<1>,value<17999.99>,name<y>,time<14:31:46>,date<23-09-04> Event : CORE VAR_CHANGED int_obj_id<1>,value<0000017999>,name<x>,time<14:31:46>,date<23-09-04> |
сurrency_std[1] | Форматирование значения числа, представляющего деньги (замена '.' на '-'). Формат: x=currency_std(y); где x – значение функции с измененным форматом, y – число (денежная сумма) Пример: x=currency_std(3.62); Полученное событие: Event : CORE VAR_CHANGED int_obj_id<1>,value<3-62>,name<x>,time<13:40:01>,date<23-09-04> |
IsVarExist[1] | Функция проверки заданного параметра в событии. Формат: y=IsVarExist(“x”); где y - значение, x – параметр Если параметр существует, возвращается «1», иначе «0». Пример: p=IsVarExist(“param0”) Полученное событие: Event : CORE VAR_CHANGED int_obj_id<10>,value<0>,owner<WS1>,name<p>,time<12:02:11>, guid_pk<{6A8B5BC9-919C-4098-844A-FBF78FA20820}>,date<14-12-09> |
GetObjectIdByParam [3] | Функция, возвращающая первый найденный идентификатор объекта по заданному значению параметра. Id=GetObjectIdByParam ("x","y","z"); где id - возвращаемое значение, x – тип объекта, y – параметр, z – значение параметра Пример: Id=GetObjectIdByParam("CAM","color","0"); Полученное событие: Event : CORE VAR_CHANGED date<28-02-11>,value<2>,int_obj_id<1>,fraction<218>,name<Id>, guid_pk<{F903A28C-3243-E011-901F-6CF049E58698}>,time<15:02:04>,owner<D-IVANOV> * Id=2 (см. value<2>), если функция возвращает пустое значение (value< >), необходимо проверить правильность написания параметров и самой функции. |
СТРОКОВЫЕ | |
strequal[2] | Сравнение строк. Формат: x=strequal(z,y); где x – значение, z и y – сравниваемые строки Пример: z=str(1019); y=str(1019); x=strequal(z,y); Полученное событие: Event : CORE VAR_CHANGED int_obj_id<1>,value<1019>,name<z>,time<16:51:45>,date<23-09-04> Event : CORE VAR_CHANGED int_obj_id<1>,value<1019>,name<y>,time<16:51:45>,date<23-09-04> Event : CORE VAR_CHANGED int_obj_id<1>,value<1>,name<x>,time<16:51:45>,date<23-09-04> * «value<1>» (см. пример выше) – в полученном событии мы получаем либо «value<>» – это означает что сравниваемые строки не совпадают, либо «value<1>» – это значит что сравниваемые строки полностью идентичны друг другу. |
strsub[2] | Определение наличия подстроки в строке. Формат: x=strsub(y,z); где x-значение, y – строка, в которой ведется поиск, z-подстрока Пример №1: z=str(888123); y=str(123); x=strsub(z,y); Полученное событие: Event : CORE VAR_CHANGED int_obj_id<1>,value<888123>,name<z>,time<16:07:07>,date<23-09-04> Event : CORE VAR_CHANGED int_obj_id<1>,value<123>,name<y>,time<16:07:07>,date<23-09-04> Event : CORE VAR_CHANGED int_obj_id<1>,value<4>,name<x>,time<16:04:34>,date<23-09-04> Пример №2: z="67hb8vc56"; y="vc"; x=strsub(z,y); Полученное событие: Event : CORE VAR_CHANGED value<67hb8vc56>,name<z>,time<12:15:09>,date<18-03-08> Event : CORE VAR_CHANGED value<vc>,name<y>,time<12:15:09>,date<18-03-08> Event : CORE VAR_CHANGED value<6>,name<x>,time<12:15:09>,date<18-03-08> * "value<4>" (см. пример № 1) означает индекс в исходной строке, начиная с которого обнаружено первое вхождение подстроки в эту строку. При отрицательном результате поиска функция возвращает значение value<>. |
strempty[1] | Определение пуста ли строка. Формат: x=strempty(y); где x – значение (равно 1 если строка пуста), y – строка Пример: y=(""); x=strempty(y); Полученное событие: Event : CORE VAR_CHANGED value< >, name<y>,time<12:27:32>,date<18-03-08> Event : CORE VAR_CHANGED value<1>,name<x>,time<12:27:32>,date<18-03-08> * значение функции value <> означает, что строка не пуста. |
straleft[2] | Выравнивание влево. Формат: x=straleft(y,z); где x – выровненная строка, y – строка, z – значение Пример: y=str(123456789); x=straleft(y,5); Полученное событие: Event : CORE VAR_CHANGED int_obj_id<1>,value<123456789>,name<y>,time<18:04:05>,date<23-09-04> Event : CORE VAR_CHANGED int_obj_id<1>,value<12345>,name<x>,time<18:04:05>,date<23-09-04> Примечание. В случае, если число z больше, чем количество символов в строке, функция дополняет исходную строку пробелами справа до тех пор, пока ее длина не станет равна числу z. |
strmid[3] | Взять подстроку. Формат: x=strmid(y,z,w); где x – строковое значение, y – строка, z – с какой позиции строки, w – длина подстроки Пример: z=(7);//с какой позиции w=(9);//длина x=strmid("взять подстроку (1 - строка, 2 - с какой позиции, 3 - длинна)",z,w); y=strmid("взять подстроку (1 - строка, 2 - с какой позиции, 3 - длинна)",17,10); Полученное событие: Event : CORE VAR_CHANGED int_obj_id<1>,value<6>,name<z>,time<14:18:08>,date<24-09-04> Event : CORE VAR_CHANGED int_obj_id<1>,value<9>,name<w>,time<14:18:08>,date<24-09-04> Event : CORE VAR_CHANGED int_obj_id<1>,value<подстроку>,name<x>,time<14:18:08>,date<24-09-04> Event : CORE VAR_CHANGED int_obj_id<1>,value<1 – строка>,name<y>,time<14:18:08>,date<24-09-04> |
strletf[2] | Взять левую часть строки. Формат: y=strleft(s,w); где y –строковое значение, s – строка, w – длина (с начала строки) Пример: w=(5);//длина s=("Взять левую часть строки");//строка y=strleft(s,w); Полученное событие: Event : CORE VAR_CHANGED int_obj_id<1>,value<5>,name<w>,time<14:54:31>,date<24-09-04> Event : CORE VAR_CHANGED int_obj_id<1>,value<Взять левую часть строки>,name<s>,time<14:54:31>,date<24-09-04> Event : CORE VAR_CHANGED int_obj_id<1>,value<Взять>,name<y>,time<14:54:31>,date<24-09-04> |
strright[2] | Взять правую часть строки (1 – строка, 2 – длина). Формат: y=strleft(s,w); где y – строковое значение, s – строка, w – длина (с конца строки) Пример: w=(6);//длина s=("Взять правую часть строки");//строка y=strright(s,w); Полученное событие: Event : CORE VAR_CHANGED int_obj_id<1>,value<6>,name<w>,time<15:10:36>,date<24-09-04> Event : CORE VAR_CHANGED int_obj_id<1>,value<Взять правую часть строки>,name<s>,time<15:10:36>,date<24-09-04> Event : CORE VAR_CHANGED int_obj_id<1>,value<строки>,name<y>,time<15:10:36>,date<24-09-04> |
strnleft[2] | Взять без левой части строки. Формат: y=strnleft(s,w); где y – строковое значение, s – строка, w – длина левой части, которая будет отсечена Пример: w=(6);//длина s=("взять без левой части строки");//строка y=strnleft(s,w); Полученное событие: Event : CORE VAR_CHANGED int_obj_id<1>,value<6>,name<w>,time<15:32:38>,date<24-09-04> Event : CORE VAR_CHANGED int_obj_id<1>,value<взять без левой части строки>,name<s>,time<15:32:38>,date<24-09-04> Event : CORE VAR_CHANGED int_obj_id<1>,value<без левой части строки>,name<y>,time<15:32:38>,date<24-09-04> |
srtnright[2] | Взять без правой части строки. Формат: y=strnright(s,w); где y – строковое значение, s – строка, w – длина правой части, которая будет отсечена. Пример: w=(6);//длина s=("взять без правой части строки");//строка y=strnright(s,w); Полученное событие: Event : CORE VAR_CHANGED int_obj_id<1>,value<6>,name<w>,time<15:44:31>,date<24-09-04> Event : CORE VAR_CHANGED int_obj_id<1>,value<взять без правой части строки>,name<s>,time<15:44:31>,date<24-09-04> Event : CORE VAR_CHANGED int_obj_id<1>,value<взять без правой части >,name<y>,time<15:44:31>,date<24-09-04> |
get_substr[3] | Взять подстроку (1 – строка, 2 – подстрока с которой начать, 3 – подстрока которой завершить, "\r" – конец строки). Формат: y=get_substr(s,w,x); где y – значение(подстрока), s – строка, w – подстрока с которой начать, x – подстрока которой завершить("\r" – конец строки) Формат записи: <NN.NN> Пример: s=("взять подстроку 1234567890");//строка w=("по");//подстрока с которой начать x=("\r");//подстрока которой завершить, "\r" – конец строки y=get_substr(s,w,x); Полученное событие: Event : CORE VAR_CHANGED int_obj_id<1>,value<взять подстроку 1234567890>,name<s>,time<16:34:13>,date<24-09-04> Event : CORE VAR_CHANGED int_obj_id<1>,value<по>,name<w>,time<16:34:13>,date<24-09-04> Event : CORE VAR_CHANGED int_obj_id<1>,value<\r>,name<x>,time<16:34:13>,date<24-09-04> Event : CORE VAR_CHANGED int_obj_id<1>,value<подстроку 1234567890>,name<y>,time<16:34:13>,date<24-09-04> Пример: s=("взять подстроку 1234567890");//строка w=("по");//подстрока с которой начать x=(1);//подстрока которой завершить, "\r" – конец строки y=get_substr(s,w,x); Полученное событие: Event : CORE VAR_CHANGED int_obj_id<1>,value<взять подстроку 1234567890>,name<s>,time<16:36:26>,date<24-09-04> Event : CORE VAR_CHANGED int_obj_id<1>,value<по>,name<w>,time<16:36:26>,date<24-09-04> Event : CORE VAR_CHANGED int_obj_id<1>,value<1>,name<x>,time<16:36:26>,date<24-09-04> Event : CORE VAR_CHANGED int_obj_id<1>,value<подстроку >,name<y>,time<16:36:26>,date<24-09-04> |
strltrim[1] | Убрать пробелы слева. Формат: y=strltrim(w); где y – полученное строковое значение, w – строка Пример: w=(" убрать пробелы слева");//строка y=strltrim(w); Полученное событие: Event : CORE VAR_CHANGED int_obj_id<1>,value< убрать пробелы слева>,name<w>,time<17:07:49>,date<24-09-04> Event : CORE VAR_CHANGED int_obj_id<1>,value<убрать пробелы слева>,name<y>,time<17:07:49>,date<24-09-04> |
strrtrim[1] | Убрать пробелы справа. Формат: y=strrtrim(w); где y – полученное строковое значение, w – строка Пример: w=("Убрать пробелы справа ");//строка y=strrtrim(w); Полученное событие: Event : CORE VAR_CHANGED int_obj_id<1>,value<Убрать пробелы справа >,name<w>,time<17:18:35>,date<24-09-04> Event : CORE VAR_CHANGED int_obj_id<1>,value<Убрать пробелы справа>,name<y>,time<17:18:35>,date<24-09-04> |
stratrim[1] | Убрать пробелы с обеих сторон. Формат: y=stratrim(w); где y – полученное строковое значение, w – строка Пример: w=(" убрать пробелы с обеих сторон ");//строка y=stratrim(w); Полученное событие: Event : CORE VAR_CHANGED int_obj_id<1>,value< убрать пробелы с обеих сторон >,name<w>,time<17:27:44>,date<24-09-04> Event : CORE VAR_CHANGED int_obj_id<1>,value<убрать пробелы с обеих сторон>,name<y>,time<17:27:44>,date<24-09-04> |
Примечание.