Fazer loop em um dbgrid e alterar os valores???

Delphi

27/08/2003

Boa tarde a todos, alguém pode me dizer como faço para fazer um loop no dbgrid alterando os valores da linha?
Tipo assim:
imaginemos que temos 03 linhas e o valor total da compra é de 20,00
assim que for inserindo itens no meu grid, automátimente ele vai rateando este vintes pela quantidade de linha
digamos que na primeira linha é 20,00
na segunda é de 10,00
na terceira é de 6,6666 e assim sucessivamente, ou seja, os valores acima todos serão de 6,666

Espero ter explicado direito...

Obrigado!

Jelves

Ps: Uso Dbexpress SQLDATASET e Interbase


Jelves

Jelves

Curtidas 0

Respostas

Dgpires

Dgpires

27/08/2003

coloca o cursor no primeiro registro da query ou table e depois faz um laço com um contador até o último registro. Depois é só dividir o valor total pelo valor do contador:

IBQuery1.First;
Count := 0;
While not IBQuery1.EoF do
Begin
IBQuery1.Next;
Count := Count + 1; // pode usar também Inc(Count)
end;
Valor := Total / Count

Depois é só repetir o laço acrescentando o valor em cada campo !

Espero ter ajudado,

Douglas


GOSTEI 0
Jelves

Jelves

27/08/2003

Obrigado Douglas, só que tenho três situações que preciso contar exemplo:
0 Todas 1 Carga 2 Descarga. por isso que não posso usar o count

Mais mesmo assim obrigado, por ter me ajudado!

Jelves


GOSTEI 0
Dgpires

Dgpires

27/08/2003

Não entendi pq vc não pode usar o count !

Se você puder mandar o código fonte e o que vc está querendo, eu posso dar uma olhada.

dgpires@hotmail.com


GOSTEI 0
POSTAR