Data window

Hola, me llamo jorge, mi problema es el siguiente: estoy haciendo una aplicación en la cual manejo tablas como la de facturas, detalle de factura etc..., lo que quiero es que cuando entre a la ventana de ventas haga un conteo de el numero de facturas en la BD e incremente en uno para que aparezca dentro del datawindow de factura, ok le hago un select max(id) into: variable from FACTURA
Variable ++, y luego lo meto dentro del datawindow con el SetItem(), pero si la BD esta en blanco no aparece y si tienen por lo menos un dato almacenado aparece el numero de la factura y no se como hacer para que aparezca el #1 cuando esta vacía, más si embargo como te dije aparece #2 #3 ... Etccuando ya tiene un dato.
Agradecería tu más pronta respuesta!

1 Respuesta

Respuesta
1
Una opción es comprobar que la variable que te devuelve el Select max no sea nula : If IsNull(variable), entonces si es nula les assignas el 1 por código. Esto solo ocurrirá cuando la base de datos este en blanco.
Ten en cuenta que el uso de select max te puede acarrear problemas en sistemas multiusuario o bien se vuelve muy lento cuando trabajas con muchos registros de factura, del orden de 40.000 entonces lo mejor es crear un contador de factura, que es una tabla que contiene el numero de factura que toca, i a cada factura grabada les incrementas en uno, es mucho más rapido consultar este registro a cada factura que nobuscar el máximo de todas las facturas. Bueno esto solo es un consejo, en principio con el IsNull podrás solucionar tu problema, creo, si tienes dudas contacta conmigo.
Te lo agradezco mucho, la verdad al final hice eso mismo que me dijiste y salio muy bien, ademas te agradezco la idea de una tabla adicional para la lectura de facturas...

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas