Hola,
Lo q puedes hacer es lo siguiente:
- Trabajar las horas en minutos, es decir si deseas guardar 1:25, guardarías 60+25-->85 minutos. Luego al mostrarlo, y editarlo lo muestrad como cadena de caracteres con el formato deseado.
*******************
* Ejemplo.
*******************
* Cursor: Horas
create cursor horas(minuto integer)
* Función: mostrar_hora()
function mostrar_hora
lparameter nMinutos
lcHora = padl(alltrim(str(int(nMinutos/60))), 2, '0')
lcMin = padl(alltrim(str(mod(nMInutos, 60))), 2, '0')
lcTiempo = lcHora+lcMin
return lcTiempo
endfunc
* Función: guardar_hora()
function guardar_hora
lparameter cHora
lcHora = left(cHora, 2)
lcMin = right(cHora, 2)
nMinutos = val(lcHora)*60 + val(lcMin)
return nMinutos
endfunc
* Se trabajaria de la sgte manera
* En un formulario con un textbox con la sgte máscara 99:99
* Al almacenar la hora en el texbox se harìa lo sgte:
Thisform.txtHora.Value = mostrar_hora(Horas.minuto)
* Cuando deseamos grabar los cambios.
select Horas
replace minuto with guardar_hora(Thisform.txtHora.Value)
PD: De esta manera no tendrías problemas para editar la hora. es mas pienso que sería más cómodo y facil de procesar, ya que al tener el tiempo almacenado en minutos puedes realizar operaciones mas facilmente.
Bueno espero te sea de utilidad.....
Suerte.