Caros amigos, como eu, e creio que muitos aqui, tem conhecimentos, em programação, CLIPPER/DELPHI, bem vamos ao que interessa...
Em Clipper move de um registro para o outro é facil e extremamente RÁPIDO... é vai para tal, to lá.... Em Delphi não achei nenhuma comando tão RÁPIDO quando, uso o MOVEBY, mas alem de ter que calcular a relação da onde estou para onde vou, ainda demora pra caramba, serca de uns 3 segundos, mas pra usuario que estava aconstumado a ser instantaneo, isso é uma eternidade, aguem tem uma solução melhor.... Sem contar que não é muito preciso, pois se tem registro deletados ele excluir ai o calculo fica errado, tipo se to no registro 5000 e quero ir pro 10, e tem 10 ou 11 apagados ele acaba caindo no registro 1, é no PRIMEIRO... pois o MOVEBY funciona assim... Call MoveBy to move the active record by the number of records specified by Distance. Ou seja chame o MoveBy para mover o registro corrente, para o numero de registros especificados por distancia, então voce tem que saber a DISTANCIA que um registro esta do outro... até ai blz, mas quando entra registro deletados no meio do caminho a merda ta feita.... ai a solução foi colocar varios MoveBy (que gambiarra), para ele acabar acertando o registro que eu quero... o tempo com os 4 ou com 1, é praticamente o mesmo.... tem algo melhor que o MoveBy, nao adianta falar para montar um INDICE, vou explicar o porque, o programa que USA os DBF´s esta em CLIPPER... os indices do clipper são NTX e do delphi são MDX, gerar o indice cada vez que for abrir vai se um eternidade maior ainda.... ;-) obrigado.... (abaixo o exemplo de como uso...) tem algo comando para mostrar o DELETADOS e eu saber que ele estão deletados ??? em clipper "IF DELETED() THEM" em DELPHI não mostra, não sei como, e não sei se mostrando vai avisar quais são.... ;-) f_aguarde.Show; reg := StrToInt(Trim(Edit1.Text)); table1.MoveBy( reg - Table1.RecNo ); reg := StrToInt(Trim(Edit1.Text)); table1.MoveBy( reg - Table1.RecNo ); reg := StrToInt(Trim(Edit1.Text)); table1.MoveBy( reg - Table1.RecNo ); reg := StrToInt(Trim(Edit1.Text)); table1.MoveBy( reg - Table1.RecNo ); f_aguarde.Hide; Luiz Escobar Analista/Desenvolvedor: WEB - HTML/JavaScript/PHP/MySQL WINDOWS - Delphi/MyDAC/ASSEMBLER/MySQL/xBase DOS - Clipper/Assembler xBase SERVIDORES - NetWare4.11, LINUX-REDHAT9, WINDOWS-2k LINUX - LAZARUS/Kylix/MySQL; http://www.megasistema.com.br [As partes desta mensagem que não continham texto foram removidas] -- <<<<< FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM >>>>> <*> Para ver as mensagens antigas, acesse: http://br.groups.yahoo.com/group/delphi-br/messages <*> Para falar com o moderador, envie um e-mail para: [EMAIL PROTECTED] Links do Yahoo! Grupos <*> Para visitar o site do seu grupo na web, acesse: http://br.groups.yahoo.com/group/delphi-br/ <*> Para sair deste grupo, envie um e-mail para: [EMAIL PROTECTED] <*> O uso que você faz do Yahoo! Grupos está sujeito aos: http://br.yahoo.com/info/utos.html