Hola a todos
Tengo un informe en QReport, en el cual se tienen que mostrar los valores de hasta 4 tipos de moneda, pero por problemas del tamaño del papel no caben las 4 columnas.
Pero como en dependencia de una condicion, la empresa en cuestion usara solo 2 (o 3).
Ejemplo:
Empresa1: Mon1 y Mon2
Empresa2: Mon3 y Mon4
Tambien puede darse el caso de: Empresa3: Mon2, Mon3 y Mon4
Como puedo hacer para segun la Empresa, mostrar las columnas correspondientes?
Cada Empresa sale en una hoja independiente
Como imprimir 2, 3 o 4 columnas sugun una condicion, en QReport
Started by
JoAnCa
, May 25 2009 02:42 PM
3 replies to this topic
#1
Posted 25 May 2009 - 02:42 PM
#2
Posted 27 May 2009 - 01:34 PM
Hola, la mas fácil y sencilla es hacer tres reportes y llamar el apropiado según la condición, cosa que no es muy dificil porque los cambios a realizar entre uno y otro serían mínimos.
Saludos
Saludos
#3
Posted 28 May 2009 - 01:41 AM
Supongamos que:
En el evento BeforePrint de la Banda de Detalle
Lo mismo haces con la Banda de Encabezados o Título de cada campo.
Salud.
delphi
QRDBText1.DataField:= 'Moneda1'; QRDBText2.DataField:= 'Moneda2'; QRDBText3.DataField:= 'Moneda3';
En el evento BeforePrint de la Banda de Detalle
delphi
if <Cumple la Condición> then QRDBText1.Enabled:= True // Imprime el Campo else QRDBText1.Enabled:= False; // No Imprime el Campo
Lo mismo haces con la Banda de Encabezados o Título de cada campo.
Salud.
#4
Posted 28 May 2009 - 03:08 PM
Hablando con el cliente, se me facilitaron las cosas, pues solo pueden darse dos casos:
Entidad 1: Usa solo Moneda1 y Moneda2
Entidad 2: Usa solo Moneda3 y Moneda4
Lo resolvi usando alias en la instruccion SQL, es decir:
Para el caso 1 uso: SELECT ...., Mon1 as M1, Mon2 as M2, ...
Para el caso 2 uso: SELECT ...., Mon3 as M1, Mon4 as M2, ...
Y despues en el Reporte pongo M1 y M2, y en el evento BeforePrint cambio las etiquetas respectivas
Es una solucion sencilla, pero funciona
Entidad 1: Usa solo Moneda1 y Moneda2
Entidad 2: Usa solo Moneda3 y Moneda4
Lo resolvi usando alias en la instruccion SQL, es decir:
Para el caso 1 uso: SELECT ...., Mon1 as M1, Mon2 as M2, ...
Para el caso 2 uso: SELECT ...., Mon3 as M1, Mon4 as M2, ...
Y despues en el Reporte pongo M1 y M2, y en el evento BeforePrint cambio las etiquetas respectivas
Es una solucion sencilla, pero funciona