Auto-Numeração Rodando no Delphi
Olá pessoal, estou com uma dúvida na minha aplicação. Na verdade, isso que estou fazendo é só um teste de ligação do Firebird 1.5 no Delphi 7. Bom o que eu fiz até agora foi o seguinte:
- Criei o BD em Firebird 1.5 já com um Gerador e uma Trigger pro campo ´PKCod_Grupo´ (Que é a chave primária) ser do tipo Auto-Numeração.
- Fiz a Conexão do BD com o Delphi usando o dbExpress e os seguintes componentes:
* SQLConecction (Caminho do Bd)
* SQLDataSet (Listar o Bd)
* DataSetProvider (Ligando o SQLDataSet ao ClientDataSet)
* ClientDataSet
* DataSource (Pra exibir os dados que estão no ClientDataSet)
- Criei um pequeno formulário com os campos a serem preenchidos, mais uma DbGrid e DbNavigator.
- Mudei a propriedade Required do Campo ´PkCod_Grupo´ para ´False´.
Bom, se eu rodar essa aplicação e tentar fazer o básico com ela, que é cadastrar nomes para grupos, funciona perfeitamente, inclusive me listando em ordem alfabética, que é como eu quero.
Eu não preciso colocar o código pra isso, que é o q eu tb quero, mas a minha dúvida é a seguinte. Não precisando colocar código, ele nao me aparece nenhum código, tanto quanto eu insiro um registro, como na grid, depois que ele é salvo. Isso tem algum problema? Já que, quando eu usava o Access, ele me mostrava no campo o código gerado, e agora nao mostra.
Isso me faz pensar em outra dúvida ligada a essa. Tenho feito já, em access, um programa q vou trocar pra Firebird. Então, tenho um cadastro de Revistas e Histórias. Pra eu ter uma história, sou obrigado a ter uma revista. Entao fiz o formulário de cadastro de revistas. Quando a revista é salva, ele me abre a opção de inserir histórias pra aquela revista. E quando o usuário clicar em Nova História, além de preparar pra inserção de dados, ele pega o código da revista que está no campo indicado como Chave Primária na inserção de revistas e joga pro campo de código da revista que é Chave Estrangeira na inserção de histórias.
Se o código nao aparece, nao tenho como fazer isso, certo?
Agradeço a ajuda de vcs e desculpem pelo logo texto, mas queria explicar bem o q esta acontecendo...
Allan Elias Ramos :wink:
- Criei o BD em Firebird 1.5 já com um Gerador e uma Trigger pro campo ´PKCod_Grupo´ (Que é a chave primária) ser do tipo Auto-Numeração.
- Fiz a Conexão do BD com o Delphi usando o dbExpress e os seguintes componentes:
* SQLConecction (Caminho do Bd)
* SQLDataSet (Listar o Bd)
* DataSetProvider (Ligando o SQLDataSet ao ClientDataSet)
* ClientDataSet
* DataSource (Pra exibir os dados que estão no ClientDataSet)
- Criei um pequeno formulário com os campos a serem preenchidos, mais uma DbGrid e DbNavigator.
- Mudei a propriedade Required do Campo ´PkCod_Grupo´ para ´False´.
Bom, se eu rodar essa aplicação e tentar fazer o básico com ela, que é cadastrar nomes para grupos, funciona perfeitamente, inclusive me listando em ordem alfabética, que é como eu quero.
Eu não preciso colocar o código pra isso, que é o q eu tb quero, mas a minha dúvida é a seguinte. Não precisando colocar código, ele nao me aparece nenhum código, tanto quanto eu insiro um registro, como na grid, depois que ele é salvo. Isso tem algum problema? Já que, quando eu usava o Access, ele me mostrava no campo o código gerado, e agora nao mostra.
Isso me faz pensar em outra dúvida ligada a essa. Tenho feito já, em access, um programa q vou trocar pra Firebird. Então, tenho um cadastro de Revistas e Histórias. Pra eu ter uma história, sou obrigado a ter uma revista. Entao fiz o formulário de cadastro de revistas. Quando a revista é salva, ele me abre a opção de inserir histórias pra aquela revista. E quando o usuário clicar em Nova História, além de preparar pra inserção de dados, ele pega o código da revista que está no campo indicado como Chave Primária na inserção de revistas e joga pro campo de código da revista que é Chave Estrangeira na inserção de histórias.
Se o código nao aparece, nao tenho como fazer isso, certo?
Agradeço a ajuda de vcs e desculpem pelo logo texto, mas queria explicar bem o q esta acontecendo...
Allan Elias Ramos :wink:
Aersoftware
Curtidas 0
Respostas
Aersoftware
09/06/2004
Há, só pra atualizar, hj eu tentei abrir o executável do teste, direto do q foi criado e nao rodando ele pelo Delphi. Criei alguns registros e fechei, quando abri ele denovo, não tinha mais nada lá. Isso é normal?
Allan Elias Ramos :roll:
Allan Elias Ramos :roll:
GOSTEI 0
Marcelo.c
09/06/2004
Se o código nao aparece, nao tenho como fazer isso, certo?
É possível ´ler´ o código gerado. Veja [url=http://delphiforum.icft.com.br/forum/viewtopic.php?t=30242&highlight=function]aqui[/url].Criei alguns registros e fechei, quando abri ele denovo, não tinha mais nada lá. Isso é normal?
Quando você não aplica as alterações(ApplyUpdates), e não comita a transação(commit).GOSTEI 0
Aersoftware
09/06/2004
[quote:144872a9f8=´AerParker´]Criei alguns registros e fechei, quando abri ele denovo, não tinha mais nada lá. Isso é normal?
Quando você não aplica as alterações(ApplyUpdates), e não comita a transação(commit).[/quote:144872a9f8]Mas como tenho q fazer pra isso funcionar? Pensei q o dbNavigator já fazia isso automaticamente.. :cry:
Allan Elias Ramos :cry:
GOSTEI 0