Field value required
tenho uma trigger no firebird que gera um código para minha tabela X, mas quando dou applyupdates no clientdataset dá este erro (field value required).
Venus
Curtidas 0
Respostas
Fava
24/10/2003
Você precisa informar o valor do código, você não mencionou mas provavelmente deve estar utilizando um generator, se for isso tente montar assim a sua query de inserção
INSERT INTO FOO(CODIGO,NOME) VALUES(GEN_ID(MEU_GENERATOR,1),´BLA´);
INSERT INTO FOO(CODIGO,NOME) VALUES(GEN_ID(MEU_GENERATOR,1),´BLA´);
GOSTEI 0
Venus
24/10/2003
é... realmente eu tenho um generator ....
ai vai a estrutura da minha trigger:
CREATE TRIGGER NOVO_CODJUNTAVARA FOR PTRAB_JUNTAVARA
ACTIVE BEFORE INSERT POSITION 0
AS
BEGIN
new.codjuntavara = gen_id(ptrab_juntavara_gen, 1);
END
** era para estar funcionando (eu acho) mas pelo que vejo há algum detalhe que está passando desapercebido...
ai vai a estrutura da minha trigger:
CREATE TRIGGER NOVO_CODJUNTAVARA FOR PTRAB_JUNTAVARA
ACTIVE BEFORE INSERT POSITION 0
AS
BEGIN
new.codjuntavara = gen_id(ptrab_juntavara_gen, 1);
END
** era para estar funcionando (eu acho) mas pelo que vejo há algum detalhe que está passando desapercebido...
GOSTEI 0
Fava
24/10/2003
A mensagem ´Field Value Required´ provavelmente está sendo gerada pelo próprio ApplyUpdate, ou seja, antes que seu Trigger tenha a chance de atribuir o valor ao código. Acho que existe uma opção para evitar que esta verificação seja feita, mas não me recordo agora onde desabilitá-la.
Quando uso generator procuro atribuir o valor da forma que havia mencionado ou através de uma SP chamada no evento OnNewRecord da query.
Quando uso generator procuro atribuir o valor da forma que havia mencionado ou através de uma SP chamada no evento OnNewRecord da query.
GOSTEI 0
Duarteol
24/10/2003
para que este valor não seja requerido, vc. deve ir ao clientdataset e sqldataset e colocar na proprieter ´Requeried´ do campo = False;
GOSTEI 0