Faccruz 0 Denunciar post Postado Agosto 27, 2009 SELECT count(*) from metas where atingiu = 'S' and idfuncionario = 1 and mesano between (CURRENT_DATE - INTERVAL 3 MONTH) and CURRENT_DATE); Essa aqui roda de boa?Parece que tem um ")" no final que nao deveria ter, antes do ";" ..... "and CURRENT_DATE);" ta errado em todas, corrija isso e vamos tentar, agora acho que é só isso abraço Realmente tinha um ")" antes do ";" Acertei e aproveitei mudar um pouco a Trigger, segue ela: CREATE TRIGGER ATIVA_VENDEDOR AFTER INSERT ON METAS FOR EACH ROW BEGIN DECLARE IQTD, TPFUNC INT; SELECT IDFUNCAO INTO TPFUNC FROM FUNCIONARIO WHERE IDFUNCIONARIO = NEW.IDFUNCIONARIO; CASE TPFUNC WHEN 2 THEN SELECT count(*) INTO IQTD from metas where atingiu = 'S' and idfuncionario = NEW.IDFUNCIONARIO and mesano between (CURRENT_DATE - INTERVAL 12 MONTH) and CURRENT_DATE; CALL ATIVA_VENDEDOR(NEW.IDFUNCIONARIO, IQTD, TPFUNC); ELSE SELECT count(*) INTO IQTD from metas where atingiu = 'S' and idfuncionario = NEW.IDFUNCIONARIO and mesano between (CURRENT_DATE - INTERVAL 6 MONTH) and CURRENT_DATE; CALL ATIVA_VENDEDOR(NEW.IDFUNCIONARIO, IQTD, TPFUNC); END CASE; END Mas o erro persiste!! Compartilhar este post Link para o post Compartilhar em outros sites
LHAlmeida 0 Denunciar post Postado Agosto 27, 2009 Tu tem mais de uma linha nos seus stataments dos cases faltou os BEGIN END; Ficou show com a procedure hein ? Massa! Compartilhar este post Link para o post Compartilhar em outros sites
Faccruz 0 Denunciar post Postado Agosto 27, 2009 Tu tem mais de uma linha nos seus stataments dos cases faltou os BEGIN END; Ficou show com a procedure hein ? Massa! Coloquei, e adivinhe? O erro ainda insiste... To achando que o erro é meu BD... é versão 5.1 Server Procedure criada tbm... Compartilhar este post Link para o post Compartilhar em outros sites
LHAlmeida 0 Denunciar post Postado Agosto 27, 2009 Não muda nem a linha do erro? você quis dizer q a procidure ta criada né? a passagem de parametros tb esta na qtd certa e talz ne? Compartilhar este post Link para o post Compartilhar em outros sites
Faccruz 0 Denunciar post Postado Agosto 27, 2009 Não muda nem a linha do erro? você quis dizer q a procidure ta criada né? a passagem de parametros tb esta na qtd certa e talz ne? Isso o erro sempre fica na linha 1, mas na mensagem fala da linha 4, onde tá o DECLARE TPFUNC INT; porem se eu tiro, fala que não foi declarado. Chamei a procedure (call Ativa_Vendedor(170, 8, 2);) e faz os procedimentos corretamente. O problema é a criação da Trigger. Compartilhar este post Link para o post Compartilhar em outros sites