FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
|
#1
|
|||
|
|||
Formato de fechas y DateTimePicker.
hola, un saludo todos/as, vereis, estoy haciendo una pequeña aplicación en C++ Builder 6, en la que quiero sacar un listado de todo entre lafecha 1 y la fecha 2. El problema es que el DateTimePicker devuelve la fecha en formato Dia/Mes/Año, y yo necesito que me lo devuelva en Mes/Dia/Año, ya que para hacer el select, Interbase me pide que sea en el formato Mes/Dia/Año. He probado la opcion Format, pero esta propiedad solo sirve para que de forma visual solo se vea en ese formato, ya que DateTimePicker->Date lo devuelve de la forma en la que a mi no me interesa.
¿Alguna idea? Gracias de antemano. |
#2
|
||||
|
||||
Un DateTimePicker te devuelve una fecha en el tipo TDateTime, que si te das una vuelta por la ayuda, verás que es un número, que no tiene intrinsecamente ningún tipo de formato.
Existen varias funciones, entre ellas FormatDateTime, DateTimeToStr, DateToStr, etc que te ayudan a formatear fechas. Si es para pasarlo a una base de datos, es mejor el uso de parámetros en las sentencias SQL, por dos razones:
Si no sabes que son parámetros, y como asignarles valores en una sentencia SQL, te recomiendo usar la búsqueda de los foros, pues el tema se ha tratado multiples veces por aqui, y cualquier cosa dicha para delphi, valdrá igual para c++builder (en este caso). Hasta luego.
__________________
Juan Antonio Castillo Hernández (jachguate) Guía de Estilo | Etiqueta CODE | Búsca antes de preguntar | blog de jachguate |
#3
|
|||
|
|||
fecha_formato
hola, no creo que sea lo mas optimo, pero quizas te ayude en algo, a pesar que no esta hecho en C++, pero seria cuestion de migrarlo nada mas, de hecho, lo que menciono jachguate es lo mas optimo.
Esta funcion podria ser mas sencilla para tu caso, pero yo la hice cuando necesité incluir los ceros a la izquierda en el mes y el dia. Chau. Funcion llamadora... procedure TForm1.Button1Click(Sender: TObject); begin form1.Edit1.Text:= form1.fecha_formato(datetostr(form1.DateTimePicker1.Date),'dd/mm/aa'); end; Funcion llamada... function tform1.fecha_formato(fecha,formato:string):string; var fecha_o,ch,d,m,a:string; aux,largo,i,u:integer; temp:string; vector:array[0..9] of string; begin i:=0; u:=i; aux:=0; largo:=length(fecha); while (i <= 9) do begin ch:=copy(fecha,i+1,1); if (ch <> '/') then begin vector[u]:=ch; aux:=aux + 1; i:=i+1; u:=u+1; end else begin if aux = 2 then begin i:=i+1; u:=i-1; aux:=0; end else begin temp:=vector[u - 1]; vector[u - 1]:='0'; vector[u]:=temp; aux:=0; i:=i+1; u:=u+1; end; end; end; fecha_o:=vector[0]; for i:=0 to largo - 2 do begin fecha_o:=fecha_o + vector[i + 1]; end; d:=copy(fecha_o,3,2); m:=copy(fecha_o,1,2); a:=copy(fecha_o,5,4); if formato = 'mm/dd/aa' then result:= d + '/' +m + '/' + a ; if formato = 'dd/mm/aa' then result:= m + '/' + d + '/' + a ; end; |
#4
|
|||
|
|||
Hola,
No es que sea hincha ni mucho menos pero mirá que lindo queda el código con las etiquetas DELPHI del foro: JoseBozzano, como veo que tenés pocos mensajes calculo que debés ser nuevo así que te doy la bienvenida. Por otro lado no sería malo que mirarás la guía de estilo del foro... http://www.clubdelphi.com/foros/guiaestilo.php Saludos!
__________________
Suerte .: Gydba :. Última edición por Gydba fecha: 23-08-2004 a las 21:56:00. Razón: Me faltó la url de la guía... |
#5
|
||||
|
||||
Señores!!! La solucion para el chamo solo consiste en establecer ShortDateFormat="mm/dd/yyyy"; antes de cualquier operacion a realizar con fechas con cualquier componente relacionado con las mismas.y ya!. Esta es una variable global en Builder, supomgo q su Delphi puede q tambièn lo tenga!
|
#6
|
||||
|
||||
Creo que no has captado bien el tema, una cosa es el formato de fecha que tengamos, corto, largo, mm/dd/yy .... y otra es que si utilizamos un TDateTimePicker éste almacena fecha y hora y si nos queremos llevar solamente la hora o la fecha, de que manera tenemos que interactuar con este control.
Un Saludo.
__________________
Guía de Estilo de los Foros Cita:
|
#7
|
||||
|
||||
Cita:
// Saludos |
|
|
|