La siguiente tabla ofrece una descripción general y ejemplos de uso de funciones matemáticas, funciones de conversión, además de funciones de formato y funciones de cadena.
Funciones (El número de parámetros ejecutables está especificado en corchetes) | Descripción general, ejemplo de uso |
MATEMÁTICAS | |
sin[1] | Función trigonométrica: el seno de un ángulo. Formato: y=sin(x); donde y – valor de la función, x – argumento de la función (en radianes) Ejemplo: y=sin(1.6) Evento recibido: Event : CORE VAR_CHANGED nt_obj_id<1>,value<0.997495>,name<y>,time<15:26:41>,date<21-09-04> |
сos[1] | Función trigonométrica: el coseno de un ángulo. Formato: y=cos(x); donde y – valor de la función, x – argumento de la función (en radianes) Ejemplo: y=cos(2.2) Evento recibido: Event : CORE VAR_CHANGED int_obj_id<1>,value<-0.588501>,name<y>,time<16:00:45>,date<21-09-04> |
tan[1] | Función trigonométrica, devuelve la tangente de un ángulo. Formato: y=tan(x); donde y – valor de la función, x – argumento de la función (en radianes) Ejemplo: y=tan(1) Evento recibido: Event : CORE VAR_CHANGED int_obj_id<1>,value<1.557408>,name<y>,time<16:43:45>,date<21-09-04> |
asin[1] | Devuelve el arcoseno de la expresión numérica especificada. Formato: y=asin(x); donde y – valor de la función (en radianes), x- argumento Ejemplo: y=asin(0.5) Evento recibido: Event : CORE VAR_CHANGED int_obj_id<1>,value<0.523599>,name<y>,time<16:46:39>,date<21-09-04> |
acos[1] | Devuelve el coseno del arco de la expresión numérica especificada. Formato: y=acos(x); donde y – valor de la función (en radianes), x – argumento Ejemplo: y=acos(0.55) Evento recibido: Event : CORE VAR_CHANGED int_obj_id<1>,value<0.988432>,name<y>,time<16:46:39>,date<21-09-04> |
atan[1] | Devuelve la tangente del arco de la expresión numérica especificada. Formato: y=atan(x); donde y – valor de la función (en radianes), x – argumento Ejemplo: y=atan(1.2) Evento recibido: Event : Event : CORE VAR_CHANGED int_obj_id<1>,value<0.876058>,name<y>,time<17:07:09>,date<21-09-04> |
sinh[1] | La función sinh devuelve el seno hiperbólico del valor del argumento. Formato: y=sinh(x); donde y –valor de la función, x – argumento de la función Ejemplo: y=sinh(0.8) Evento recibido: Event : CORE VAR_CHANGED int_obj_id<1>,value<0.888106>,name<y>,time<17:12:26>,date<21-09-04> |
сosh[1] | La función cosh devuelve el coseno hiperbólico del valor del argumento. Formato: y=cosh(х); donde y –valor de la función, x – argumento de la función Ejemplo: y=cosh(0.35) Evento recibido: Event : CORE VAR_CHANGED int_obj_id<1>,value<0.336376>,name<y>,time<17:25:25>,date<21-09-04> |
tanh[1] | Función trigonométrica de un ángulo. Formato: y=tanh(x); donde y –valor de la función, x – argumento de la función Ejemplo: y=tanh(0.35) Evento recibido: Event : CORE VAR_CHANGED int_obj_id<1>,value<1.419068>,name<y>,time<17:25:25>,date<21-09-04> |
exp[1] | Devuelve el valor de la funcióne^x, donde x – expresión numérica especificada. Formato: y=exp(x); donde y – valor de la función, x – argumento Ejemplo: y=exp(1.65) Evento recibido: Event : CORE VAR_CHANGED int_obj_id<1>,value<5.20698>,name<y>,time<17:39:22>,date<21-09-04> |
log[1] | Devuelve el logaritmo natural (base-e) de la expresión numérica especificada. Formato: y=log(x); donde y–valor de la función, x – argumento Ejemplo: y=log(0.65) Evento recibido: Event : CORE VAR_CHANGED int_obj_id<1>,value<-0.430783>,name<y>,time<17:43:22>,date<21-09-04> |
log10[1] | Devuelve el logaritmo común (base-10) de la expresión numérica especificada. Formato: y=log10(x); donde y–valor de la función, x – argumento Ejemplo: y=log10(0.05) Evento recibido: Event : CORE VAR_CHANGED int_obj_id<1>,value<-1.30103>,name<y>,time<17:46:28>,date<21-09-04> |
sqrt[1] | Devuelve la raíz cuadrada de la expresión numérica especificada. Formato: y=sqrt(x); donde y–valor de la función, x – argumento Ejemplo: y=sqrt(9) Evento recibido: Event : CORE VAR_CHANGED int_obj_id<1>,value<3>,name<y>,time<17:25:25>,date<21-09-04> |
abs[1] | La función abs devuelve el valor absoluto del argumento. Formato: y=abs(x); donde y–valor de la función, x – argumento. Ejemplo: y= abs(-1) Evento recibido: Event : CORE VAR_CHANGED int_obj_id<1>,value<1>,name<y>,time<13:39:37>,date<22-09-04> |
deg[1] | Función trigonométrica de un ángulo. Devuelve la medida de grado. Formato: y=deg(x); donde y – valor de la función en grados, x – valor del argumento en radianes. Ejemplo: y=deg(3.14) Evento recibido: Event : CORE VAR_CHANGED int_obj_id<1>,value<179.908748>,name<y>,time<13:13:51>,date<22-09-04> |
rad[1] | Función trigonométrica de un ángulo. Formato: y=rad(x); donde y – valor de la función en radianes, x – valor del argumento en grados. Ejemplo: y=rad(180) Evento recibido: Event : CORE VAR_CHANGED value<3.141593>,name<y>,time<15:04:17>,date<17-03-08> |
CONVERSIÓN | |
floor[1] | Función de conversión a enteros (redondeando a la baja). Formato: x= floor(y); donde x – valor de la función, y- fracción o entero Ejemplo: x= floor(5.55) Evento recibido: Event : CORE VAR_CHANGED int_obj_id<1>,value<5>,name<x>,time<20:51:48>,date<21-09-04> |
ceil[1] | Función de conversión a enteros (redondeando al alza). Formato: x= ceil (y); donde x – valor de la función, y – fracción o entero. Ejemplo: x= ceil(5.55) Evento recibido: Event : CORE VAR_CHANGED int_obj_id<1>,value<6>,name<x>,time<20:51:48>,date<21-09-04> |
str[1] | Función de conversión de entero a cadena. Formato: x=str(y); donde x–valor de la función, y – argumento Ejemplo: z=(9); a=str(z); b=sqrt(a); Eventos recibidos: 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] | Función de conversión de cadena a entero. Formato: x=atof(y); donde x–valor de la función, y – argumento Ejemplo: x="0"; x=str(atof(x)+10); Evento recibido: 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] | Función de conversión de entero a cadena. Formato: x=val(y); donde x–valor de la función, y – argumento Ejemplo: x="10"; x=str(val(x)+2); Eventorecibido: 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] | Conversión de fracción a entero (sin la parte fraccional) Formato: x=int(y); donde x –valor de la función, y – argumento (fracción para la conversión) Ejemplo: y=(2.33); x=int(y); Eventorecibido: 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] | Se usa para convertir el número especificado de segundos en tiempo. Formato: x=long2time(y); donde x –valor de la función(tiempo), y –número en segundos Formato de la grabación inicial (argumento): <MM> Formato de la grabación final: <HH:MM:SS> Ejemplo: x=long2time(12345); Evento recibido: Event : CORE VAR_CHANGED int_obj_id<1>,value<03:25:45>,name<x>,time<13:53:02>,date<20-09-04>. |
time2long[1] | Convertir tiempo en un número de segundos Formato: x=time2 long(y); donde x –valor en segundos, y–tiempo en formato <horas>.<minutos>. Ejemplo: y=(0.15); x=time2long(y); Eventorecibido: 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] | Convertir un número de días en una fecha. (número de días partiendo de d.C.) Formato: x= scalar2date (y); donde– x- valor(fecha), y – número de días. Ejemplo: y=(731500); x=scalar2date(y); Eventorecibido: 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] | Convertir una fecha en un número de días. (El número de días se calcula partiendo de d.C.) Formato: x=scalar(y); donde x –valor numérico (en días), y –fecha. Formato de grabación: <DD.MM.YYYY> Ejemplo: x=scalar(“19.10.2004”) Evento recibido: 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] | Convertir un número en la cadena. Formato: x=convert_num(y); donde x –valor de la cadena del número, y –número convertible. Ejemplo: y=(24009921); x=convert_num(y); Eventorecibido: 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<Twenty four million nine thousand nine hundred twenty-one >,name<x>,time<12:37:20>,date<23-09-04> |
convert_cur[1] | Conversión de un número (suma de dinero) en la cadena y añadir rublos y kopeks. Formato: x=convert_cur(y); donde x –valor de la cadena de la suma de dinero, y–número (suma de dinero). Formato de grabación: <RR.KK> Example: y=(17999.98); x=convert_cur(y); Eventorecibido: 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<Seventeen thousand nine hundred ninty-nine roubles ninty-eight copecks>,name<x>,time<12:49:30>,date<23-09-04> |
FORMATEADO | |
number_frm[2] | Formateo de un número Formato: x=number_frm(y,z); donde x – valor de la función, y– número inicial, z –cantidad de números que siguen al decimal. Ejemplo: y=(17999.09998); x=number_frm(y,3); Eventorecibido: 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] | Formateo de un número Formato: x=int_frm(y,z); donde x – valor, y – operando, z –número de dígitos resultante. Ejemplo: y=(17999.99); x=int_frm(y,10); Eventorecibido: 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] | Formateodel valor de la moneda (de '.' a '-'). Formato: x=currency_std(y); donde x –valor de la función con formato modificado, y– número (suma de dinero). Ejemplo: x=currency_std(3.62); Evento recibido: Event : CORE VAR_CHANGED int_obj_id<1>,value<3-62>,name<x>,time<13:40:01>,date<23-09-04> |
IsVarExist[1] | La función que comprueba un parámetro especificado en el evento. Formato: y=IsVarExist(“x”); donde y –valor, x – parámetro Si existe el parámetro, devuelve “1”, de lo contrario, devolverá “0” Ejemplo: p=IsVarExist(“param0”) Evento recibido: 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]
| La función que devuelve la ID del primer objeto que se encuentre por parámetro especificado. Id=GetObjectIdByParam ("x","y","z"); donde id – valor devuelto, x – tipo de objeto, y – parámetro, z – valor del parámetro. Ejemplo: Id=GetObjectIdByParam("CAM","color","0"); Eventorecibido: 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 (seevalue<2>), si la función devuelve un valor vacío (value<>), compruebe si ésta y sus parámetros están escritos correctamente. |
CADENAS | |
strequal[2] | Comparación de cadenas Formato: x= strequal(z,y); donde x – valor, z + y – cadenas en comparación. Ejemplo: z=str(1019); y=str(1019); x=strequal(z,y); Evento recibido: 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>» (ver los ejemplos de arriba) – en el evento recibido, obtenemos «value<>» - si las cadenas en comparación difieren, o «value<1>» - silas cadenas en comparación son idénticas. |
strsub[2] | Indica si existe una subcadena en la cadena. Formato: x=strsub(y,z); donde x –valor, y – cadena en la que se realiza la búsqueda, z – subcadena. Ejemplo 1: z=str(888123); y=str(123); x=strsub(z,y); Evento recibido: 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> Ejemplo 2: z="67hb8vc56"; y="vc"; x=strsub(z,y); Evento recibido: 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>" (ver el ejemplo 1) – Indexar la cadena de inicio. Partiendo de este índice, se detecta la primera ocurrencia de la subcadena en la cadena. Si el resultado de la búsqueda es negativo, la función devuelve el valor<>. |
strempty[1] | Definir si la cadena está vacía. Formato: x=strempty(y); donde x – valor (1 si la cadena está vacía), y – cadena. Ejemplo: y=(""); x=strempty(y); Eventorecibido: 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> * el valor de la función<>significa que la cadena no está vacía. |
straleft[2] | Alineado a la izquierda Formato: x=straleft(y,z); donde x – cadena alineada, y – cadena, z – valor del alineado. Ejemplo: y=str(123456789); x=straleft(y,5); Eventorecibido: 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> Nota. Si z es mayor que el número de símbolos en la cadena, la función añade espacios a la derecha de la cadena inicial hasta que su longitud alcanza z. |
strmid[3] | Obtener subcadena Formato: x=strmid(y,z,w); donde x – valor de la cadena, y- cadena, z – posición de la cadena, w – longitud de la cadena. Ejemplo: z=(7);//posición w=(9);//longitud x=strmid("get substring (1 - string, 2 - position, 3 - length)",z,w); y=strmid("get substring (1 - string, 2 - position, 3 - length)",17,10); Eventorecibido: 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<substring>,name<x>,time<14:18:08>,date<24-09-04> Event : CORE VAR_CHANGED int_obj_id<1>,value<1 – string>,name<y>,time<14:18:08>,date<24-09-04> |
strletf[2] | Obtener el lado izquierdo de una cadena Formato: y=strleft(s,w); donde y –valor de la cadena, s- cadena, w- longitud (desde el inicio de la cadena) Ejemplo: w=(5);//longitud s=("Get left side of string");//cadena y=strleft(s,w); Eventorecibido: 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< Get left side of string>,name<s>,time<14:54:31>,date<24-09-04> Event : CORE VAR_CHANGED int_obj_id<1>,value<Get>,name<y>,time<14:54:31>,date<24-09-04> |
strright[2] | Obtener el lado derecho de una cadena (1 –cadena, 2 –longitud) Formato: y=strleft(s,w); donde y –valor de la cadena, s – cadena, w – longitud(desde el final de la cadena) Ejemplo: w=(6);// longitud s=("Get right side of string");// y=strright(s,w); Eventorecibido: 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< Get right side of string>,name<s>,time<15:10:36>,date<24-09-04> Event : CORE VAR_CHANGED int_obj_id<1>,value<strings>,name<y>,time<15:10:36>,date<24-09-04> |
strnleft[2] | Obtener sin el ladoizquierdo de la cadena. Formato: y=strnleft(s,w); donde y –valor de la cadena, s – cadena, w –longitud del lado izquierdo que se cortará. Ejemplo: w=(6);//longitud s=("get without left side of string");//cadena y=strnleft(s,w); Eventorecibido: 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<get without left side of string>,name<s>,time<15:32:38>,date<24-09-04> Event : CORE VAR_CHANGED int_obj_id<1>,value<without left side of string>,name<y>,time<15:32:38>,date<24-09-04> |
srtnright[2] | Obtener sin el lado derecho de la cadena. Formato: y=strnright(s,w); donde y –valor de la cadena, s – cadena, w – longitud del lado derecho que se cortará. Ejemplo: w=(6);//longitud s=("get without right side of string");//cadena y=strnright(s,w); Eventorecibido: 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<get without right side of string>,name<s>,time<15:44:31>,date<24-09-04> Event : CORE VAR_CHANGED int_obj_id<1>,value< get without right side>,name<y>,time<15:44:31>,date<24-09-04> |
get_substr[3] | Obtener subcadena(1 –cadena, 2 – subcadena con la que iniciar, 3 – subcadena con la que finalizar, "\r" –final de la cadena) Formato: y=get_substr(s,w,x); donde y –valor(subcadena), s – cadena, w –subcadena con la que iniciar, x–subcadena con la que finalizar("\r" – final de la cadena) Formato de grabación: <NN.NN> Ejemplo: s=("getsubstring 1234567890");//cadena w=("to");// subcadena con la que iniciar x=("\r");//subcadena con la que finalizar, "\r" –final de la cadena y=get_substr(s,w,x); Eventorecibido: Event : CORE VAR_CHANGED int_obj_id<1>,value<get substring 1234567890>,name<s>,time<16:34:13>,date<24-09-04> Event : CORE VAR_CHANGED int_obj_id<1>,value<sub>,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<substring 1234567890>,name<y>,time<16:34:13>,date<24-09-04> Ejemplo: s=("getsubstring 1234567890");//cadena w=("to");// subcadena con la que iniciar x=(1);//subcadena con la que finalizar, "\r" –final de la cadena y=get_substr(s,w,x); Eventorecibido: Event : CORE VAR_CHANGED int_obj_id<1>,value<get substring 1234567890>,name<s>,time<16:36:26>,date<24-09-04> Event : CORE VAR_CHANGED int_obj_id<1>,value<sub>,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<substring >,name<y>,time<16:36:26>,date<24-09-04> |
strltrim[1] | Borrar espacios a la izquierda Formato: y=strltrim(w); donde y –valor de la cadena de resultado, w – cadena. Ejemplo: w=(" remove spaces on the left");//cadena y=strltrim(w); Evento recibido: Event : CORE VAR_CHANGED int_obj_id<1>,value< remove spaces on the left>,name<w>,time<17:07:49>,date<24-09-04> Event : CORE VAR_CHANGED int_obj_id<1>,value<remove spaces on the left>,name<y>,time<17:07:49>,date<24-09-04> |
strrtrim[1] | Borrar espacios a la derecha Formato: y=strrtrim(w); donde y–valor de la cadena de resultado, w –cadena. Ejemplo: w=("Remove spaces on the right ");//cadena y=strrtrim(w); Evento recibido: Event : CORE VAR_CHANGED int_obj_id<1>,value<Remove spaces on the right >,name<w>,time<17:18:35>,date<24-09-04> Event : CORE VAR_CHANGED int_obj_id<1>,value<Remove spaces on the right>,name<y>,time<17:18:35>,date<24-09-04> |
stratrim[1] | Borrar espacios a ambos lados Formato: y=stratrim(w); donde y –valor de la cadena de resultado, w– cadena. Ejemplo: w=(" remove spaces on both sides ");//cadena y=stratrim(w); Evento recibido: Event : CORE VAR_CHANGED int_obj_id<1>,value< remove spaces on both sides >,name<w>,time<17:27:44>,date<24-09-04> Event : CORE VAR_CHANGED int_obj_id<1>,value<remove spaces on both sides>,name<y>,time<17:27:44>,date<24-09-04> |
Nota.