Fórum Inserindo com Campo autoincrementos dbexpress. #330288

28/09/2006

0

Boa tarde pessoal..
estou fazendo uma coisa aqui que está dando errado e não sei se é a forma certa de fazer o sistema..Então na realidade queria saber se estou fazendo da forma certa, se não estiver , se vcs poderiam me indicar a forma certa a fazer e se caso estiver certo o modo como eu tenho que fazer para corrigir o erro..(confuso né :oops: )

É uma coisa simples mas como nunca fiz em dbexpress se torna um pouco confuso ...Uso Delphi 7 e Sqlserver 2000

Tenho uma tela em que cadastro as empresas que serão meus clientes..com todos os campos relativos a empresa(CodClientePJ,NomeEmpresa,cnpj..etc) este campo CodClientePJ é um campo autoincremento..
tenho que cadastrar todos os diretores/Gerentes da empresa, então criei a tabela ClientesPJDiretores(CodClientesPJDiretores,NomeClientesPJDiretores,CPF,CodClientePJ)
aí uso um dbgrid para adicionar todos os diretores relativos aquela empresa..
depois mando dar um applyupdates na tabela ClientesPJ e ClientesPJDiretores..
só que meu problema é com o campo autoicremento que só aparece depois que gravo o ClientesPJ então dá erro qdo vou incluir os diretores..
tô fazendo um gerador de valores, incluindo 1 no max(codClientePJ).. mas tenho medo pq esse sistema vai ser usado por mtos usuários e tenho medo de as estações pegarem o mesmo código e dar zica..

vcs podem me dar uma ajuda..
obrigado


Eric.miranda

Eric.miranda

Responder

Posts

28/09/2006

Mahdak

http://forum.clubedelphi.net/viewtopic.php?t=80597&highlight=


Responder

Gostei + 0

28/09/2006

Mahdak

SQLDataSet2.Close; 
SQLDataSet2.CommandText := ´Select GEN_ID(gen_agenda_id,1) as PROX from RDB$DATABASE´; 
SQLDataSet2.Open; 

Edit_Codigo.text := IntToStr(SQLDataSet2PROX.AsInteger); 

ClientDataSet1.Open; 
ClientDataSet1.Insert; 

// comandos para salvar no banco.... 

ClientDataSet1.post 
ClientDataSet1.applyupdates(0); 



Responder

Gostei + 0

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar