CAMPO ID NO ACCESS 2000
Tarde, amigos.
Estou quebrando a cabeca com o access 2000, tenho um campo tipo Texto no access para armazenar os registro que vou inserindo ate ai tudo bem. O problema eh que de uma hora para outra, a sequencia parou de funcionar corretamente ou seja tenho 24 registros e uso o codigo abaixo para ir somando mais 1 a cada novo registro iniciado no VB, assim:
Dim SQL As String
SQL = [Ô]SELECT * FROM TbProjeto[Ô]
Set rs = cn.Execute(SQL)
Do While Not rs.EOF
TxtReg.Text = Format$(rs.Fields([Ô]ID[Ô]) + 1, [Ô]000000[Ô]) [ô]porque nao soma mais[ô]
rs.MoveNext
Loop
Estava tudo certo ate agora, pois no banco o ultimo registro eh 000024, o proximo deveria ser o 000025, mais para a minha insatisfacao o bendito nao soma mais, so fica no 000024, mesmo eu digitando manualmente direto no banco o registro = 000025 e depois chamando o form no VB ele continua no registro anterior = 000024.
alguem ja passou por isso e tem uma solucao para me ajuda, valeu a todos.
Estou quebrando a cabeca com o access 2000, tenho um campo tipo Texto no access para armazenar os registro que vou inserindo ate ai tudo bem. O problema eh que de uma hora para outra, a sequencia parou de funcionar corretamente ou seja tenho 24 registros e uso o codigo abaixo para ir somando mais 1 a cada novo registro iniciado no VB, assim:
Dim SQL As String
SQL = [Ô]SELECT * FROM TbProjeto[Ô]
Set rs = cn.Execute(SQL)
Do While Not rs.EOF
TxtReg.Text = Format$(rs.Fields([Ô]ID[Ô]) + 1, [Ô]000000[Ô]) [ô]porque nao soma mais[ô]
rs.MoveNext
Loop
Estava tudo certo ate agora, pois no banco o ultimo registro eh 000024, o proximo deveria ser o 000025, mais para a minha insatisfacao o bendito nao soma mais, so fica no 000024, mesmo eu digitando manualmente direto no banco o registro = 000025 e depois chamando o form no VB ele continua no registro anterior = 000024.
alguem ja passou por isso e tem uma solucao para me ajuda, valeu a todos.
VOCE JA TENTOU MUDAR O TIPO DE CAMPO TENTA COLOCAR COMO TEXTO
amigo vc tem que mudar o campo id para numerico
mas tente assim
-------------------------------------------
Dim SQL As String
SQL = [Ô]SELECT * FROM TbProjeto Order By ID Desc[Ô]
Set rs = cn.Execute(SQL)
TxtReg.Text = Format$(rs.Fields([Ô]ID[Ô]) + 1, [Ô]000000[Ô]) [ô]porque nao soma mais[ô]
abraço!
mas tente assim
-------------------------------------------
Dim SQL As String
SQL = [Ô]SELECT * FROM TbProjeto Order By ID Desc[Ô]
Set rs = cn.Execute(SQL)
TxtReg.Text = Format$(rs.Fields([Ô]ID[Ô]) + 1, [Ô]000000[Ô]) [ô]porque nao soma mais[ô]
abraço!
faria igual luizcomino disse, a diferenca e que dava o select somente no campo que estou querendo somar, tipo.. coloque o campo como integer por exemplo
Dim SQL As String
SQL = [Ô]SELECT id FROM TbProjeto order by id[Ô]
Set rs = cn.Execute(SQL)
if rs.recordcount > 0 then
rs.movelast
txtReg.Text = [Ô][Ô] & Format(rs.Fields([Ô]ID[Ô]) + 1, [Ô]000000[Ô])
else
txtreg.text = [Ô]000000[Ô]
end if
Valeu amigos, vou fazer alguns testes e depois eu posto o resultado.
ERINALDO, eu o campo eh tipo texto, tambem tentei o autonumeracao e nao ficou como esperado, valeu sua ajuda, colega.
LUIZCOMINO, valeu pela orientacao SQL, ficou bom o resultado, fico grato colega.
XXXANGELSXXX, valeu, mais com o campo numerico no access, o proximo registro sempre vai ser o
Valeu,
Colegas do VbMania.
LUIZCOMINO, valeu pela orientacao SQL, ficou bom o resultado, fico grato colega.
XXXANGELSXXX, valeu, mais com o campo numerico no access, o proximo registro sempre vai ser o
Else
, mais de toda maneira fico grato, instrucao do luizcomino, ficou como esperado.Valeu,
Colegas do VbMania.
Tópico encerrado , respostas não são mais permitidas