DEV AUXILIARES/SUBTOTAL
Descripción
Los auxiliares de tipo SUBTOTAL permiten definir cálculos a realizar cuando un registro se inserta, modifica o elimina con el objetivo de mantener campos con totales, normalmente en la cabecera.
Por ejemplo, el detalle de un asiento contable puede definir auxiliares para totalizar los débitos y créditos en la cabecera del comprobante.
Este tipo de auxiliar aplica a:
Modo de operación
En una pantalla de edición, cuando seleccionamos aplicar para grabar un registro, o si picamos la opción para eliminar un registro, el sistema verifica si la clase tiene auxiliares de tipo SUBTOTAL. Si los tiene los aplica.
El usuario no tiene que hacer nada, el sistema se ocupa automáticamente.
Etiquetas
Las etiquetas en uso son:
<CALCULO>
Define los comandos para el cálculo, cierra con </CALCULO>'
<REGLA>
Define la regla que verifica si debe aplicarse el subtotal, cierra con </REGLA>.
<TAG DEBITOS_Y_CREDITOS>
Sutotaliza débitos y créditos.
<TAG FSUBTOTAL>
Subtotaliza Subtotal.
<TAG MODOSUBTOTAL>
Indica la modalidad para el subtotal, valores posibles:
- DEBITOS_Y_CREDITOS Suma débitos y créditos.
- FSUBTOTAL Suma en subtotal.
Etiquetas obsoletas:
- Las etiquetas <TAG DEBITOS_Y_CREDITOS> y <TAG FSUBTOTAL> no se usan y no deberían usarse. - Se eliminarán oportunamente.
Ejemplo
La tabla ASIENTOS CONTABLES/DETALLES define dos auxiliares de tipo SUBTOTAL para totalizar en la cabecera de ASIENTOS CONTABLES.
El siguiente totaliza en los débitos de la cabecera:
<CALCULO> FDEBITOS=CAST(FBN(FCOTIZACION) * ABS(FBN(FCANTIDAD)) AS NUMERIC(20,2)) </CALCULO> <REGLA> (FBN(FTIPOIMPORTE) = 'Débito' AND FBN(FCANTIDAD) > 0) OR (FBN(FTIPOIMPORTE) = 'Crédito' AND FBN(FCANTIDAD) < 0) </REGLA>
En la etiqueta <CALCULO>, el campo a la izquierda del signo igual corresponde a la cabecera {{ASIENTOS CONTABLES]], y los campos a la derecha del signo igual corresponden al detalle del asiento. El cálculo indica que el campo FDEBITOS debe ser igual a la FCOTIZACION por la FCANTIDAD.
En la etiqueta <REGLA> indicamos que para que se ejecute el auxiliar, el campo FTIPOIMPORTE debe ser igual a 'Débito' y la cantidad > 0, o 'Crédito' y la cantidad < 0.
El auxiliar que totaliza los créditos es prácticamente igual:
<CALCULO> FCREDITOS=CAST(FBN(FCOTIZACION) * ABS(FBN(FCANTIDAD)) AS NUMERIC(20,2)) </CALCULO> <REGLA> (FBN(FTIPOIMPORTE) = 'Crédito' AND FBN(FCANTIDAD) > 0) OR (FBN(FTIPOIMPORTE) = 'Débito' AND FBN(FCANTIDAD) < 0) </REGLA>
Y cambia ligeramente respecto del anterior.