CODIGO AUTO-INCREMENTO NOVATO

USUARIO.EXCLUIDOS 13/08/2007 18:20:32
#230776
Ai pessoal eu so novo em programação mas eu to querendo em um cadastro de cliente por exemplo, eu tenho o codigo de clientes eu quero que o vb quando abro a tela de cadastro já me coloque o codigo de clientes atual a ser digitado exemplo, eu digitei o codigo 1 que foi o primeiro cadastro, eu gostaria que aparece o 2 quando eu abrisse o form.... e quando eu gravasse fizesse um incremento do codigo e tb colocasse no compo de codigo exemplo, eu salvei o 2 e já me aparecesse o proximo... alguem poderia me ajudar ai eu já procurei e não achei nada, fico grato ai a todos e espero contribuir ai com todos com o que eu apreender também... um grande abraço
ALEXANDREMOTA 13/08/2007 18:28:30
#230778
Vc usa Datacontrol, DAO ou ADO??
VB6MASTER 13/08/2007 18:42:55
#230779
Access com ADO, faça:
Use no Form_Activate o código abaixo:
'consulta pra vc pegar o último código inserido no BD
cSQL = "SELECT TOP 1 * from Geral ORDER BY AProtocolo desc, NProtocolo desc"
Dados.rsGeral.Open cSQL, , adOpenDynamic, adLockOptimistic
'jogue o resultado numa variável publica (num módulo).
tpDados.vNProt = Dados.rsGeral!NProtocolo
'jogue em seu textbox, label, etc.
Text1.text = (tpDados.vNProt + 1)
'é o próximo código (o diponível para uso, pq somado de 1)
Dados.rsGeral.Close 'feche o BD

Depois do seu código, grave a o valor da variável e em outro evento, incremente 1, para ser novamente utilizado.
USUARIO.EXCLUIDOS 13/08/2007 19:48:18
#230786
ai Alexandre é ADO, creio que o nosso amigo VB6 Master já me deu uma ideia de como se faz, como eu so muito cru ainda eu não consegui entender muito o que ele quiz me passar, se vc puder ser um pouco mais especifico amigo eu agraço muito, e ah agradeço ai pela atenção aos dois que leram ao meu topico, valeu mesmo pela ajuda... espero anciosamente a mais respostas, quem puder me ajudar desde agora eu agraço ai pessoal
um grande abraço
USUARIO.EXCLUIDOS 13/08/2007 23:45:25
#230795
Camarada eu faço o seguinte, usando controle adodc:

ponho no RecordSource do ADODC_ultimo_cod

SELECT MAX(COD) FROM TABELA

então ligo uma textbox (TextULTIMOCOD) a este ADODC_ultimo_cod, então ela irá me retornar senmpre o ultimo código inserido

quando vou inserir ponho no botão de inserir novo registro:

Private Sub Command1_Click()
AdodcClientes.Recordset.AddNew
TextCOD.Text = TextULTIMOCOD + 1

então a textbox do código sempre irá inserir o ultimo código acrescido de 1

no botão salvar ponho o seguinte:

AdodcClientes.Recordset.Update
Dim vOK As Integer
vOK = MsgBox("Registro incluído com sucesso", vbOKOnly, "Salvar registro")
If vOK = vbOK Then
ADODC_ultimo_cod.Refresh

note que salvo o registo com o update e depois atualizo o ADODC_ultimo_cod com o refresh para que ele faça novamente a busca e traga este ultimo código inserido.

Beleza? espero que te ajude a pensar

USUARIO.EXCLUIDOS 14/08/2007 10:25:40
#230815
ai amigão, muito obrigado pela resposta, ainda estou aberto a mais respostas quem quizer me dar uma força ai eu agradeço... grande abraço a todos
USUARIO.EXCLUIDOS 14/08/2007 10:34:18
#230818

KAUPOA..

vc ta usando Access? se for...pq vc n cria já o campo como auto-numeração na tabela...?

USUARIO.EXCLUIDOS 14/08/2007 11:48:48
#230830
sinkertec,
cara eu pensei nisso, só que ai ele não me coloca na tela o proximo codigo ou o codigo depois que eu salvar e o objetivo é que o vb sempre me coloque no campo o proximo codigo que vai ser salvo no banco.
mas mesmo assim eu agradeço ai pela atenção um grande abraço amigão...!
USUARIO.EXCLUIDOS 14/08/2007 11:59:02
#230831

Entendi..sua necessidade é mostrar o código...então..blz



acho q os códigos acima..resolverão seu problema!!

boa sorte
USUARIO.EXCLUIDOS 15/08/2007 11:06:34
#230984
Sinkertec,
olha eu tentei usar o exemplo dos nossos amigos acima, só como eu falei anteriormente, eu ainda so muito cru no ramo do progracao em VB, nao entendi muito bem o que os amigos me passaram, teria um jeito mais simples que uma pessoa que esta iniciando poderia absorver de uma maneira mais intuitiva... eu agradeço pela atenção....
RODRIGOMARCHESE 15/08/2007 11:19:06
#230992
Seguinte:

Do jeito que você está querendo, quando seu sistema estiver instalado em vários micros em uma mesma empresa, e mais de um usuário estiver trabalhando na mesma tela, vai aparecer o mesmo código para eles, em novos cadastros diferentes. Ou seja, vai parecer mais um sistema monousuário do que multi-usuário.
Você TEM que fazer o que o SINKERTEC disse. Deixar isso para o banco de dados.
Se for um cadastro novo o que vai diferenciar em mostrar ou não o código ? Em nada meu amigo.
Que tal dois usuários tentando salvar dois cadastros com o mesmo código ? Vai ter sorte quem salvar por último, pois quem salvar primeiro vai ter seus dados alterados quando o último salvar no banco. Ou seja, o primeiro cadastro foi pro beleléu.
Depois que você salvar no banco de dados, aí você traz o código brother.

Página 1 de 2 [19 registro(s)]
Tópico encerrado , respostas não são mais permitidas