Todo esto huele a un mal diseño desde la base de datos...y la implementación igual o peor. Al ejecutar el sistema tenemos que conocer: ubicación de la caja-terminal, sucursal donde trabaja y día en que estamos. Con esos datos hay que ir a la base de datos y pedirle el saldo final del día anterior. El chiste aquí es que el corte se tiene que hacer al final de las operaciones y no al principio. Al finalizar cada día de trabajo se debe cacular y almacenar el saldo final del día (no importa en que fecha real se realice). Si la tienda o negocio permance abierto las 24 horas, se hace un cierre antes de las 24 horas y en su caso cualquier excedente corresponde al dia siguiente. El usuario no tiene por qué capturar cual es su saldo inicial pues eso se puede calcular fácilmente a partir de los datos almacenados. El hacerlo como lo planteas no solo es incorrecto sino que induce a errores, fraudes y demás pues el usuario puede poner lo que le plazca sin que sea validado por nadie.
Revisa mejor tu proceso (sin código) como lo realizan, mejóralo, asegúralo y entonces ya lo programas; de lo contrario es un barril sin fondo informático.
|