Para imprimir una unica factura:
Código Delphi
[-]
procedure TInformeFacturaForm.ImprimeFactura(IdFactura: Integer);
begin
rptInformeFactPto.DiscardSavedData;
sqlImpresionFacturas.SQL.Text := 'SELECT * FROM [IMPRESION FACTURAS] '+
'WHERE IdFactura = ' + IntToStr(IdFactura);
sqlImpresionFacturas.Open;
rptInformeFactPto.Tables[0].DataPointer := @(sqlImpresionFacturas.Recordset);
rptInformeFactPto.Execute;
end;
Para imprimir todas las facturas indicadas en la tabla FACTURAS A IMPRIMIR
Código Delphi
[-]
procedure TInformeFacturaForm.ImprimeFacturas;
begin
sqlImpresionFacturas.SQL.Text := 'SELECT * FROM [IMPRESION FACTURAS] WHERE ' +
'IdFactura IN (SELECT IdFactura FROM [FACTURAS A IMPRIMIR])';
sqlImpresionFacturas.Open;
with rptInformeFactPto do
begin
Output := toWindow;
Tables[0].DataPointer := @(sqlImpresionFacturas.Recordset);
Execute;
end;
end;
PD: Finalmente el problema inicial era que olvidaba esta línea
Código Delphi
[-]rptInformeFactPto.Tables[0].DataPointer := @(sqlImpresionFacturas.Recordset);
Saludos