Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Servers (https://www.clubdelphi.com/foros/forumdisplay.php?f=9)
-   -   ¿Cómo exportar de BD a excel en delphi2009? (https://www.clubdelphi.com/foros/showthread.php?t=79391)

koiji 01-07-2012 22:41:13

¿Cómo exportar de BD a excel en delphi2009?
 
hola amigos como puedo exportar datos de una base de datos a excel y generarlo
y me podrian ayudar en este codigo que sale error no me funciona

Código Delphi [-]
Excel.ActiveWorkbook.SaveAs( cadena + 'Nueva.xls',
   EmptyParam, EmptyParam, EmptyParam,
   EmptyParam, EmptyParam, xlNoChange,
   EmptyParam, EmptyParam, EmptyParam,
   EmptyParam, EmptyParam, 0);

estoy comenzando a lo que es importa y exportar en delphi a excel

Casimiro Notevi 01-07-2012 23:07:22

Bienvenido a clubdelphi, ¿ya leiste nuestra guía de estilo?, gracias por tu colaboración :)

Además de los consejos que te damos en la guía de estilo, no está claro lo que preguntas con lo que has expuesto, dices "exportar de BD a excel", sin embargo ese código parece que estás exportandod de excel a...?, no se sabe, ¿qué base de datos?

p.d. También he movido tu hilo de foro, lo habías puesto en delphi/web y no tiene nada que ver con la web ;)
Y he ajustado tu título a uno más apropiado.

kapcomx 02-07-2012 20:13:16

ejemplo
 
que tal Koiji espero te sirva este ejemplo:

Código Delphi [-]
ExcelApplication1.Connect; 
ExcelApplication1.Visible[0] := false; 
ExcelWorkbook1.ConnectTo(ExcelApplication1.Workbooks.Add(EmptyParam,0)); 
excelworkbook1.Author[0]:='Sistema Informatico XXXXXXXX'; 
ExcelWorksheet1.ConnectTo(ExcelApplication1.Sheets[1] as _WorkSheet); 
excelworksheet1.Range['A1','d1'].MergeCells :=true; 
excelworksheet1.Range['A3','d3'].MergeCells :=true; 
excelworksheet1.Range['A1','c3'].HorizontalAlignment:=xlHAlignCenter  ;  
//excelworksheet1.Range['b7','b7'].HorizontalAlignment:=xlHAlignCenter  ;  
excelworksheet1.Range['b4','b5'].HorizontalAlignment:=xlHAlignCenter  ; 
excelworksheet1.Range['A9','c9'].HorizontalAlignment:=xlHAlignCenter  ; 
excelworksheet1.Range['c4','d5'].HorizontalAlignment:=xlHAlignRight; 
excelworksheet1.Range['B1','B1'].ColumnWidth :=30; 
excelworksheet1.Range['c1','c1'].ColumnWidth :=80; 
excelworksheet1.cells.item[1,1].value2:='XXXXXXXXXXXXX SA DE CV'; 
excelworksheet1.cells.item[3,1].value2:='Lista de Productos para Verificar Existencia'; 
excelworksheet1.cells.item[4,3].value2:= 'Fecha:'; 
excelworksheet1.cells.item[4,4].formula:= date(); 
excelworksheet1.cells.item[5,3].value2:= 'Folio Solicitud:'; 
excelworksheet1.cells.item[5,4].value2:= folio; 
excelworksheet1.cells.item[7,1].value2:= 'Proveedor:'; 
excelworksheet1.cells.item[7,2].value2:= dblckprov.text; 
excelworksheet1.cells.item[9,1].value2:='Cantidad'; 
excelworksheet1.cells.item[9,2].value2:='Código'; 
excelworksheet1.cells.item[9,3].value2:='Producto'; 
excelworksheet1.cells.item[9,4].value2:='Existencia'; 
excelworksheet1.Range['A9','D9'].interior.Color:=33023 ;            
//x=col dm.dstemporal.First;   
y:=10; 
x:=1;  
while not(dm.dstemporal.Eof) do 
begin  
  EXCELWORKSHEET1.Cells.ITEM[y,1].VALUE2:= x;              
  EXCELWORKSHEET1.Cells.ITEM[y,1].VALUE2:= dm.dstemporalcantidad.value;              
  EXCELWORKSHEET1.Cells.ITEM[y,2].VALUE2:= dm.dstemporalCLAVE.Value;              
  EXCELWORKSHEET1.Cells.ITEM[y,3].VALUE2:= dm.dstemporalDESCRIPCION.Value;                
  inc(y); 
  inc(x); 
  dm.dstemporal.Next; 
end;  
excelapplication1.ActiveWorkbook.SaveAs(ruta +'.xlsx',emptyparam,emptyparam,emptyparam,emptyparam,emptyparam,1,emptyparam,emptyparam,emptyparam,e  mptyparam,emptyparam,0); 
ExcelApplication1.Quit; 
ExcelApplication1.Disconnect; 
ExcelApplication1.Free;

espero te sirva:cool:

p.d. Por cierto no sabia en cual de los tres mensajes contestar???????

Casimiro Notevi 02-07-2012 20:34:34

Cita:

Empezado por kapcomx (Mensaje 436536)
p.d. Por cierto no sabia en cual de los tres mensajes contestar???????

¿Ves 3 mensajes?, y si entras en cada uno de ellos ¿son los mismos o distintos?, ¿cambia de foro cada uno y siempre está en el mismo?

ecfisa 02-07-2012 20:45:00

Cita:

Empezado por Casimiro Notevi (Mensaje 436537)
¿Ves 3 mensajes?, y si entras en cada uno de ellos ¿son los mismos o distintos?, ¿cambia de foro cada uno y siempre está en el mismo?

Hola Antonio.

El mensaje inicialmente estaba localizado en Delphi/Web, y ayer, aparentemente fue movido casi al mismo tiempo al foro OPP que cuando yo lo movía al foro Servers. En "últimos 20 temas" quedan registrados los dos movimientos como es habitual. Pero los tres enlaces hacen referencia a la misma ubicación en el foro Servers

Saludos. :)

Casimiro Notevi 02-07-2012 20:53:09

Sí, aunque lo preguntaba porque pensé que los usuarios "normales" no veían esos mensajes, sólo el "verdadero" :)
Yo lo moví a un sitio y tú al otro, evidentemente, el sitio elegido por tí era el bueno.

kapcomx 02-07-2012 22:15:10

3 mensajes
 
asi es mi amigo Casimiro , veo 3 mensajes en la lista principal luego entro en cada uno de ellos y veo lo mismo.

Saludos...:cool:

Casimiro Notevi 02-07-2012 22:29:47

Vaya, seguramente es un 'bug' del vbulletin o alguna configuración.
Gracias por comentarlo.


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

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