|
Postada em 18/05/2006 14:58 hs
Tenho um campo em meu banco de dados que nele quero informar assim, RIB01, e quando eu for lançar o proximo registro ele fique RIB02 e assim por diante!!! Como faço isso pra aparecer no meu formulario logo quando o usuario vai cadastrar o registro, quero q ele pegue o último do banco de dados e some + 1, igual no exemplo acima!!!
Abraços
Junior Ribeirão Preto-SP
|
|
|
|
|
Postada em 18/05/2006 15:08 hs
xiii fedeeeu!! Brincadeira... Seguinte... ordena por esse campo. Ae vc pega o último e separa letras de numeros. Se for padrão como tá ae faz assim: dim a as Long dim b as string a = clng(Right(rs("campo"),2)) + 1 'a = 1 + 1 b = Left(rs("Campo"),3) & format(a,"00") ' b = RIB02 depois vc grava... qq dúvida é só postar t+
|
|
|
Daniel
|
SÃO PAULO SP - BRASIL
|
|
ENUNCIADA !
|
|
|
Postada em 18/05/2006 15:11 hs
No seu caso por ser um campo composto por letras e números,vai depender 1) da sua estrutura, no exemplo que voce passou no máximo será RIB99, se não for precisa colocar os zeros a esquerda de acordo com a quantidade exempo RIB0001 -- maximo será RIB9999, não sei até quanto será necessário, depois faça: dim novonumero as string dim nvnum as integer set rs=base.openrecordset("SELECT Max(Tabela.Codigo) AS NvCodigo FROM Tabela;" if rs.recordcount<>0 then nvnum=int(right(Rs("NvCodigo),4)) nvnum=nvnum+1 novonumero="RIB" & right("0000" & trim(str(nvnum)),4) PS. estou usando 4 para até RIB9999
dsmn
|
|
|
|
Postada em 18/05/2006 15:18 hs
Ghost, essa porra de RS, é o recordset não é??!?!? Pq olha como q eu faço meus cadastros..... TFuncionario.Index = "funcionario" TFuncionario.Seek "=", mskcpf If TFuncionario.NoMatch Then TFuncionario.AddNew TFuncionario!CPF = mskcpf Else TFuncionario.Edit End If TFuncionario!nome = txtnome TFuncionario!sobrenome = txtsobrenome e quando mexo com o componente data é assim: datficha.DatabaseName = "fretes.mdb" datficha.RecordSource = "select * from consulta_ficha order by nficha" entendeu!?!?´ por isso que nao entendo os comandos q vc usa, talvez é a mesma coisa, só q entendo assim, se vc me explicar o seu modo, ai blz!!
Valeu...... abraços
Junior Ribeirão Preto-SP
|
|
|
LCRamos
|
GOIANIA GO - BRASIL
|
|
ENUNCIADA !
|
|
|
Postada em 18/05/2006 17:01 hs
Faça assim, o resto como Ghost falou, traduzindo pra voce: TFuncionario.Index = "funcionario" TFuncionario.Seek "=", mskcpf If TFuncionario.NoMatch Then TFuncionario.index = "CAMPO" 'nome da chave de indice do seu campo TFuncionario.MoveMax 'o forum muda move para o ultimo llaasstt ' aqui incrementa só os numeros deixando as letras TFuncionario.AddNew TFuncionario!CPF = mskcpf Else TFuncionario.Edit End If TFuncionario!nome = txtnome TFuncionario!sobrenome = txtsobrenome vlu//
|
|
|