Pessoal, possuo uma tabela de Caixa que possue os seguintes campos Data HIstorico Historicod Complemento, Entrada Saída e Saldo
ela tem 14.000 registros deste inicio de 2006. Cada vez que faço um lançamento, ela tem que atualizar o saldo da data do lançamento endiante, ou seja, tem que aceitar fazer lançamento do mes corrente.... Porem estou com dificuldades para fazer a rotina de atualização do saldo em sql, ai usei uma query e uma table... no meu sistema antigo com paradoz e table funcionava perfeitamente, mas agora que tenho que fazer em sql, ja que a table não ordena por data, complicou... segue abaixo a rotina, se alguem puder melhorar ela ou uma forma melhor de fazer agradeço procedure tfrmcaixa.calculasaldo; var valor : currency; begin tbcaixa.refresh; if querycaixa.recordcount = 1 then begin tbcaixa.locate('Registro',querycaixa['Registro'],[]); tbcaixa.edit; tbcaixa['Saldo'] := querycaixa['Entrada'] - querycaixa['Saida']; tbcaixa.post; querycaixa.refresh; label5.caption := 'SALDO: '+formatfloat('###,##0.00',querycaixa['Saldo']); end else begin querycaixa.prior; if (querycaixa['Saldo'] = null) or (querycaixa.bof) then begin tbcaixa.locate('Registro',querycaixa['Registro'],[]); tbcaixa.edit; tbcaixa['Saldo'] := querycaixa['Entrada'] - querycaixa['Saida']; tbcaixa.post; querycaixa.refresh; end; valor := querycaixa['Saldo']; querycaixa.next; while not querycaixa.eof do begin tbcaixa.locate('Registro',querycaixa['Registro'],[]); tbcaixa.edit; tbcaixa['Saldo'] := valor-querycaixa['Saida']+querycaixa['Entrada']; tbcaixa.post; querycaixa.refresh; valor := querycaixa['Saldo']; querycaixa.next; end; end; label100.caption := 'SALDO: '+formatfloat('###,##0.00',querycaixa['Saldo']); Att Charles A. Chiodi HNS Informática [As partes desta mensagem que não continham texto foram removidas]