Imagino que vc, ao fazer essa inclusão de registros, esteja envolvendo toda a 
operação dentro de um contexto transacional. Após iniciar a transação, 
cronometre o tempo gasto na execução da primeira operação de inclusão. Como 
fazer isso? Muito simples!
 
Após iniciar a transação e antes de efetuar a primeira operação de INSERT, 
pegue a 'hora inicial' usando o valor retornado pela função GetTickCount(), da 
API do Windows (unit Windows). Após a execução do INSERT, pegue a 'hora atual' 
usando novamente GetTickCount(). A diferença entre este valor e o valor 
capturado no início (em milissegundos) permitem estimar quanto tempo uma única 
operação irá levar. O tempo total será, portanto, a quantidade de registros a 
serem incluídos multiplicado por essa diferença encontrada.
Dessa forma, pode-se montar um tela com uma barra de progresso que, além de 
mostrar o andamento atual do processamento, poderá mostrar o tempo estimado e o 
tempo atual de processamento da operação.
 
Esta é a minha sugestão. Não recomendo ir tão à fundo no cálculo dessa 
estimativa baseando-se no tempo de execução de outros processos. Acredito que 
esse básico seja mais do que suficiente. Agora, se a operação estiver levando 
mais tempo que o normal, seria o caso de rever o algoritmo usado neste processo 
para que este seja otimizado, seja este processo o que for.
 
Sds.


To: [EMAIL PROTECTED]: [EMAIL PROTECTED]: Tue, 30 Oct 2007 10:17:27 
-0700Subject: Res: RES: [delphi-br] Estimar o tempo que será gasto com uma 
tarefa




Já uso a barra, mas eu queria mesmo era dar uma estimativa antes de começar a 
tarefa.----- Mensagem original ----De: Davi Eduardo Borges Wall <[EMAIL 
PROTECTED]>Para: [EMAIL PROTECTED]: Terça-feira, 30 de Outubro de 2007 
15:05:03Assunto: RES: [delphi-br] Estimar o tempo que será gasto com uma 
tarefaUma barra de progresso não ajudaria?De: [EMAIL PROTECTED] os.com.br 
[mailto:[EMAIL PROTECTED] os.com.br] Em nome de EvaldoEnviada em: terça-feira, 
30 de outubro de 2007 13:54Para: [EMAIL PROTECTED] os.com.brAssunto: 
[delphi-br] Estimar o tempo que será gasto com uma tarefaAlguém tem alguma 
formula onde eu possa calcular o tempo que será gasto com o processamento de 
uma tarefa? Por exemplo: vou inserir 4000 registro no banco, então eu faria o 
calculo de aproximação do tempo que será gasto para a inserção dos registros e 
mostraria uma msg ao usuário com o tempo estimado . Penso que teria que levar 
em consideração o hardware da máquina e os processos que já estão rodando no 
momento.É possível fazer esse calculo?Abra sua conta no Yahoo! Mail, o único 
sem limite de espaço para armazenamento!http://br.mail. yahoo.com/[As partes 
desta mensagem que não continham texto foram removidas][As partes desta 
mensagem que não continham texto foram removidas]<!--#ygrp-mkp{border:1px solid 
#d8d8d8;font-family:Arial;margin:14px 0px;padding:0px 14px;}#ygrp-mkp 
hr{border:1px solid #d8d8d8;}#ygrp-mkp 
#hd{color:#628c2a;font-size:85%;font-weight:bold;line-height:122%;margin:10px 
0px;}#ygrp-mkp #ads{margin-bottom:10px;}#ygrp-mkp .ad{padding:0 0;}#ygrp-mkp 
.ad a{color:#0000ff;text-decoration:none;}--><!--#ygrp-sponsor 
#ygrp-lc{font-family:Arial;}#ygrp-sponsor #ygrp-lc #hd{margin:10px 
0px;font-weight:bold;font-size:78%;line-height:122%;}#ygrp-sponsor #ygrp-lc 
.ad{margin-bottom:10px;padding:0 0;}--><!--#ygrp-mlmsg 
{font-size:13px;font-family:arial, helvetica, clean, sans-serif;}#ygrp-mlmsg 
table {font-size:inherit;font:100%;}#ygrp-mlmsg select, input, textarea 
{font:99% arial, helvetica, clean, sans-serif;}#ygrp-mlmsg pre, code {font:115% 
monospace;}#ygrp-mlmsg * 
{line-height:1.22em;}#ygrp-text{font-family:Georgia;}#ygrp-text p{margin:0 0 
1em 
0;}#ygrp-tpmsgs{font-family:Arial;clear:both;}#ygrp-vitnav{padding-top:10px;font-family:Verdana;font-size:77%;margin:0;}#ygrp-vitnav
 a{padding:0 1px;}#ygrp-actbar{clear:both;margin:25px 
0;white-space:nowrap;color:#666;text-align:right;}#ygrp-actbar 
.left{float:left;white-space:nowrap;}.bld{font-weight:bold;}#ygrp-grft{font-family:Verdana;font-size:77%;padding:15px
 0;}#ygrp-ft{font-family:verdana;font-size:77%;border-top:1px solid 
#666;padding:5px 0;}#ygrp-mlmsg 
#logo{padding-bottom:10px;}#ygrp-vital{background-color:#e0ecee;margin-bottom:20px;padding:2px
 0 8px 8px;}#ygrp-vital 
#vithd{font-size:77%;font-family:Verdana;font-weight:bold;color:#333;text-transform:uppercase;}#ygrp-vital
 ul{padding:0;margin:2px 0;}#ygrp-vital ul 
li{list-style-type:none;clear:both;border:1px solid #e0ecee;}#ygrp-vital ul li 
.ct{font-weight:bold;color:#ff7900;float:right;width:2em;text-align:right;padding-right:.5em;}#ygrp-vital
 ul li .cat{font-weight:bold;}#ygrp-vital a{text-decoration:none;}#ygrp-vital 
a:hover{text-decoration:underline;}#ygrp-sponsor 
#hd{color:#999;font-size:77%;}#ygrp-sponsor #ov{padding:6px 
13px;background-color:#e0ecee;margin-bottom:20px;}#ygrp-sponsor #ov 
ul{padding:0 0 0 8px;margin:0;}#ygrp-sponsor #ov 
li{list-style-type:square;padding:6px 0;font-size:77%;}#ygrp-sponsor #ov li 
a{text-decoration:none;font-size:130%;}#ygrp-sponsor 
#nc{background-color:#eee;margin-bottom:20px;padding:0 8px;}#ygrp-sponsor 
.ad{padding:8px 0;}#ygrp-sponsor .ad 
#hd1{font-family:Arial;font-weight:bold;color:#628c2a;font-size:100%;line-height:122%;}#ygrp-sponsor
 .ad a{text-decoration:none;}#ygrp-sponsor .ad 
a:hover{text-decoration:underline;}#ygrp-sponsor .ad 
p{margin:0;}o{font-size:0;}.MsoNormal{margin:0 0 0 0;}#ygrp-text 
tt{font-size:120%;}blockquote{margin:0 0 0 4px;}.replbq{margin:4;}-->Abra sua 
conta no Yahoo! Mail, o único sem limite de espaço para 
armazenamento!http://br.mail.yahoo.com/[As partes desta mensagem que não 
continham texto foram removidas] 






_________________________________________________________________
Encontre o que procura com mais eficiência! Instale já a Barra de Ferramentas 
com Windows Desktop Search GRÁTIS!
http://desktop.msn.com.br/

[As partes desta mensagem que não continham texto foram removidas]

Responder a