Asp.net 2005 y vb.net 2005. Sql Server 2005
Tengo un control Gv enlazado a datos (Dataset) pero ese dataset lo lleno "artesanalmente", o sea no lo enlazo "perforando capas" sino que voy de la interfaz, negocio y persistencia y ahí lo lleno. Debe ser así y así funciona bien.
El problema es que un campo Hora me lo muestra "1/1/1900 12:34" en lugar de "12:34" como debería.
No puedo abrir el Gv y "ver" sus columnas en las propiedades ya que como decía no es un enlace directo y por ello no puedo darle formato al Dataset desde el Gv.
La solución que encontré fue "abrir" el dataset y "pasarlo a otro" haciendo el casting en el campo de la hora, hice algo así:
unDs = Me.Ejecutar("exec MostrarRegistros")
Dim i As Integer = 0
For i = 0 To unDs.Tables(0).Rows.Count - 1
Dim fecha As Date = CDate(unDs.Tables(0).Rows(i).Item(4))
unaFila.Item(4) = Format(fecha, "HH:mm")
Next
Return unDs
Pero no me hace la conversion....he probado con el Convert pero no lo acepta =(
Alguna idea de esta u otra forma se agradece.
SOLUCION en el SP de SQLSERVER 2005:
Select
Convert(Char(10),in_fecha,103) as FECHA <----- convierte todo el verso que tiene un campo date a algo mas leible como 12/05/2009
Convert(Char(8),in_hora, 108) as HORA <----- convierte todo el verso que tiene un campo date a algo mas leible como 12:25:00
Espero que a alguien le sirva.
Aún no puedo hacer la conversion fuera del sql (o sea por código )...