PDA

Ver la Versión Completa : Imprimir credenciales


rufo
16-02-2010, 20:57:09
Hola amigos recurriendo a ustedes con el siguiente problemilla, resulta que estoy haciendo un programa que me imprima credenciales todo esta bien ya que selecciono el nombre de la persona y le doy clic en imprimir y me envia el reporte del tamaño de la tarjeta que sera la credencial hasta ahi no hay problema ya que tengo todo ya diseñado, pero ahora resulta que tengo que imprimir mas de 400 credenciales y para ahorrar tiempo quiero que me mande o mas bien que me cargue en vista previa todas las credenciales, ya logre hacer que me cargue todos los datos pero no me visualiza las fotos que llevan estas credenciales y solo los datos que contiene las credenciales, entonces es ahi el asunto que quiero pedirles ayuda para saber como cargar todas las imagenes y asi imprimir mas rapido.Le pongo el codigo que utilizo para consultar a una sola persona y el codigo para enviar a imprimir.

Codigo en el cual hago la consulta de una sola persona:


procedure Tcredencial1.Button3Click(Sender: TObject);
begin
if combobox1.Text<>'' then
begin
with dm1.Q_administrativo do
begin
active:=false;
sql.clear;
sql.Add('select * from Administrativos');
sql.add('where id_nombre='+inttostr(v_idcrede1));
active:=true;
begin
label1.Caption:=fieldbyname('nombre').asstring;
label2.Caption:=fieldbyname('cargo').asstring;
image1.Picture.LoadFromFile(fieldbyname('foto').asstring);
image2.Picture.LoadFromFile(fieldbyname('firma').AsString);
//label5.Caption:=FormatDateTime('mm/yy' ,StrToDateTime ('vigencia'));
end;
with fr_credencial1 do
begin
qrdbtext3.DataField:=('nombre');
qrimage6.Picture.LoadFromFile(fieldbyname('firma').asstring);
qrimage2.Picture.LoadFromFile(fieldbyname('foto').asstring);
end;
end;
end;
end;


codigo en el cual me muestra una vista previa antes de imprimir

procedure Tcredencial1.Button2Click(Sender: TObject);
begin
fr_credencial1.QuickRep1.Preview;

end;


Gracias de antemano y para mas informacion estoy usando Delphi 2007, Quickreport 4 y access 2003.

rufo
17-02-2010, 00:34:03
Amigos ya quedo resuelto mi problema les anexo que la solucion la halle en el evento del reporte de la banda detail en el evento beforeprint, pongo el codigo para que alguien si la necesita



procedure TFR_credencial1.DetailBand1BeforePrint(Sender: TQRCustomBand;
var PrintBand: Boolean);
begin
with QuickRep1.DataSet do
begin
qrimage2.Picture.LoadFromFile(fieldbyname('foto').asstring);
end;
end;


Gracias y saludos.