Foros del Web » Programando para Internet » ASP Clásico »

Ayuda con código para agregar ceros al inicio de una numero

Estas en el tema de Ayuda con código para agregar ceros al inicio de una numero en el foro de ASP Clásico en Foros del Web. Hola, tengo este código que lo encontré en un post y que me funcionaba muy bien (la idea esque si se tiene un numero 3 ...
  #1 (permalink)  
Antiguo 02/09/2005, 10:46
Avatar de Tarecito  
Fecha de Ingreso: noviembre-2003
Ubicación: Lima - Perú
Mensajes: 443
Antigüedad: 20 años, 6 meses
Puntos: 1
Pregunta Ayuda con código para agregar ceros al inicio de una numero

Hola, tengo este código que lo encontré en un post y que me funcionaba muy bien (la idea esque si se tiene un numero 3 lo convierta a 00000003-05):

year = right(year(date()), 2)
ultimo = Trim(rs("codigo")) + 1
ultimo = Replace(Space(8 - Len(ultimo)), " ", "0") & ultimo &"-"&year

el problema es que al blanquear mi base de datos tuve que hacer esto:

sql = "select max(cod_doc) as codigo from Documento"
rs = conexion.Execute(sql)

---------------------------------------------
ESTO LO AGREGUE LUEGO DE BLANQUEAR LA BD
---------------------------------------------
if isNull(rs("codigo")) then
ultimo = 0
end if
---------------------------------------------
year = right(year(date()), 2)
ultimo = Trim(rs("codigo")) + 1
ultimo = Replace(Space(8 - Len(ultimo)), " ", "0") & ultimo &"-"&year

pero me bota un error en la última línea, tal vez ese código no funciona cuando el valro es 0 o no se, tal vez la función IsnNull la estoy aplicando mal. Alguien podría ayudarem por favor? muchas gracias de antemano.
__________________
Tarecito
  #2 (permalink)  
Antiguo 02/09/2005, 12:02
Avatar de Mickel  
Fecha de Ingreso: mayo-2002
Ubicación: Lima, Peru
Mensajes: 4.619
Antigüedad: 22 años, 1 mes
Puntos: 7
Creo que esto deberia ser asi
if not rs.eof then
ultimo = Trim(rs("codigo")) + 1
else
ultimo=1
end if
ultimo = Replace(Space(8 - Len(ultimo)), " ", "0") & ultimo &"-"&year
__________________
No tengo firma ahora... :(
  #3 (permalink)  
Antiguo 02/09/2005, 12:08
Avatar de Tarecito  
Fecha de Ingreso: noviembre-2003
Ubicación: Lima - Perú
Mensajes: 443
Antigüedad: 20 años, 6 meses
Puntos: 1
si, tienes razón, muchas gracias Mickel
__________________
Tarecito
  #4 (permalink)  
Antiguo 02/09/2005, 12:09
Avatar de lexus  
Fecha de Ingreso: enero-2002
Ubicación: Cali - Colombia
Mensajes: 2.234
Antigüedad: 22 años, 5 meses
Puntos: 4
asi lo hago yo, me funciona perfecto para agregar ceros delante de un numero

Código:
'############################
' esta funcion sirve para darle
' el formato 0004 a un determinado
' numero. util por ejemplo en
' facturacion
' su llamado es asi: FormatoNum(14,5)
' retornaria esto: 00014

function FormatoNum(num,digitos)
dim largo, dif,x
largo = Len(Cstr(num))
dif = digitos - largo
if dif < 0 then exit function
if largo < digitos Then
x = String(dif,"0") & Cstr(num)
else
x = Cstr(num)
end if
FormatoNum = x
End Function
__________________
Control de Visitantes, Control de Accesos, Minutas digitales, Manejo de Correspondencia
http://www.controldevisitantes.com
  #5 (permalink)  
Antiguo 02/09/2005, 12:12
Avatar de Tarecito  
Fecha de Ingreso: noviembre-2003
Ubicación: Lima - Perú
Mensajes: 443
Antigüedad: 20 años, 6 meses
Puntos: 1
esa función es muy buena, gracias por el dato Lexus
__________________
Tarecito
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 20:45.