PDA

Ver la Versión Completa : Impresion


pablo
02-01-2004, 20:17:24
hola gente, quisiera saber donde hallar material para imprimir reportes con la unidad tprinter (puede ser...?) pues el Qreport tiene varios bugs, no?, igualmente mas alla de eso me gustaria aprender a hacer "manualmente" los reportes que se hacen con el QReport..., les agradezco la respuesta

saludos
pablo

Descendents
02-01-2004, 22:17:10
Manualmente a que te refieres?

var
s:TQRLabel
begin
s := Tqrlabel.create;
s.parent := detailband1;
s.left := 50;
end;

A esto?

Saludos

marcoszorrilla
02-01-2004, 23:05:36
Yo creo que primero tienes que utilizar el QuickReport, que no siendo lo último en constructores de informes, tampoco es tan malo, yo lo utilizo entre otros y es uno de los que mejor se integra con Delphi.

Hacerlo a mano no te lo aconsejo, llevaría muchísimo trabajo, y seguramente no llegaba a los talones de QuickReport.


Un Saludo.

pablo
03-01-2004, 04:48:26
ok, yo lo he usado y es verdad, lo que pasa es que como tiene algunos bugs y limitaciones, como por ej:

*error si haces doble click en el icono de impresion

*no podes cambiar la configuracion de la impre pues no la toma,
etc me recomendaron usar en canvas y la unidad printer, el tema es que no se como se usa...

saludos
pablo
feliz año :)

marcoszorrilla
03-01-2004, 13:57:26
Si se puede cambiar la impresora.
Aquí tienes un ejemplo:

procedure TfrLptFactura.LptFacturaBeforePrint(Sender: TCustomQuickRep;
var PrintReport: Boolean);
begin

prnDialog.Execute;
LptFactura.PrinterSettings.Printerindex:=Printer.PrinterIndex;

if DmLux.FactDescuento.value = 0 then
begin
QrlbDescuento.Enabled:=False;
QrDbDescuento.Enabled:=False;
end;

lbPaginas.Caption:='/'+IntToStr(nPages);

end;



En cuanto a lo del botón de imprimir, te puedes hacer una Vista previa pesonalizada, en la Web del Moderador Cadetill, tienes un buen ejemplo.

Un Saludo.

marcoszorrilla
03-01-2004, 14:16:16
Se me olvidó que tenía un código, facilitado por el Moderador Delphi.com.ar,


procedure TForm1.Button1Click(Sender: TObject);
begin
QuickRep1.PrinterSetup;
if QuickRep1.Tag = 0 Then
QuickRep1.Preview
else
ShowMessage('No imprimimos');
end;


Solamente guardé el código no recuerdo en que enlace lo puso, pero como verás es una solución, mucho más inteligente.

Un Saludo.

Descendents
03-01-2004, 16:05:19
Yo te aconsejo que uses quick report, que son muy potentes, que y tambien te montes tu propio preview, y como ya te han dicho el de cadetill, es muy bueno.Luego tu le haces tus cambios y tus cosas.

Al principio de usar quick reports, me desespere, pero cuando entiendes su funcionamiento y "filosofia", los encuentro muy buenos.

Si algun informe que tengas que hacer es muy complejo y no lo consigues con quick report, siempre puedes crearlo todo por código, como tu decias, pero antes asegurate de que no puedes hacerlo

Saludos