Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   OOP (https://www.clubdelphi.com/foros/forumdisplay.php?f=5)
-   -   Variables globales en sistema de liquidacion de sueldos (https://www.clubdelphi.com/foros/showthread.php?t=73131)

el-mono 02-04-2011 08:25:21

Variables globales en sistema de liquidacion de sueldos
 
Hola gente linda como va?

El problema a resolver :

Resulta que me encomendaron un software para liquidacion de sueldos donde como caracteristica principal tenga un sistema de impresion similar a Tango Gestion (Software ERP Argentino).

Este ERP brinda la posibilidad de crear tus propios informes sobre un RichEdit, sobre este componente podes ir poniendo variables que este sistema trae de fabrica (inclusive podes agregar mas variables auxiliares y definir formulas matematicas que se resolveran para asignarse el resultado a esta nueva variable) junto con textos personalizados y luego poder imprimirlo, pongo un ejemplo como lo hace este sistema:

Numero Legajo : @NL
Nombre : @NC
Antiguedad : Años: @AC Meses: @MT Dias: @DT
Total Bruto : @TB

Donde @ indica que es una variable a reemplazar por su valor al momento de imprimir.Como encararian ustedes un sistema de estas caracteristicas, puntualmente el tema de las variables globales que inclusive algunas hasta realizan calculos antes de imprimirse como es el caso de (Total Bruto : @TB) y creo ya serian funciones, verdad?

Mi pregunta:

1) Sera que debo hacer funciones por cada una de ellas que cuando el sistema encuentre el nombre la ejecute y obtenga el resultado (haciendo calculos matematicos o accediendo a la BD) ?

2) Debo crear una Units que sea global para alli poner todas las variables ?

3) Supongo que deberia pasar el ID de cada empleado (a las funciones) a liquidar para saber sobre quien debo realizar los calculos ?

4) Alguien tendria algun codigo similar para compartir ?

La verdad no tengo ni idea de como encarar el problema y les escribo a ustedes para ver si algun alma caritativa me guia, quizas alguno de ustedes ya haya realizado algun sistema con caracteristicas similares.

Bien espero haber sido claro y me puedan guiar, desde ya les doy las gracias por su amable atencion.

Saludos
Mario

ecfisa 02-04-2011 10:58:36

Hola Mario.

Creo que si las variables estuvieran prefijadas podrías pensar en el uso de variables globales. Pero si el requisito es que permita incorporar nuevas,
optaría por almacenarlas en una base de datos y como decis, una vez encontrado el nombre, operar con su valor.

Si además debe permitir al usuario definir fórmulas matemáticas como contenido de las variables, creo que no tenés mas remedio que tratar con un analizador de expresiones. En cambio si podés predefinir la totalidad de funciones a utilizar a la fecha y evitar que el usuario las ingrese te ahorrarías
ese trabajo.

Cualquier función que use datos de un empleado (antiguedad, hijos, etc) para realizar cálculos, lógicamente va a requerirlos. Por lo que pasarle el ID
en un parámetro para que los obtenga, es una opción razonable.

Otra cosa importante a tomar en cuenta es el monto que pensas obtener del programa.
Hacer un programa semi-rígido, que permita ingresar variables y no funciones, es relativamente simple. Y seguramente en un futuro, tengas más trabajo
que cobrar ante cualquier cambio impositivo.

Del otro modo, a la hora de presupuestar evaluá bién las dificultades adicionales. Sin olvidar que pueden (y lo harán :)) prescindir de tu grata presencia
por mucho tiempo, y claro está, que eso tiene un plus adicional... ;)

Un saludo.

el-mono 03-04-2011 03:29:29

ecfisa muchisimas gracias por tus comentarios, voy a definir las variables sin dar la posibilidad de ingresar nuevas al menos en esta primer version.

gracias


La franja horaria es GMT +2. Ahora son las 23:57:21.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi