FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Buscar | Temas de Hoy | Marcar Foros Como Leídos |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
||||
|
||||
Cambiar formato 12 Hr's a 24 Hr's
Hola amigos como estan quisiera pedir su colaboracion para ke me ayuden a solucionar un ploblema ke se me genera al hacer una aplicacion en delhi, tengo un maskedit en donde el usuario digita una hora cualkiera y selecciona si esta es am o pm, si es am la almaceno en la bd tal como esta pero si es pm tomo esta hora y le sumo 1/2 (12/24) para ke me la ponga en formato pm, el problema surge cuando kiero guardar esta hora en un pc ke tiene como formato 12 Hr's me la guarda agregandole pm a la hora ejemplo si kiero almacenar 3 de la tarde me la guarda como 3:00 pm y no como 15:00 ke es la forma como la tendria ke almacenar en la bd, les agradesco si alguno sabe alguna funcion o alguna forma de convertir esa hora a formato 24 Hr's, muchas gracias y ojala me puedan ayudar
|
#2
|
||||
|
||||
Hola, a ver si esto te lo soluciona:
Lo que hace este ejemplo, es obligarle a formatear la hora en formato de 24h. Si no quieres mostrar los segundos, simplemente quitale ":ss" y ya esta... Te enlazo este link donde hay mas información. Saludos. |
#3
|
||||
|
||||
Yo creo que debias utilizar la variable del sistema ShortTimeFormat para que en toda la aplicacion cuando trabajes con fechas uses es que tu definas.
Ponla en el evento onCreate de tu forma principal.
(ahora mismo no estoy seguro, creo qye es el formato de 24h, lo puedes ver en la ayuda), cualquier cosa avisas si tienes dudas. Saludos y espero haberte resuelto el problema. Última edición por paladincubano fecha: 21-05-2008 a las 16:46:30. |
#4
|
||||
|
||||
Muchas Gracias
oye muchisisisisimas gracias me funciono a la perfeccion te kedo muy agradecida
|
#5
|
||||
|
||||
Cual fue el que te sirvio de las dos respuestas?
Yo he editado la mia unas cuantas veces porque lo hice a memoria y no recordaba mucho, pero ya la final es la que esta echa. Mira. El primer ejemplo que te pusieron esta muy bien, pero es para solo en un caso especifico. El que te pongo yo, es para cualquier tipo de hora encontrada en tu aplicacion, desde los mismos TDatetime hasta las mascaras de fecha. Dependiendo de lo que tu quieras hacer escoge cualquiera. En mi caso, como siempre uso un formato de fecha y hora estandar para todo, pues lo hago con la variable esa del sistema que te he puesto y asi me evito programar TODO cada vez que quiera convertir fechas u horas. Espero te ayude. PD: Se aplica tambien para el caso de las fechas con la variable ShortDateFormat. Especial atencion a "h:nn:ss" es asi, con "n" para especificar los minutos, ya que la "m", es para definir formato de mes. Una sola "n" al igual que una sola "h" te define como un numero ejemplo: 8:06AM = "h:n" = 8:6 "h:nn"= 8:06 "hh:nn"= 08:06 Última edición por paladincubano fecha: 21-05-2008 a las 17:22:01. |
#6
|
||||
|
||||
Cita:
Saludos. |
#7
|
||||
|
||||
Claro man, yo entiendo lo que tu dices, por eso te digo que depende de la aplicacion que estes desarrollando, en mi caso, las fechas para los clientes son transparentes y nunca interactuan con ella. Solo la controlo yo para manejar la caducidad y demas cosas en la BD. Pero nunca interactuan con ella. POr eso te digo que en mi caso me conviene mas la variable porque no tengo que estar formateando ni conviertiendo formatos.
Gracias por la aclaracion. Saludos. |
#8
|
||||
|
||||
Cita:
Saludos. |
#9
|
||||
|
||||
asi lo resolvi
hola compañeros asi fue ke resolvi el problema con:
DateTimeToString(Resultado, 'hh:mm:ss', Fecha);en resultado guardo la hora del sistema y la paso a formato 24 hr's, y ya con eso la comparo con las horas ke ingresa el usuario y las ke estan almacenadas en la bd, ya ke yo todo el codigo y lo ke esta en la bd lo manejo en formato 24 hr's asi no tengo inconveniente y es totalmente transparente para el usuario, muchas gracias por la colaboracion prestada y les debo una cerveza, cuando me gradue y trabaje se las pagare , chao y de nuevo gracias |
#10
|
|||
|
|||
mas facil
usa un datetimepicker para la hora
y FormatDateTime( horacapturada, 'HH:mm:ss'); // HH mayusculas es el formato 24:00 y nunca cambies la configuracion de un usuario, porque si por una aplicacion sencilla o no, deja de funcionar otros sistemas mas importantes mamma mia!!! Saludos |
#11
|
||||
|
||||
Cita:
Saludos |
#12
|
||||
|
||||
Cita:
Vamos a ver señores, cuando propuse la variable LongTimeFormat, esa variable SOLO AFECTA a la aplicacion tuya mientras este corriendo, NO TIENE NADA QUE VER con los parametros en el windows de formato de hora y por ende NO AFECTA a ninguna aplicacion aparte de la tuya. Y yo siempre recomiendo usarla, siempre que tu aplicacion no requiera de entradas de fecha por parte de los clientes ya que lo lian y lo obligan a usar un formato fijo. Usela siempre cuando su aplicacion no lo requiera respecto a interaccion con el cliente y cuando tenga que usted trabajar con muchas fechas para que no este formateando cada vez que la use. Me entiendo?? saludos. |
#13
|
|||
|
|||
Paladincubano tiene razón.
Además no hay que confundir como se muestran las fechas a como se graban, internamente el Tdatetime es un numero decimal cuya parte entera es el año,mes,día y la parte decimal las horas,minutos,segundo. Si en la base de datos se almacena un datetime es un datetime, como se lo muestres al usuario es una cosa diferente, si aceptas el dato en datetimepicker que maneja el tdatetime comparas con ese formato y listo, en el display del componente o en los mensajes lo puedes mostrar como quieras. Saludos |
Herramientas | Buscar en Tema |
Desplegado | |
|
|
Temas Similares | ||||
Tema | Autor | Foro | Respuestas | Último mensaje |
cambiar formato de hora | desve | Varios | 3 | 07-03-2008 22:33:44 |
cambiar formato | ercrizeporta | Varios | 4 | 10-10-2007 18:02:11 |
Cambiar formato de fecha | BlueSteel | Varios | 2 | 16-02-2005 23:49:45 |
Como cambiar el formato de un QRSysData en formato fecha | Bitbanner | Tablas planas | 1 | 13-02-2005 12:33:26 |
Cambiar el formato de fecha | VolaRe | Varios | 4 | 19-02-2004 21:46:16 |
|