Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

pedrovisk

Sequência de Números

Recommended Posts

Turma,

 

Tenho uma tabela de cadastro de clientes, nessa tabela, eu tenho o campo autonúmerico, que é a chave primária também, e hoje esse númer é gerado na sequência 1,2,3,4,5... Eu gostaria que fosse gerado, não obrigatoriamente esse campo, pode ser um outro, uma sequência tipo 0001,0002,0003,0004 e assim por diante.

 

Como eu posso fazer isso? Deve ser em ASP, já que meu BD é SQL 2000.

 

Obrigado a quem poder me ajudar,

 

Pedro.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Mas pra que você quer gravar um sequencial dessa maneira ? Se for somente pra exibir no browser você pode pegar o teu autonumérico e dar um:

 

response.write right("0000"&rs("campo_autonumerico"),4)

Que fica dessa maneira que você quer:

 

0001

0002 ...

 

0050

0051

0052 ...

 

0250

0251 e assim vai...

 

Zeros a esquerda não valem nada, não vejo a necessidade de se criar um campo varchar(5) pra essa necessidade. você pode usar o teu autonumerico ou se realmente precisar criar... crie um campo integer e grave esse sequencial lá. Depois usa o exemplo pra exibir no browser.

 

Att;

Compartilhar este post


Link para o post
Compartilhar em outros sites

Dataset,

 

Deixei como

<%response.write right("0000"&rs("CODCLI"),4)%>
e continua exibindo sem os 0000 na frente.

 

Muito obrigado pela ajuda,

 

Pedro.

Compartilhar este post


Link para o post
Compartilhar em outros sites

eu uso uma chave de identificacao com n. e letra e a data no final, fica impossivel repetir alguma chave

ve se serve

[]s

 

Function chave_aleatoria(nQuant,ref)
	For Cont = 1 to nQuant
		Randomize
		If (Int(rnd*10) Mod 2 = 0) Then
			sRand = sRand + Chr(rnd * 25 + 97)
		Else 
			sRand = sRand + Cstr(Int(rnd * 10))
		End If
	Next
chave_aleatoria = sRand & ref
End Function

data = Replace(now(),":","")
data = Replace(data,"/","")
data = Replace(data," ","")

response.Write chave_aleatoria(10,data)

Compartilhar este post


Link para o post
Compartilhar em outros sites

Desisto,

 

O eu estou querendo é apenas adicionar 000 a frente de uma sequência.

 

O resultado do que você postou fica assim 0mw9355e2n1234

 

Muito obeigado pela ajuda,

 

Pedro.

Compartilhar este post


Link para o post
Compartilhar em outros sites

o que postei é uma chave de identificacao, o que eu achei que você tava querendo...

 

você tem um campo ID e vai exibir esse campo com 000 na frente - 000ID

é isso?

 

ou você pretende gravar com o 000 no banco?

 

se for so pra exibir pode usar apenas

<%

response.write "0000" & rs("CODCLI")

%>

 

[]s

Compartilhar este post


Link para o post
Compartilhar em outros sites

desisto,

 

Eu quero gravar a sequencia no bd sim, mas ele deverá ser gerada a partir da chave primária, mas antes, deverá receber uma sequencia de 000 antes do ID gerado.

Eu só preciso saber como gerar essa sequencia de 000 antes do ID.

Compartilhar este post


Link para o post
Compartilhar em outros sites

If (Len(Rs("Chave_Primaria")) = 1) Then
Variavel = "000" & Rs("Chave_Primaria")
End if
If (Len(Rs("Chave_Primaria")) = 2) Then
Variavel = "00" & Rs("Chave_Primaria")
End if
If (Len(Rs("Chave_Primaria")) = 3) Then
Variavel = "0" & Rs("Chave_Primaria")
End if

Abraços....

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.