Fórum Dúvida sobre campos calculados #58915
26/09/2007
0
O problema costuma ocorrer quando o campo em questão depende de valores provenientes de outras tabelas. Um caso típico é em relações mestre-detalhe onde um campo na tabela mestre deve mostrar a soma total de um campo na tabela detalhe. Eu sempre resolvi isso fazendo um campo calculado no próprio Delphi, mas possui o incoveniente de não se atualizar automaticamente a medida que você trabalha nos registros detalhe (no caso de um formulário mestre-detalhe), já que esses campos só se atualizam ao mexer no dataset onde está o campo.
Por isso, gostaria de saber quais as soluções alternativas para esses casos: já pensei em, por exemplo, em criar o campo fisicamente na tabela e usar triggers na tabela detalhe para manter o campo atualizado.
Existe alguma maneira de se criar um campo calculado numa query/view que permita, por exemplo, obter o valor total de um campo em outra tabela (no caso teria todos os campos da tabela mestre e mais um calculado com a soma da tabela detalhe), de preferência sem precisar GROUP BY e similares?
Quais dessas soluções seria a mais adequada do ponto de vista de confiabilidade e performance?
P. S. Uso BDS 2006 e Firebird 2.0
Gandalf.nho
Curtir tópico
+ 0Posts
01/10/2007
Gandalf.nho
Gostei + 0
04/10/2007
Armando.boza
crie uma procedure que faça todas as somas que vc necessita e crie uma view a partir da procedure.
acho que da certo
Gostei + 0
04/10/2007
Gandalf.nho
Gostei + 0
22/10/2007
Gandalf.nho
Gostei + 0
28/10/2007
Sremulador
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)