DBXpress: Problemas com Chave primaria
olá amigos!
estou fazendo um cadastro e utilizo banco de dados IB6, e DBxPresss Para conectar no banco.
SqlDataSet.commandtext =´select * from OBRA where CODOBRA=:COD´
o que eu queria saber é como que eu faço para quando o clientDataSet receber um Append o registro já vir automaticamente com a ChavePrimaria Preenchida?
a chave primaria é um campo integer not null sequencial (1,2,3,4,5,6,7,...)
por que toda vez que recebe append eu preencho com ´0´, de pois do post o trigger faz o serviço de preencher o valor correto, eu queria fazer isso antes, na hora do append. existe essa possibilidade?
agradeço qualquer ajuda
obrigado
estou fazendo um cadastro e utilizo banco de dados IB6, e DBxPresss Para conectar no banco.
SqlDataSet.commandtext =´select * from OBRA where CODOBRA=:COD´
o que eu queria saber é como que eu faço para quando o clientDataSet receber um Append o registro já vir automaticamente com a ChavePrimaria Preenchida?
a chave primaria é um campo integer not null sequencial (1,2,3,4,5,6,7,...)
por que toda vez que recebe append eu preencho com ´0´, de pois do post o trigger faz o serviço de preencher o valor correto, eu queria fazer isso antes, na hora do append. existe essa possibilidade?
agradeço qualquer ajuda
obrigado
Daniel Martins
Curtidas 0
Respostas
Macario
24/01/2007
Olá.
Esta gerando alguma violação ou exceão? :roll:
Esta gerando alguma violação ou exceão? :roll:
GOSTEI 0
Daniel Martins
24/01/2007
está sim. é que estou trabalhando com Mestre e detalhe a tabela OBRA é Mestre da Tabela FOTOS_OBRA.
porém quando informo uma nova obra o CODObra começa com 0, logo quando vou inserir as fotos a chave CODObra da tbl FOTOS_Obras tbm começa com 0.
Para dar certo eu tenho que Salvar a Obra, atualizar a cache, pegar a ultima obra, abrir e liberar para inserir fotos... já fiz isso em outros programas, nao achei nem um pouko funcional... eu só que descobrir como fazer certo, ou achar uma nova maneira de fazer certo.
porém quando informo uma nova obra o CODObra começa com 0, logo quando vou inserir as fotos a chave CODObra da tbl FOTOS_Obras tbm começa com 0.
Para dar certo eu tenho que Salvar a Obra, atualizar a cache, pegar a ultima obra, abrir e liberar para inserir fotos... já fiz isso em outros programas, nao achei nem um pouko funcional... eu só que descobrir como fazer certo, ou achar uma nova maneira de fazer certo.
GOSTEI 0
Paullsoftware
24/01/2007
Mude a prorpiedade AutoRefresh do DataSetProvider para True e dispare a sua trigger no evento AffterInsert, talvez isso ajude, se bem que prefiro passar zero mesmo, mais assim deve funcionar...
uma outra forma seria no mesmo evento vc dá um Post e depois um Edit...
espero ter ajudado :wink:
uma outra forma seria no mesmo evento vc dá um Post e depois um Edit...
espero ter ajudado :wink:
GOSTEI 0
Daniel Martins
24/01/2007
esse é o detalhe, se eu der um post e depois um edit, se o usuário cancelar eu vou ter que testar se devo dar um cancel ou um delete...
GOSTEI 0
Daniel Martins
24/01/2007
Como q dispara a trigger?
geralmente eu faço um ApplyUpdates no onPost do Cds, daí a chave atualiza....
disparar uma trigger assim, nao sei nao..
geralmente eu faço um ApplyUpdates no onPost do Cds, daí a chave atualiza....
disparar uma trigger assim, nao sei nao..
GOSTEI 0