Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Lazarus, FreePascal, Kylix, etc. (https://www.clubdelphi.com/foros/forumdisplay.php?f=14)
-   -   SQLite3 lazreport en un informe cabecera-detalle (https://www.clubdelphi.com/foros/showthread.php?t=69762)

razor7 07-09-2010 02:35:42

SQLite3 lazreport en un informe cabecera-detalle
 
Hola, tengo un problema al crear un reporte con lazreport con dos tablas (cabecera-detalle) usando SQLIte3.

Quiero mostrar en el reporte el nombre de cliente en una banda "Master data" y las facturas correspondientes a ese cliente en una banda "Detail" para mostrar luego la sumatoria de las facturas en una banda "Master footer"

En definitiva, lo que necesito es mostrar un informe de todos los clientes en la base de datos junto con sus facturas y montos de cada una de ellas.

En mi proyecto tengo dos TSQLite3DataSets relacionados como cabecera-detalle, la relación funciona bien puesto que puedo verlo andar en mi aplicacion.

He creado un frReport y dos TfrDataSet's

Tambien cree dos bandas en mi reporte asignadas a ambos datasets.

Lo que obtengo al ver el reporte es "Read Error, Access Violation" luego la aplicacion se cierra sola

Alguien sabe que estoy haciendo mal?

Gracias!

razor7 07-09-2010 14:21:31

Por las dudas si no se entiende, lo que quiero es un informe mas o menos asi...

Cliente 1
Factura Numero: XXXXXX Total: $XXXXXX
Factura Numero: XXXXXX Total: $XXXXXX
Factura Numero: XXXXXX Total: $XXXXXX
Saldo: (Suma de totales de facturas)

Cliente 2
Factura Numero: XXXXXX Total: $XXXXXX
Factura Numero: XXXXXX Total: $XXXXXX
Factura Numero: XXXXXX Total: $XXXXXX
Saldo: (Suma de totales de facturas)

Cliente 3
Factura Numero: XXXXXX Total: $XXXXXX
Factura Numero: XXXXXX Total: $XXXXXX
Factura Numero: XXXXXX Total: $XXXXXX
Saldo: (Suma de totales de facturas)

Cliente N
Factura Numero: XXXXXX Total: $XXXXXX
Factura Numero: XXXXXX Total: $XXXXXX
Factura Numero: XXXXXX Total: $XXXXXX
Saldo: (SUma de totales de facturas)

Tengo la tabla de clientes y la de facturas relacionadas por ID cliente usando TSqLite3DataSet's

Casimiro Notevi 07-09-2010 14:28:45

Lo que no se entiende bien es el problema.
Para hacer ese informe sólo necesitas un select de las facturas, incluyendo el código del cliente, ordenadas por cliente, factura (o fecha, como quieras).
Luego, en el informe, agrupas por cliente.
Eso es lo normal en todos los generadores de informes.

razor7 07-09-2010 14:55:31

Hola, y gracias por la respuesta

Me imagino que debe ser asi de sencillo, pero no lo he logrado

Los SQLite3DataSet's los tengo configurados asi

Cita:

TClientes (TSQLite3DataSet)
TableName: clientes
PrimaryKey: id
SQL: Select * from clientes;

RCli_CtaCte (TSQLite3DataSet)
TableName: cuenta_corriente
PrimaryKey: id_cliente
SQL: SELECT id,id_cliente,fecha,comentarios,nro_fac,compro,pago FROM cuenta_corriente where id_cliente_id = 1
MasterSource: dsClientes (DataSet: TClientes)
MasterFields: id
IndexFieldNames: id_cliente

frCli_CtaCte (TfrDBDataSet)
DataSet: RCli_CtaCte
En mi reporte tengo:
Cita:

Encabezado de grupo
Condicion: RCli_CtaCte."id_cliente"

Encabezado Maestro

Datos Maestros
Fuente de datos: frCli_CtaCte

Pie de grupo
Con este seteo, consigo que me imprima el estado del cliente actual, si cambio de cliente en la aplicacion, se imprime el estado del cliente seleccionado.

Yo quiero que me muestre un informe de todos los clientes junto con sus facturas en la tabla "cuenta corriente"...

Gracias por la ayuda!


La franja horaria es GMT +2. Ahora son las 12:49:53.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi