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
Comenzado por
JoAnCa
, may 25 2009 02:42
3 respuestas en este tema
#1
Escrito 25 mayo 2009 - 02:42
#2
Escrito 27 mayo 2009 - 01:34
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
Escrito 28 mayo 2009 - 01:41
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
Escrito 28 mayo 2009 - 03:08
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