COLOCANDO AUTONUMERACAO DINAMICA EM UMA COMBOBOX
Bom pessoal sou novo no site e novo em VB e gostaria de uma ajuda...
Estou criando um projeto de academia em VB6 e estou com um problema com autonumeracao quando eu vou adicionar um novo aluno ele adiciona e manda o numero seguinte da combobox mas se eu excluir um aluno e ir para add um novo ele manda um numero vago em base do ultimo adicionado.
Ex: Tenho uma tabela com sete registros de alunos com numeros de 1 a 7, se eu excluir o aluno 2 e clicar em novo ele manda o n°8 que e vago, tipo mandase o menor numero vago q no caso e o 2....
O codigo que coloquei:
If alunos.BOF Then
cmb_matricula.Text = 1
Else
alunos.MoveLast
cmb_matricula.Text = alunos([Ô]matricula[Ô]) + 1
End If
Estou criando um projeto de academia em VB6 e estou com um problema com autonumeracao quando eu vou adicionar um novo aluno ele adiciona e manda o numero seguinte da combobox mas se eu excluir um aluno e ir para add um novo ele manda um numero vago em base do ultimo adicionado.
Ex: Tenho uma tabela com sete registros de alunos com numeros de 1 a 7, se eu excluir o aluno 2 e clicar em novo ele manda o n°8 que e vago, tipo mandase o menor numero vago q no caso e o 2....
O codigo que coloquei:
If alunos.BOF Then
cmb_matricula.Text = 1
Else
alunos.MoveLast
cmb_matricula.Text = alunos([Ô]matricula[Ô]) + 1
End If
O que você deseja fazer é REAPROVEITAR o código vago?
Mas, e o HISTÓRICO de PAGAMENTO e FREQUÊNCIA do cliente excluÃdo?
Normalmente se utiliza uma CHAVE PRIMÃRIA para referenciar o ALUNO com o PAGAMENTO / FREQUÊNCIA.
Irá excluir esses registros para REAPROVEITAR o código?
Como você vai gerenciar estas questões?
Mas, e o HISTÓRICO de PAGAMENTO e FREQUÊNCIA do cliente excluÃdo?
Normalmente se utiliza uma CHAVE PRIMÃRIA para referenciar o ALUNO com o PAGAMENTO / FREQUÊNCIA.
Irá excluir esses registros para REAPROVEITAR o código?
Como você vai gerenciar estas questões?
Citação::
O que você deseja fazer é REAPROVEITAR o código vago?
Mas, e o HISTÓRICO de PAGAMENTO e FREQUÊNCIA do cliente excluÃdo?
Normalmente se utiliza uma CHAVE PRIMÃRIA para referenciar o ALUNO com o PAGAMENTO / FREQUÊNCIA.
Irá excluir esses registros para REAPROVEITAR o código?
Como você vai gerenciar estas questões?
Quero reaproveitar o menor codigo vago...
Tem como???
[txt-color=#007100]Nossa atitude ao começar um projeto difÃcil é o que determina o resultado[/txt-color]
Cara, na minha opinião isso é totalmente errado. Como vc irá gerar o relatório, buscar os dados e outras coisas do cliente excluÃdo? Não tem como.
O ideal é vc DESATIVAR esse cliente, crie um campo STATUS na tabela de clientes e deixe A como ativo e I como inativo, e nada de excluir. Na hora das consultas, relatórios é só filtrar os clientes ativos e inativos.
O ideal é vc DESATIVAR esse cliente, crie um campo STATUS na tabela de clientes e deixe A como ativo e I como inativo, e nada de excluir. Na hora das consultas, relatórios é só filtrar os clientes ativos e inativos.
Bem concordo com o pessoal, é um erro conceitual realizar cadastros e excluir dados. Alguns programadores menos experientes realizam a gravação dos textos (dados) e não os Ãndices dos registros, assim se excluir um determinado registro, não afetaria os outros lançados como: (pedidos de vendas, notas fiscais, movimento de estoques, etc...) só que isso é errado.
Não entrando no mérito da questão anterior, sim é possÃvel reaproveitar números de forma muito simples, veja:
1- não use campo autonumeração, ao contrário use um Long
2- crie uma outra tabela auxiliar, com um ID e um campo long (cmpNumVago)
3- na rotina de exclusão de seus regitros, pegue o número excluÃdo e salve nessa tabela.
4- ao incluir um novo registro, inicialmente veja se há algum número vago na tabela auxiliar, se houver peque esse número e grave na outra tabela.
basicamente é isso, porém há algumas outras checagens a fazer, caso use um aplicativo multiusuário. Será preciso checar se haverá vários cadastros simultâneos, se há várias tabelas diferentes para reaproveitar códigos, nesse caso será preciso outro campo na tabela auxiliar informando o nome da tabela que tem o número vago, etc...
Não entrando no mérito da questão anterior, sim é possÃvel reaproveitar números de forma muito simples, veja:
1- não use campo autonumeração, ao contrário use um Long
2- crie uma outra tabela auxiliar, com um ID e um campo long (cmpNumVago)
3- na rotina de exclusão de seus regitros, pegue o número excluÃdo e salve nessa tabela.
4- ao incluir um novo registro, inicialmente veja se há algum número vago na tabela auxiliar, se houver peque esse número e grave na outra tabela.
basicamente é isso, porém há algumas outras checagens a fazer, caso use um aplicativo multiusuário. Será preciso checar se haverá vários cadastros simultâneos, se há várias tabelas diferentes para reaproveitar códigos, nesse caso será preciso outro campo na tabela auxiliar informando o nome da tabela que tem o número vago, etc...
Vlw pessoal pela ajuda !
Resolvi tirar a opçao de excluir pensando no que o Luis Herrera falou..
Vlw a todos...
Fechando o Topico....
Nossa atitude ao começar um projeto difÃcil é o que determina o resultado
Resolvi tirar a opçao de excluir pensando no que o Luis Herrera falou..
Vlw a todos...
Fechando o Topico....
Nossa atitude ao começar um projeto difÃcil é o que determina o resultado
Tópico encerrado , respostas não são mais permitidas