Ver Mensaje Individual
  #8  
Antiguo 25-11-2006
Avatar de Lepe
[Lepe] Lepe is offline
Miembro Premium
 
Registrado: may 2003
Posts: 7.424
Reputación: 29
Lepe Va por buen camino
lo más fácil desde mi punto de vista es un sql del tipo:

Código SQL [-]
select * from facturas where nfactura in (3, 4, 5, 6, 7);

Si te ayudas de un TStringList, puedes usar su propiedad commaText para hacer la tira 3, 4, 5, 6. Yo utilicé un Combobox para que el usuario añada las facturas, así tienes el CommaText a mano y además el usuario tiene comodidades para añadir y eliminar las facturas que quiere ver.

Este SQL puedes almacenarlo en un archivo .inc como se hace en la mayoría de paquetes, así puedes modificar el SQL en el ordenador de tu cliente sin tener que recompilar la aplicación. O incluso (y es lo que yo hago), guardas el SQL en una tabla de tu programa, así lo cargas dinámicamente.

Hay otros trucos, por ejemplo:
Código Delphi [-]
const sqlFacturas = 'select * from facturas where nfactura in %s';

....
query1.sql.text := format(sqlfacturas, ['(3,4,56)']);
query1.Open;
Esa constante puedes almacenarla en la BBDD, archivo .inc etc.

Inconveniente, no estará compilada nunca en FB.

Saludos
__________________
Si usted entendió mi comentario, contácteme y gustosamente,
se lo volveré a explicar hasta que no lo entienda, Gracias.
Responder Con Cita