Ok... Segue o codigo que usei para calcular o total do item (o código esta em 
C++, porque no momento estou usando o C++ no BDS 2006)  :

void __fastcall TfrmCadPedItem::tblPedItemCalcFields(TDataSet *DataSet)
{
   double vItpValTotIte;

 // Calcula total do item
 try
 {
  vItpValTotIte = ((tblPedItemITPVALUNI->AsFloat * tblPedItemITPQTD->AsFloat) +
      tblPedItemITPVALACR->AsFloat) - tblPedItemITPVALDES->AsFloat;
 }
 catch (...)
 {
  vItpValTotIte = 0;
 }
 tblPedItemFrlITPVALTOTITE->AsFloat = vItpValTotIte;


    // Calcula total do pedido
    ...

}
//---------------------------------------------------------------------------


    Dai não sei como somar o total de todas as ocorrencias deste campo 
calculado, supondo que tenha 5 registro, ou seja, 5 itens cada um com um valor 
total. Como calcular o valor total geral do pedido  ??? Talves seje algo muito 
simples mas não consegui captar o logica!

PS.: Caso puderes me dar um exemplo pode ser em Pascal (Delphi) mesmo, o 
importante pra mim seria a logica usada !

Obrigado !



  ----- Original Message ----- 
  From: Eduardo Castro Alves 
  To: delphi-br@yahoogrupos.com.br 
  Sent: Tuesday, June 26, 2007 2:15 PM
  Subject: Re: [delphi-br] Campos calculados


  Da mesma maneira que você fez no primeiro caso.

  Ainda não entendi o mistério e nem as varias maneiras que você fez.

  Poste aqui o evento OnCalcField deste DataSet para que possamos ver o 
  que esta errado.

  Eduardo

  Tiago Zacchi escreveu:
  >
  > Olá,
  >
  > Primeiramente obrigado a todos.
  >
  > >Tem SIM, qualquer dataset faz isso, basta adicionar o novo campo e no
  > >evento OnCalcFied do Data Set ( Query ou Table ) tratar a informação.
  >
  > Mas como posso "tratar a informação", tentei de varias maneiras. veja 
  > que quero calcular a soma de todas as ocorrencias de um campo que já é 
  > uma formula!!!
  >
  > Vc poderia me dar um exemplo ? Pois tudo que tentei não deu o 
  > resultafo esperado !
  >
  > Obrigado !
  >
  > [As partes desta mensagem que não continham texto foram removidas]
  >
  > 



   

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

Responder a