TRIGGER NO FIREBIRD
                    Bom dia a todos
tenho em meu sistema uma tabela produtos: codpro, descpro, ..., precovenda, precocusto, margemaplic, ..., são varias colunas (48 ao todo), bom estou querendo automatizar o calculo da margem bruta aplicada entre o precocusto e precovenda, entao queria uma trigger que ao INSERIR ou ATUALIZAR um registro que o campo margemaplic seja atualizado junto. Assim não presciso calcular ele via codigo cada vez que o mesmo for requisitado na tela.
Segue a função para calculo da margem bruta aplicada calculada via código (vb6)
            tenho em meu sistema uma tabela produtos: codpro, descpro, ..., precovenda, precocusto, margemaplic, ..., são varias colunas (48 ao todo), bom estou querendo automatizar o calculo da margem bruta aplicada entre o precocusto e precovenda, entao queria uma trigger que ao INSERIR ou ATUALIZAR um registro que o campo margemaplic seja atualizado junto. Assim não presciso calcular ele via codigo cada vez que o mesmo for requisitado na tela.
Segue a função para calculo da margem bruta aplicada calculada via código (vb6)
  Public Function CalculaMargem(ByVal pCusto As Double, ByVal pVenda As Double) As Double
103   If pVenda = 0 Or pCusto = 0 Then
106      CalculaMargem = 0
109   Else
112      CalculaMargem = ((pVenda / pCusto) - 1) * 100
115   End If
End Function 
                CREATE TRIGGER CALCULA_MARGEM FOR SUA_TABELA ACTIVE BEFORE INSERT OR UPDATE POSITION 0 AS
begin
    new.Margem = ((new.pVenda / new.pCusto) - 1) * 100;          
endAcho que resolve.
                        Tópico encerrado , respostas não são mais permitidas