Las fórmulas utilizadas se deben escribir obligatoriamente en sintaxis AdvPL para que el sistema pueda interpretarlas.
Para elaborar fórmulas:
Indicación de un campo de otro archivo
SE1->E1_Valor = valor de la moneda 1 del archivo SE1- Archivo de títulos por cobrar.
Operación entre campos o partes fijas (alfanumérica)
Se utiliza para montar un dato con la unión de informaciones que están en campos diferentes o con una parte considerada fija. Su complemento tiene como referencia el nombre de un campo.
CUENTA CONTABLE = SA1->A1_CONTA + SE1-> E1_NATUREZ
HISTORIAL = “Referente al pago de factura de crédito” + SE1->E1_NUM
Operaciones matemáticas, con o sin condición, se utilizan para obtener un valor representado en varios campos, así como una información cuyas fórmulas matemáticas se deben aplicar sobre un determinado campo.
PRECIO DE VENTA =
IIF(DAY(Dbase)=15,B1_PRV2*0,10,B1_PRV1)
TOTAL DE COMISIÓN PAGADA A UN TÍTULO =
(SE1->E1_COMIS1+SE1->E1_COMIS2+SE1->E1_COMIS3+ SE1->E1_COMIS4 + SE1->COMIS5)
Operación con la UserFunction y campos del sistema.
Utilización del campo Fórmula Plazo del archivo de productos para crear una UserFunction.
UserFunction FORMPRZ()
Return
2. En el Archivo de fórmulas, es necesario vincular una UserFunction a una fórmula para calcular el plazo de entrega:
Código | 001 |
Descripción | Fórmula plazo de entrega |
Fórmula | EXECBLOCK(\"FORMPRZ\",.F.,.F.) |
En este momento, la UserFunction se ejecuta para hacer la prueba (validación). Si aparece alguna inconsistencia, el sistema no permite grabar la fórmula.
3. Después de registrar la fórmula, modifique la UserFunction para definir la forma del cálculo del plazo de entrega. Ejemplo:
UserFunction FORMPRZ()
// El plazo de entrega mínimo válido para cada 100 piezas, es el período informado en el
// campo Entrega
Return Max((CANTIDAD/100)*SB1->B1_PE,SB1→B1_PE)
4. Informe en el campo Plazo Entrega el código de la fórmula registrada, en este caso "001".
5. La variable CANTIDAD utilizada en el ejemplo de la UserFunction FORMPRZ(), existirá cuando se ejecute la función creada y vinculada a la fórmula del plazo.