Fórum Erro: This operation is not defined for system tables. unsuccessful metadata update. MODIFY TRIGGER failed. Malformed string. #463436
09/12/2013
0
Não consigo descobrir o erro na TRIGGER abaixo.
Alguém pode ajudar.
O erro qeu dá é o seguinte:
This operation is not defined for system tables.
unsuccessful metadata update.
MODIFY TRIGGER failed.
Malformed string.
Esta é a TRIGGER:
AS
DECLARE VARIABLE VAR_VL_CR_PREV_SALDO_ANT NUMERIC(16,2);
BEGIN
IF (INSERTING) THEN BEGIN
SELECT FIRST 1 FC_VL_CR_PREV_SALDO_ANT FROM FLUXOCAIXA WHERE FC_DT < NEW.FC_DT ORDER BY FC_DT DESC INTO :VAR_VL_CR_PREV_SALDO_ANT;
IF (VAR_VL_CR_PREV_SALDO_ANT IS NULL) THEN BEGIN
VAR_VL_CR_PREV_SALDO_ANT = 0;
END
INSERT INTO FLUXOCAIXA (FC_DT, FC_VL_CR_PREV_SALDO_ANT, FC_VL_CR_PREV_SALDO_ATUAL) VALUES (NEW.FC_DT, :VAR_VL_CR_PREV_SALDO_ANT, (:VAR_VL_CR_PREV_SALDO_ANT + NEW.FC_VL_CR_PREV));
END
IF (UPDATING) THEN BEGIN
UPDATE FLUXOCAIXA SET FC_VL_CR_PREV_SALDO_ANT = FC_VL_CR_PREV_SALDO_ANT + NEW.FC_VL_CR_PREV, FC_VL_CR_PREV_SALDO_ATUAL = FC_VL_CR_PREV_SALDO_ATUAL + NEW.FC_VL_CR_PREV WHERE FC_DT = NEW.FC_DT;
END
UPDATE FLUXOCAIXA SET FC_VL_CR_PREV_SALDO_ANT = FC_VL_CR_PREV_SALDO_ANT + NEW.FC_VL_CR_PREV, FC_VL_CR_PREV_SALDO_ATUAL = FC_VL_CR_PREV_SALDO_ATUAL + NEW.FC_VL_CR_PREV WHERE FC_DT > NEW.FC_DT;
END
Alguém pode ajudar.
O erro qeu dá é o seguinte:
This operation is not defined for system tables.
unsuccessful metadata update.
MODIFY TRIGGER failed.
Malformed string.
Esta é a TRIGGER:
AS
DECLARE VARIABLE VAR_VL_CR_PREV_SALDO_ANT NUMERIC(16,2);
BEGIN
IF (INSERTING) THEN BEGIN
SELECT FIRST 1 FC_VL_CR_PREV_SALDO_ANT FROM FLUXOCAIXA WHERE FC_DT < NEW.FC_DT ORDER BY FC_DT DESC INTO :VAR_VL_CR_PREV_SALDO_ANT;
IF (VAR_VL_CR_PREV_SALDO_ANT IS NULL) THEN BEGIN
VAR_VL_CR_PREV_SALDO_ANT = 0;
END
INSERT INTO FLUXOCAIXA (FC_DT, FC_VL_CR_PREV_SALDO_ANT, FC_VL_CR_PREV_SALDO_ATUAL) VALUES (NEW.FC_DT, :VAR_VL_CR_PREV_SALDO_ANT, (:VAR_VL_CR_PREV_SALDO_ANT + NEW.FC_VL_CR_PREV));
END
IF (UPDATING) THEN BEGIN
UPDATE FLUXOCAIXA SET FC_VL_CR_PREV_SALDO_ANT = FC_VL_CR_PREV_SALDO_ANT + NEW.FC_VL_CR_PREV, FC_VL_CR_PREV_SALDO_ATUAL = FC_VL_CR_PREV_SALDO_ATUAL + NEW.FC_VL_CR_PREV WHERE FC_DT = NEW.FC_DT;
END
UPDATE FLUXOCAIXA SET FC_VL_CR_PREV_SALDO_ANT = FC_VL_CR_PREV_SALDO_ANT + NEW.FC_VL_CR_PREV, FC_VL_CR_PREV_SALDO_ATUAL = FC_VL_CR_PREV_SALDO_ATUAL + NEW.FC_VL_CR_PREV WHERE FC_DT > NEW.FC_DT;
END
Celso Medeiros
Curtir tópico
+ 0
Responder
Posts
12/12/2013
Celso Medeiros
Pessoal,
Resolvido...
O problema era com a instalação do IBExpert.
Resolvido...
O problema era com a instalação do IBExpert.
Responder
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)