Pegar valor da trigger antes da inclusão.

Delphi

14/10/2006

Olá pessoal

Estou com um grande problema,

Seguinte,

Os códigos autoincrementais do meu sistema, estou gerando por triggers no banco de dados, só que estou com um problema.

Preciso fazer um cadastro mestre-detalhe de grupos e subgrupos, faço o cadastro do grupo, na hora que cai no grid pra adicionar os registros, na hora que tento adicioar um registro, ocorre uma exceção de violação de valor nulo, do campo estrangeiro do codigo do grupo no subgrupo, o problema está exatamente ai, o campo não pode ser preenchido porque o código ainda nao foi gerado pelo banco de dados, já que os dois neste momento estão em fase de inclusão. Eu tentei dar um post na tabela de grupos antes de incluir os dados na tabela de subgrupos pra v se gerava o codigo de grupo antes mais não funcionou, continua dando msg de valor nulo.

Basicamente eu preciso pegar os valores dos codigos da tabela de grupos antes de ser incluida, pra poder colocar no campo estrangeiro da tabela de subgrupos.

Como vocês fazem pra resolver esse problema?

Agradeço,


Gardel

Gardel

Curtidas 0

Respostas

Steve_narancic

Steve_narancic

14/10/2006

Eu criei uma storedprocedure que já pega o valor do generator no insert do dataset


GOSTEI 0
Motta

Motta

14/10/2006

ALTERE A TRIGGER PARA TORNAR O INCREMENTO OPCIONAL NA TRIGGER DEVE TER ALGO


CAMPODACHAVE := OBTERGENERATOR

FAÇA

IF CAMPODACHAVE IS NULL THEN
CAMPODACHAVE := OBTERGENERATOR

ASSIM A APLICAÇÃO PODE OU NÃO PASSAR A CHAVE , OBTENDO A SEQUENCIA ANTES, E QUALQUER APLICACAO QUE JÁ EXISTA FUNCIONA NORMALMENTE


GOSTEI 0
POSTAR