Funciones Predefinidas
Modulo de Sueldos
Objetivo:
En este procedimiento vamos a explicar el paso a paso para dar de alta una función predefinida para utilizarlo sobre la aplicación:
¿Quiénes pueden hacerlo?
Desarrolladores
Pasos a seguir:
- ir a la ruta sueldos/Resources/ para correr el aplicativo desde la terminal
- Luego correr el siguiente comando**
java -jar antlrworks-1.4.3.jar
- Dentro del ANTLRworks, debemos abrir el archivo FAFScript.g
sueldos/codigo/sueldosApp/src/app/sueldos/servicios/formulas/source/antlr
- Luego debemos agregar el import:
- Crear la regla de la función
| fxPredefinidaFuncionPrueba {$value = $fxPredefinidaLiquidarGanancias.val
- Crear la función
fxPredefinidaFuncionPrueba returns [Funcion value]
: 'FuncionPrueba' formalParameterList
{
$value = new FuncionPrueba(solver, $formalParameterList.ValueList);
}
;
- Una vez terminado todos estos cambios, dentro del antlrworks-1.4.3.jar sobre la barra de menús, Generate, “Generate Code”, y esperamos a que termine.
- Este proceso generará 3 archivos ubicados en la direccion que aparece en el mensaje:
- Estos 3 archivos aparecerán en el paquete de output
- Seleccionar esos 3 archivos, y pisaros al paquete generated, quedando así:
- Luego compilar el módulo
- Para la lógica de Negocio, se debe agregar el insert de la función que aparece en la lista de funciones:
Script/LogicaNegocio/001.sql
- Vamos a crear la clase JAVA de la función dentro del paquete de cacheables:
app.sueldos.transacciones.liquidacionSueldos.funciones.impl.cacheables
package app.sueldos.transacciones.liquidacionSueldos.funciones.impl.cacheables;
import java.util.List;
import app.sueldos.servicios.NavegadorEntidadWrapperValor;
import app.sueldos.servicios.formulas.model.iface.Atom;
import app.sueldos.transacciones.liquidacionSueldos.LiquidacionSueldosSolve;
import app.sueldos.transacciones.liquidacionSueldos.funciones.model.FuncionCacheable;
import faf.app.base.exceptions.FunctionalException;
public class FuncionPrueba extends FuncionCacheable {
public String getLogicName() {
return "FuncionPrueba";
}
public FuncionPrueba(LiquidacionSueldosSolve solver, List<Atom> parametros) {
super(solver, parametros);
}
public NavegadorEntidadWrapperValor doExecute() throws FunctionalException {
return null;
}
}
Nuestro sistema se encuentra en constante evolución. Si esta entrada está desactualizada, por favor avísanos a soporte@finneg.com