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

DatePart me muestra un solo digito

Estas en el tema de DatePart me muestra un solo digito en el foro de ASP Clásico en Foros del Web. Hola estoy tratando de mostrar la hora que tengo guardada en mi basa y el DatePart me muestra en los minutos solo un digitro, esto ...
  #1 (permalink)  
Antiguo 11/11/2008, 12:36
Avatar de andama  
Fecha de Ingreso: noviembre-2008
Mensajes: 54
Antigüedad: 16 años, 5 meses
Puntos: 0
DatePart me muestra un solo digito

Hola estoy tratando de mostrar la hora que tengo guardada en mi basa y el DatePart me muestra en los minutos solo un digitro, esto es lo que tengo

<%=DatePart("h",rs2("horarioHasta"))&":"&DatePart( "n",rs2("horarioHasta"))%>

y lo que me muestra es 13:0 y en las horas de un digito solo muestra el que es distinto a cero.
Como se soluciona?? gracias!
  #2 (permalink)  
Antiguo 11/11/2008, 12:55
Avatar de u_goldman
Moderador
 
Fecha de Ingreso: enero-2002
Mensajes: 8.031
Antigüedad: 23 años, 3 meses
Puntos: 98
Respuesta: DatePart me muestra un solo digito

Si...datepart regresa un entero, y al haber un cero a la izquierda obviamente no lo mostrará, necesitarás hacerte una función que te regrese un string con el formato correcto.

Código asp:
Ver original
  1. entero = DatePart("h",rs2("horarioHasta"))&":"&DatePart( "n",rs2("horarioHasta"))
  2. if len(entero)  = 1 then
  3.     str = "0" & entero
  4. else
  5.      str = cstr(entero)
  6. end if
  7.  
  8. Response.Write(str)

Saludos
__________________
"El hombre que ha empezado a vivir seriamente por dentro, empieza a vivir más sencillamente por fuera."
-- Ernest Hemingway
  #3 (permalink)  
Antiguo 11/11/2008, 20:01
Avatar de David
Moderador
 
Fecha de Ingreso: abril-2005
Ubicación: In this planet
Mensajes: 15.720
Antigüedad: 20 años
Puntos: 839
Respuesta: DatePart me muestra un solo digito

Hola u_goldman.

La forma de solucionar es correcta, aunque hay que tener en cuenta que como en la primera línea estamos concatenando las horas y los minutos no entrará en el Len(...) = 1. O sea, habrá que hacer esa comparación antes de concatenar.

Saludos .
__________________
Por favor, antes de preguntar, revisa la Guía para realizar preguntas.
  #4 (permalink)  
Antiguo 12/11/2008, 07:25
Avatar de andama  
Fecha de Ingreso: noviembre-2008
Mensajes: 54
Antigüedad: 16 años, 5 meses
Puntos: 0
Respuesta: DatePart me muestra un solo digito

exactamente esto es lo hice:
'para que muestre dos digitos en el horarioHasta
if len(DatePart("h",rs2("horarioHasta")))=1 then
horaH="0"&DatePart("h",rs2("horarioHasta"))
else
horaH=DatePart("h",rs2("horarioHasta"))
end if

if len(DatePart("n",rs2("horarioHasta")))=1 then
minutoH=DatePart("n",rs2("horarioHasta"))&"0"
else
minutoH=DatePart("n",rs2("horarioHasta"))
end if%>

y luego lo cancateno cuando lo muestro


<%=horaH&":"&minutoH%>
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 18:35.