Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Impresión (https://www.clubdelphi.com/foros/forumdisplay.php?f=4)
-   -   Exportar QRPreview a Excel (https://www.clubdelphi.com/foros/showthread.php?t=22451)

mRoman 15-06-2005 21:06:42

Exportar QRPreview a Excel
 
Hola amigos !

Les escribo de manera super urgente ya que tengo un problema con la generación de un reporte. La persona a la que le estoy haciendo el sistema pidio que el reporte que presenta al QUICKREPORT se pueda generar con formato Excel, sé que hay componentes y de hecho ya los tengo, agregue el de Excel, pero desafortunadamente no lo genera con la misma presentación del QuickReport. La otra solución seria generarle un archivo de tipo texto o con formato DBF, para que pueda observar la información en donde le de su gana....también les pido me apoyen con esto, como generar el contenido de un query a DBF o TXT. Esto ultimo ya no se generaria del QuickReport si no de un formulario, talvez, que me permita seleccionar el tipo de formato a Exportar, (TXT o DBF).

Gracias por su ayuda ! y espero recibir respuesta.

lgarcia 15-06-2005 22:03:59

Exportacion a Excel
 
Hola

Aunque tu pregunta es muy amplia te voy a tratar de responder la primera parte que es la de exportar a Excel partiendo de una consulta con el siguiente codigo:

procedure TFormMenu.Plantilla1Click(Sender: TObject);
var
Excel, Libro: Variant;
i: integer;
Nombre: string;
begin
Excel:=CreateOleObject('Excel.Application');
Excel.Visible := False;
Excel.DisplayAlerts:= False;
Excel.WorkBooks.Add('C:\Archivos de programa\Tienda\Productos.xlt');
Excel.WorkBooks[1].WorkSheets[1].Name := 'Productos';
Libro := Excel.WorkBooks[1].WorkSheets['Productos'];
with Productos do
begin
Close;
Open;
end;
Productos.First;
i:= 2;
while not (Productos.Eof) do
begin
Libro.Cells [i,1] := ProductosCodTrasval.Value;
Libro.Cells [i,2] := ProductosDescripcionPLU.Value;
Libro.Cells [i,3] := ProductosPrecioCosto.Value;
Libro.Cells [i,4] := ProductosPrecioventa.Value;
Libro.Cells [i,5] := Productosum.Value;
Libro.Cells [i,6] := ProductosCategoria.Value;
inc(i);
Productos.Next;
end;
Libro.SaveAs('C:\Archivos de programa\Tienda\Listado transferencias');
ShowMessage(' El fichero Listado transferencias.xls ha sido creado exitosamente');
Excel.Quit;
end;

Donde Productos en este caso es la consulta.
Debes incluir en el uses de la Unit las unidades Excel97, ComObj

Te recomiendo que utilices una plantilla de Excel (Productos.xlt) porque asi te evitas tener que preocuparte por el formato de los datos.

Bueno espero que te sirva

Saludos
Luis Garcia

_____________________________
La mejor manera de decir es hacer

mRoman 15-06-2005 22:10:55

Gracias
 
GRacias por tu ayuda super rápida mano.....intentaré hacer esto.

GRACIAS NUEVAMENTE!


La franja horaria es GMT +2. Ahora son las 05:25:54.

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