Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Varios
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 04-01-2011
ekstase ekstase is offline
Miembro
 
Registrado: sep 2007
Posts: 23
Poder: 0
ekstase Va por buen camino
Smile Determinar mes a partir de una fecha

Hola amigos. Otra vez necesito su ayuda. Utilizo delphi 7 y Mysql, la consulta es la siguiente: De una fecha necesito determinar a cual mes corresponde por ejemplo:

03/01/2011 = Enero
02/04/2011 = Abril
Etc..

Pero esto me gustaria hacerlo con funciones de delphi, dado que tomo la fecha de una Datetimepicker. Desde ya Muchas Gracias.-
Y perdon si no estoy en el foro correcto es que no encontre donde más. Graicas.
Responder Con Cita
  #2  
Antiguo 04-01-2011
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 10.508
Poder: 36
ecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to behold
Hola ekstase.

Podrías hacer una función que lo devuelva:
Código Delphi [-]
uses DateUtils;

function NombreDelMes(ADate: TDate): string;
const
   MESES: array[1..12] of string=('Enero','Febrero','Marzo','Abril','Mayo','Junio','Julio', 
                                 'Agosto','Septiembre','Octubre','Noviembre','Diciembre');
begin
  Result:= MESES[MonthOf(ADate)];
end;

Una llamada de ejemplo:
Código Delphi [-]
procedure TForm1.DateTimePicker1Change(Sender: TObject);
begin
  ShowMessage(NombreDelMes(DateTimePicker1.Date));
end;

Un saludo.
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....
Responder Con Cita
  #3  
Antiguo 04-01-2011
Avatar de Caral
[Caral] Caral is offline
Miembro Premium
 
Registrado: ago 2006
Posts: 7.659
Poder: 25
Caral Va por buen camino
Hola
Bueno, si eres como yo que no entiendes bien las funciones que los maestros nos ponen de ejemplo entonces nos buscamos la manera de no usarlas y generar lo mismo sin estas.
Código Delphi [-]
  private
    { Private declarations }
  public
    { Public declarations }
  end;

const
meses: array[1..12] of string=('Enero','Febrero','Marzo','Abril','Mayo','Junio','Julio',
                                 'Agosto','Septiembre','Octubre','Noviembre','Diciembre');

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.DateTimePicker1Change(Sender: TObject);
var
  a: string;
begin
  a:= FormatDateTime('m',Datetimepicker1.Date);
  Label1.Caption:= meses[StrToInt(a)];
end;

end.
Saludos
__________________
Siempre Novato

Última edición por Caral fecha: 03-02-2011 a las 01:07:39.
Responder Con Cita
  #4  
Antiguo 04-01-2011
cloayza cloayza is offline
Miembro
 
Registrado: may 2003
Ubicación: San Pedro de la Paz, Chile
Posts: 916
Poder: 23
cloayza Tiene un aura espectacularcloayza Tiene un aura espectacular
Para que inventar la rueda amigos...

Ya existen los vectores que contienen los nombres de los meses, estan en la unit SysUtils.

Código Delphi [-]
procedure TForm1.DateTimePicker1Change(Sender: TObject);
begin
      ShowMessage(SysUtils.ShortMonthNames[ MonthOf(DateTimePicker1.Date) ]); //Ene, Feb, Mar
      ShowMessage(SysUtils.LongMonthNames[ MonthOf(DateTimePicker1.Date) ]); //Enero, Febrero, ...
end;

Saludos cordiales
Responder Con Cita
  #5  
Antiguo 04-01-2011
Avatar de Chris
[Chris] Chris is offline
Miembro Premium
 
Registrado: abr 2007
Ubicación: Jinotepe, Nicaragua
Posts: 1.678
Poder: 19
Chris Va por buen camino
algo un poco más simple talvez :
Código Delphi [-]
    ShowMessage(FormatDateTime('mmmm', mi_variable_fecha))

Nota: El único inconveniente es que este código depende de la configuración regional y de idiomas configuradas en el sistema. Si por ejemplo un usuario tiene configurado Inglés (EEUU) entonces los nombre de los meses apareceran en Inglés. Para solucionar esto es necesario pasar una variable de tipo TDatetimeSettings en el último parámetro de la función FormatDateTime.
__________________
Perfil Github - @chrramirez - Delphi Blog - Blog Web
Responder Con Cita
  #6  
Antiguo 04-01-2011
Avatar de Caral
[Caral] Caral is offline
Miembro Premium
 
Registrado: ago 2006
Posts: 7.659
Poder: 25
Caral Va por buen camino
Hola
Bueno, no se, pero a mi no me va este ejemplo.
Me dice que no he declarado MonthOf.
Me da la impresion de que es por el Delphi 6 que uso.
Por si las dudas, si he declarado SysUtils.
Que hago mal?
Saludos
__________________
Siempre Novato
Responder Con Cita
  #7  
Antiguo 04-01-2011
cloayza cloayza is offline
Miembro
 
Registrado: may 2003
Ubicación: San Pedro de la Paz, Chile
Posts: 916
Poder: 23
cloayza Tiene un aura espectacularcloayza Tiene un aura espectacular
Puede ser lo que tu dices...

Yo tengo el D2007...La función MonthOf, esta en la unit DateUtils.

Saludos
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Como determinar si X Fecha esta en Hor. Verano pero en firebird???? AGAG4 Firebird e Interbase 1 05-04-2008 22:17:33
Fecha a partir de un string johurgi Varios 4 18-12-2007 13:03:48
Determinar fecha de determinado dia de la semana Roilo PHP 2 12-11-2007 22:43:12
Ayuda, Como calcular fecha de vencimiento mensual a partir de una fecha x en delphi Renis Impresión 4 23-08-2007 23:45:14
Genrar registros a partir de una fecha y numero mosorio Firebird e Interbase 2 05-11-2004 09:40:16


La franja horaria es GMT +2. Ahora son las 11:22:45.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi