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 15-03-2014
Neeruu Neeruu is offline
Miembro
 
Registrado: oct 2007
Posts: 485
Poder: 17
Neeruu Va por buen camino
Cool Restar Meses

Hola a todos!!!

Estoy enredado con una función que necesito que me devuelva una fecha a partir de hoy pero restando le la X cantidad de meses...

O sea:

Código Delphi [-]
Function RestaMeses(iCantMeses:Integer): Date;
begin
Result := FechaActual - iCantMeses;
end;

Tengo que tener en cuenta que si a la función le paso 24 meses, me tiene que devolver la fecha de hoy pero de 2 años atrás...

Hay alguna función que haga esto? alguna idea de como puedo hacerlo... estoy trancado... la verdad que no le encuentro la vuelta...

Saluda Atte Neeruu!!!
__________________
Saluda Atte Neeruu!!! :)

Última edición por Neeruu fecha: 15-03-2014 a las 22:45:16.
Responder Con Cita
  #2  
Antiguo 15-03-2014
Avatar de Caminante
Caminante Caminante is offline
Miembro
 
Registrado: oct 2010
Ubicación: Lima - Peru
Posts: 338
Poder: 14
Caminante Va camino a la fama
Ya probaste con la funcion IncMonth de la unidad Dateutils???

Saludos
Responder Con Cita
  #3  
Antiguo 16-03-2014
Avatar de nlsgarcia
[nlsgarcia] nlsgarcia is offline
Miembro Premium
 
Registrado: feb 2007
Ubicación: Caracas, Venezuela
Posts: 2.206
Poder: 21
nlsgarcia Tiene un aura espectacularnlsgarcia Tiene un aura espectacular
Neeruu,

Cita:
Empezado por Neeruu
...una función que necesito que me devuelva una fecha a partir de hoy pero restando...X cantidad de meses...
Revisa este link:
Código Delphi [-]
unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, ComCtrls, StdCtrls;

type
  TForm1 = class(TForm)
    Button1: TButton;
    DateTimePicker1: TDateTimePicker;
    DateTimePicker2: TDateTimePicker;
    Edit1: TEdit;
    ComboBox1: TComboBox;
    procedure Button1Click(Sender: TObject);
    procedure OnKeyDown(Sender: TObject; var Key: Char);
    procedure FormCreate(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.FormCreate(Sender: TObject);
begin
   ComboBox1.Items.Add('Suma Meses');
   ComboBox1.Items.Add('Resta Meses');
   ComboBox1.Text := ComboBox1.Items.Strings[1];
end;

procedure TForm1.OnKeyDown(Sender: TObject; var Key: Char);
begin
   if not (Key in ['0'..'9',#8]) then
      Key := #0;
end;

procedure TForm1.Button1Click(Sender: TObject);
var
   DeltaMonth : Integer;

begin

   // Variación de Meses a aplicar a una Fecha
   DeltaMonth := StrToInt(Edit1.Text);

   // Suma n Meses a una Fecha
   if ComboBox1.Text = 'Suma Meses' then
      DateTimePicker2.DateTime := IncMonth(DateTimePicker1.DateTime, DeltaMonth);

   // Resta n Meses a una Fecha
   if ComboBox1.Text = 'Resta Meses' then
      DateTimePicker2.DateTime := IncMonth(DateTimePicker1.DateTime, -DeltaMonth);

end;

end.
El código anterior permite sumar o restar n meses a una fecha determinada en un control TDateTimePicker y colocar el resultado en otro control TDateTimePicker.

Te sugiero revisar esta información:
Espero sea útil

Nelson.

Última edición por nlsgarcia fecha: 16-03-2014 a las 21:30:07.
Responder Con Cita
  #4  
Antiguo 17-03-2014
Neeruu Neeruu is offline
Miembro
 
Registrado: oct 2007
Posts: 485
Poder: 17
Neeruu Va por buen camino
Cool

Gracias por las respuestas, voy a probar con el IncMonth, no se me había ocurrido probarlo en negativo!!!
__________________
Saluda Atte Neeruu!!! :)
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
Restar fechas(días, meses, años) hugo_Junior OOP 9 02-01-2013 19:51:27
Busqueda x meses gdlrinfo Conexión con bases de datos 1 22-03-2008 01:41:55
restar/sumar 3 meses a un datetimepicker Milperrimo Varios 3 17-11-2007 00:50:16
Calcular nº de meses Drahcir SQL 3 20-12-2006 19:31:38
Dias y meses romansiux Varios 5 13-06-2005 17:19:12


La franja horaria es GMT +2. Ahora son las 08:07:09.


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