[firebase-br] Problema com Trigger
Edinho
ed.rodrigo em gmail.com
Sáb Maio 23 19:12:10 -03 2009
Olá pessoal, estou montando uma trigger aqui e to experimentando alguns
problemas, nao tenho certeza se estou fazendo da maneira certa, a trigger
compila, mas qnd ela é ativada ocorre um erro, bom dexa eu explicar o que
quero fazer:
Eu tenho uma tabela, na qual guardo as informaçoes de um funcionario, horas
que ele trabalhou:
hora entrada,
hora saida,
horas que trabalhou,
basicamente, esses sao os campos, oque eu queria é que quando o funcionario
saisse, fosse feito o calculo das qtde de horas que ele trabalhou, pra isso,
montei a seguinte trigger:
CREATE OR ALTER trigger funcionario_trabalhadas_au0 for
funcionario_trabalhadas
active after update position 0
AS
declare variable trabalhadas numeric (18,0);
declare variable entrada timestamp;
declare variable saida timestamp;
begin
if (new.functrab_codigo <> old.functrab_codigo) then
exception usuario_trocado;
else begin
select funcionario_trabalhadas.functrab_horaentrada from
funcionario_trabalhadas
where funcionario_trabalhadas.functrab_codigo = new.functrab_codigo
into :entrada;
select funcionario_trabalhadas.functrab_horasaida from
funcionario_trabalhadas
where funcionario_trabalhadas.functrab_codigo = new.functrab_codigo
into :saida;
trabalhadas = udf_HoursBetween(:saida, :entrada);
update funcionario_trabalhadas set
funcionario_trabalhadas.functrab_trabhora = :trabalhadas
where funcionario_trabalhadas.functrab_codigo = new.functrab_codigo;
end
end
ela executa normalmente, porem qnd eu vou inserir algo na tabela, aconte
isso:
Too many concurrent executions of the same request.
Too many concurrent executions of the same request.
At trigger 'FUNCIONARIO_TRABALHADAS_AU0' line: 20, col: 9
At trigger 'FUNCIONARIO_TRABALHADAS_AU0' line: 20, col: 9
At trigger 'FUNCIONARIO_TRABALHADAS_AU0' line: 20, col: 9
At trigger 'FUNCIONARIO_TRABALHADAS_AU0' line: 20, col: 9
At trigger 'FUNCIONARIO_TRABALHADAS_AU0' line: 20, col: 9
Alguem pode me ajudar?
:s
Obrigado desde já!
--
- Edinho
-- Engenharia da Computação / 3 º Termo
--- Araçatuba/SP
Mais detalhes sobre a lista de discussão lista