![]() |
Seleccionar datos para imprimir
Hola a todos amigos:
Bueno, me explicaré para que entiendan mi pregunta. Yo tengo un formulario en el que hay un DBGrid que me muestra los resultados de una consulta, un boton en este formulario indica imprimir y me da un reporte que contiene el resultado de la consulta. Ahora bien: Yo quiero que cuando el usuario de clic en el boton Imprimir se muestre otro formulario con 2 listbox, en el 1ro estarán todos los numeros de identificación(son unicos) y el 2do en blanco, que quiero con esto, que el usuario escoja los registros que el quiera imprimir, los pase al 2 listbox(por medio de otro boton) y luego de en otro boton que diga "Reporte" y se muestren los reportes de los registros que el seleccionó. Como puedo realizar esto? Espero que me ayuden en esto. Muhcas gracias y suerte. |
Hola, puedes recorrer las lineas seleccionadas del dbgrid, añadir en un listbox temporal el campo identificador y lo que necesites, y luego filtrar tu tabla o query segun estos campos en el listbox. Para recorrer el multiselect:
|
Gracias por contestar coso, ya he resuelto lo del multiselect como me digiste, aunque tienes algunos errores. Ahora bien, ya selecionados los que quiero imprimir comp puedo hacer un filtrado a mi tabla? Es paradox7.
Gracias otra vez |
Cita:
Si usas alguna query, por ejemplo haciendo 'select * from tabla where id in (' y aqui los ids que previamente has grabado en el listbox, por ejemplo. Si usas filtros tipo bde, entonces, tabla.filter := 'id = ' + listbox1.Items[0] + ' and id = ' + ListBox1.Items[1] + etc... o bien haciendolo de manera automatica dentro de un bucle for. saludos. |
Hola de nuevo coso:
veras he decidido hacerlo de manera automatica con un bucle For lo ago así: Sucede que cuando hago el preview me muetra el ultimo registro varias veces aunque yo no lo haya selecionado para imprimir. Este error a que se debe? |
Cita:
Aunque lo podías haber hecho con una consulta como te dice coso Select...Where nro in (.....) Saluditos |
Hola de nuevo:
MIren, creo que prefiero hacerlo con con Query pero como le digo a la consulta que me devuelva los valores que quiero? Digamos: Como le paso los parametros si yo no se la cantidad de parametros que voy a necesitar? |
Miren este es el codigo que he puesto:
El reporte se muestra pero solo con el ultimo registro que introduje en la tabla, ni siquiera toma los valores de la consulta. Que pasa aki? Les ruego me respondan, lo estoy necesitando. Suerte |
Hola de nuevo, si no sabes la cantidad de parametros entonces no te conviene utilizar parametros, es mejor que armes la cadena.
Mas o menos así sería. Saluditos |
Cita:
Saluditos |
Hola Caro: He hecho cada cosa de la que me digiste y ahora resulta que me da un error que dice:
Invalid use of keyword TOKEN ALE Ale es un proveedor, no se que puede ser ese error, el parametro text del Query esta bien, lo comprobé con el showmessage. Sabes que sucede? |
Caro:
Ya he dado con el problema anterior y era la falta de las comillas dobles("") al yo pasarle el valor a la consulta, ya no me da el error solo que ahora cuando muestra el reporte sale el ultimo registro aunque yo no lo haya seleccionado. Solo se muestra ese registro y los otros no. Porque? |
Hola de nuevo, ¿como esta estructurado tu reporte?, lo que también quiero que veas es, si el resultado de tu consulta es correcto, puedes enlazarlo a parte del reporte a un DBGrid y ves si son los registros que has seleccionado, son los que deben salir.
Saluditos |
Hola Caro:
Bien, ya he puesto un DbGrid y la consulta me la devuelve nula o sea vacia. No se por que hace esto ya que me da los nombres existentes en la tabla. |
Cita:
Saluditos |
Hola Caro!!!!
Ya he resuelto el problema!!!:) El Probema estaba en que cuando esto pasa ahí que ponerle comillas dobles a cada valor y separarlos por comas, entonces quedó así y funciona. Gracias por contestar, me han sido de muchisima ayuda Suerte y continuen así.:cool: |
| La franja horaria es GMT +2. Ahora son las 10:06:32. |
Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi