Fórmulas
- Actualizado: 2021/04/20
Fórmulas
Para las validaciones calculadoras o comparativas, en la vista de diseño, especifique una fórmula como parte de las opciones de validación para un campo seleccionado o una columna de tabla.
Prerequisites
Únicamente puede especificar la validación de la fórmula cuando el formato del campo o la columna de tabla es un número.
- En Designerlavista Vista previa ( Ver resultados de extracción ), la validación de fórmulas marca los errores como se esperaba para procesar los documentos de formación.
- Cargue los mismos documentos en producción. Los documentos se procesan y fallan debido a la misma validación de fórmula.
- En Validatorla , la misma validación de fórmula continúa mostrando errores para procesar los documentos.
Para especificar una fórmula para la validación, realice los pasos siguientes.
Procedure
- Seleccione el tipo de validación Fórmula en el menú desplegable Validar.
- Escriba la fórmula que prefiera y haga clic en definir para guardar la fórmula.
- Para escribir una fórmula, se pueden utilizar operaciones aritméticas básicas, comparativas, lógicas y funcionales. Las reglas de validación se pueden crear combinando estas operaciones con diferentes campos y columnas de tabla.
-
Rellene los campos del formulario, según corresponda.
Table 1. Operadores matemáticos Operaciones Descripción Sintaxis + Adición Campo/Nombre_columna1 + Campo/Nombre_columna2 - Resta Campo/Nombre_columna1 - Campo/Nombre_columna2 * Multiplicación Campo/Nombre_columna1 * Campo/Nombre_columna2 / División Campo/Nombre_columna1 / Campo/Nombre_columna2 Table 2. Operadores comparativos Operaciones Descripción Sintaxis == Igual que [Campo actual/nombre de columna] = [expresión compuesta por uno o más nombres de campos/columnas y/o valores numéricos fijos]
Por ejemplo, AMOUNT == MUL(QUANTITY, UNIT_PRICE)
>= Mayor o igual que [Campo actual/nombre de columna] = [expresión compuesta por uno o más nombres de campos/columnas y/o valores numéricos fijos]
Por ejemplo, TOTAL_BILL_AMOUNT = AMOUNT_PAID
<= Menor o igual que [Campo actual/nombre de columna] <= [expresión compuesta por uno o más nombres de campos/columnas y/o valores numéricos fijos]
Por ejemplo, AMOUNT_PAID <= TOTAL_BILL_AMOUNT
> Mayor que [Campo actual/nombre de columna] = [expresión compuesta por uno o más nombres de campos/columnas y/o valores numéricos fijos]
Por ejemplo, BILL_AMOUNT 0
< Menor que [Campo actual/nombre de columna] = [expresión compuesta por uno o más nombres de campos/columnas y/o valores numéricos fijos]
Por ejemplo, DISCOUNT_PERCENTAGE < 100
!= No es igual que [Campo actual/nombre de columna] = [expresión compuesta por uno o más nombres de campos/columnas y/o valores numéricos fijos]
Por ejemplo, DEBIT_AMOUNT != 0
Table 3. Operadores lógicos Operaciones Descripción Sintaxis && Y: El campo/columna es válido si todas las condiciones son verdaderas
<Current Field/Column Name> <operator 1> <expression 1> && <Current Field/Column Name> <operator 2> <expression 2>
Por ejemplo, DISCOUNT_PERCENTAGE &&= 0 DISCOUNT_PERCENTAGE <=100
|| O: El campo/columna es válido si alguna de las condiciones dadas es verdadera
<Current Field/Column Name> <operator 1> <expression 1> || <Current Field/Column Name> <operator 2> <expression 2>
Por ejemplo, DISCOUNT_PERCENTAGE = 0 || DISCOUNT_PERCENTAGE == 'Net'
! No: Convierte una expresión verdadera en falsa y también al revés
!<expression>
Por ejemplo, !(AGE < 18) ==> válido cuando AGE no es inferior a 18
Table 4. Operadores funcionales Operaciones Descripción Sintaxis SUM Sumatoria: da el resultado de la adición de uno o más valores de campo/columna/número fijo
SUM(n1,n2,....,nN)
Por ejemplo, SUM(SUB_TOTAL, SERVICE_TAX, EDUCATION_CESS) == equivalente a SUB_TOTAL más SERVICE_TAX más EDUCATION_CESS
SUB Resta: Da como resultado la resta de uno o más valores de campo/columna/número fijo del primer valor especificado
SUB(n1,n2,....,nN)
FPor ejemplo, SUB(SUB_TOTAL, TOTAL_DISCOUNT, ADJUSTMENTS) == equivalente a SUB_TOTAL menos TOTAL_DISCOUNT menos ADJUSTMENTS
MUL Multiplicación: da el resultado de la multiplicación de uno o más valores de campo/columna/número fijo
MUL(n1,n2,....,nN)
Por ejemplo, MUL(QTY_IN_BOX, UNIT_PRICE, SHIPPED_BOXES) == equivalente a QTY_IN_BOX multiplicado por UNIT_PRICE multiplicado por SHIPPED_BOXES
DIV División: da como resultado la división de uno o más valores de campo/columna/número fijo del primer valor especificado
DIV(n1,n2,....,nN)
Por ejemplo, DIV(AMOUNT, SHIPPED_BOXES, UNIT_PRICE) == equivalente a AMOUNT dividido entre SHIPPED_BOXES dividido entre UNIT_PRICE
COLSUM Suma de una columna determinada en una tabla: da el resultado después de evaluar la expresión dada para cada fila de la tabla especificada y agregarlos todos juntos
COLSUM("<table-name>", "<expression to evaluate for each row of specified table-name>")
Por ejemplo, FINAL_TOTAL == COLSUM(LINE_ITEMS, MUL(QTY, UNIT_PRICE))
Digamos que hay 3 filas para la tabla LINE_ITEMS, entonces FINAL_TOTAL debe ser igual a MUL(QTY1, UNIT_PRICE1) + MUL(QTY2, UNIT_PRICE2) + MUL(QTY3, UNIT_PRICE3)
donde, QTY1 es el valor de QTY en la fila 1, de forma similar UNIT_PRICE1 es el valor de UNIT_PRICE en la fila 2, y así sucesivamente para las otras filas.
Tip: Se recomienda utilizar operadores funcionales en lugar de operadores matemáticos al validar campos y tablas para una mejor precisión.Al formular una expresión, recuerde lo siguiente:- Todos los nombres de función deben estar en mayúsculas.
- Todas las fórmulas deben dar como resultado una validación de verdadero o falso.
- Los nombres de campos y columnas distinguen entre mayúsculas y minúsculas cuando se utilizan dentro de las fórmulas. Si el campo está definido como Cant. en diseño, usar qty o QTY en la fórmula da como resultado una fórmula inválida.
- Para la declaración o manipulación de variables, asegúrese de no utilizar determinadas palabras clave reservadas para formular una expresión.