Fórum Problemas exportando query para o excel #218430
04/03/2004
0
preciso exportar todo o conteúdo de uma tabela(estou usando o SQLServer) para uma planilha excel através da minha aplicação. Até aí tudo certo, consigo exportar os dados normalmente, porém minha tabela contém 16000 registros e todos precisam ser exportados para o excel(o pessoal quer o estoque contábel completo no excel), ai começam os problemas, preciso q tenha uma performance rápida(são 15 campos a serem exportados), mas está levando mais ou menos 15 minutos para exportar rodando direto no servidor(P4 2.6, 512 mem), imaginem rodando nas máquinas pela rede, caos total
alguém tem idéia do q eu possa fazer para melhorar a performance?
obrigado
0utl@wbr
Curtir tópico
+ 0Posts
05/03/2004
0utl@wbr
Gostei + 0
05/03/2004
Ivonei
Eu exporto pela rede, uma tabela do mysql que está no servidor. É super rápido. Estou usando o componente TscExcelExport.
Talvez este componente resolva o seu problema.
T+
Gostei + 0
05/03/2004
0utl@wbr
[b:7d0443d472]var
coluna, linha: integer;
excel: variant;
valor: string;
begin
if query1.Active=true then //verifica se a query está aberta
begin
statusbar1.panels[0].text:=´Aguarde... Exportando dados para o Excel...´;
screen.cursor := crSQLWait;
cursor:=crSQLwait;
try
excel:=CreateOleObject(´Excel.Application´);
excel.Workbooks.add(1);
except
Application.MessageBox (´Versão do Ms-Excel´+
´Incompatível´,´Erro´,MB_OK+MB_ICONEXCLAMATION);
end;
query1.First;
try
for linha:=0 to query1.RecordCount-1 do
begin
for coluna:=1 to query1.FieldCount do // eliminei a coluna 0 da relação do Excel
begin
valor:= query1.Fields[coluna-1].AsString;
excel.cells [linha+2,coluna]:=valor;
end;
query1.Next;
end;
for coluna:=1 to query1.FieldCount do // eliminei a coluna 0 da relação do Excel
begin
valor:= query1.Fields[coluna-1].DisplayLabel;
excel.cells[1,coluna]:=valor;
end;
excel.columns.AutoFit; // esta linha é para fazer com que o Excel dimencione as células adequadamente.
excel.visible:=true;
except
Application.MessageBox (´Aconteceu um erro desconhecido durante a conversão´+
´da tabela para o Ms-Excel´,´Erro´,MB_OK+MB_ICONEXCLAMATION);
end;
end;
statusbar1.panels[0].text:=´Completado com sucesso!!!!´;
screen.cursor := crDefault;
cursor:=crDefault;
query1.Close;
end;[/b:7d0443d472]
peguei esse código aqui no fórum mesmo
puxei o componente q vc falou, so q não tem nenhum exemplo de como usá-lo, vc tem algum exemplo para me passar?
obrigado
Gostei + 0
05/03/2004
Ivonei
[url]http://www.torry.net/db/access/db_bdeexport/exporte.zip[/url]
Acho que realmente é mais demorado exportar no braço como você fez.
Espero que resolva o seu problema.
[ ]´s
Gostei + 0
05/03/2004
0utl@wbr
até logo
Gostei + 0
19/01/2005
Vagner.oliveira
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)