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 16-08-2010
Avatar de afunez2007
afunez2007 afunez2007 is offline
Miembro
 
Registrado: oct 2007
Ubicación: La Ceiba, Honduras
Posts: 170
Poder: 17
afunez2007 Va por buen camino
Lightbulb

Cita:
Empezado por delphi.com.ar Ver Mensaje
Supongo que será algo como:
Código Delphi [-]function DaysBetween360(const ANow, AThen: TDateTime): Integer; begin Result := (DaysBetween(ANow, AThen) div 30) * 30; end;


Saludos!
La funcion DasyBetween es bastante simple de usar y devuelve la cantidad de dias entre 2 fechas, si tuevieramos dos datetimepcikers por ejemplo seria asi:

Código Delphi [-]
Var
dias: Integer
Begin
 dias:=DaysBetween(Dtp1.Date, Dtp2.date);
end;

Saludos
__________________
Si robas, roba un beso, si mientes que sea por amor y si engañas que sea a la muerte!!
Responder Con Cita
  #2  
Antiguo 18-08-2010
Avatar de ingabraham
ingabraham ingabraham is offline
Miembro
 
Registrado: ago 2007
Posts: 614
Poder: 17
ingabraham Va por buen camino
NO ME FUNCIONA NINGUNO DE LOS DOS CODIGOS
Ingresen a excel dos fechas

y en la celda resultado escriban =dias360(f1,f2);

esto es lo que yo quiero obtener en delphi

?????
ayudenme.
__________________
Enseñar es la virtud de un sabio.
Responder Con Cita
  #3  
Antiguo 18-08-2010
Avatar de afunez2007
afunez2007 afunez2007 is offline
Miembro
 
Registrado: oct 2007
Ubicación: La Ceiba, Honduras
Posts: 170
Poder: 17
afunez2007 Va por buen camino
Lightbulb

Cita:
Empezado por afunez2007 Ver Mensaje
La funcion DasyBetween es bastante simple de usar y devuelve la cantidad de dias entre 2 fechas, si tuevieramos dos datetimepcikers por ejemplo seria asi:

Código Delphi [-]Var dias: Integer Begin dias:=DaysBetween(Dtp1.Date, Dtp2.date); end;


Saludos
Lo probe en excel y en delphi 7, en ambos funciona pero dan 1 dia de diferencia debiado a que excel utiliza meses de 30 dias y delphi utiliza dias reales.

Código Delphi [-]
IntEdit1.Value:=DaysBetween(dtp1.Date , dtp2.Date);
No olvidar poner en las uses DateUtils

Saludos
Archivos Adjuntos
Tipo de Archivo: zip DiasEntreFecha.zip (5,4 KB, 18 visitas)
__________________
Si robas, roba un beso, si mientes que sea por amor y si engañas que sea a la muerte!!
Responder Con Cita
  #4  
Antiguo 18-08-2010
Avatar de Caral
[Caral] Caral is offline
Miembro Premium
 
Registrado: ago 2006
Posts: 7.659
Poder: 25
Caral Va por buen camino
Hola
Código Delphi [-]
procedure TForm1.btn1Click(Sender: TObject);
begin
IntEdit1.Value:=DaysBetween(dtp1.Date , dtp2.Date + 1);
end;
Saludos
__________________
Siempre Novato
Responder Con Cita
  #5  
Antiguo 19-08-2010
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
A ver ingabraham... probá con esta función:

Código Delphi [-]
function Dias360(FechaIni,FechaFin: TDateTime; MetodoEuro: Boolean): Longint;
var
  DiaIni, DiaFin: Longint;
begin
  DiaIni:= DayOf(FechaIni);
  DiaFin:= DayOf(FechaFin);
  if not MetodoEuro then
  begin
   if DiaIni = 31 then
     FechaIni:= IncDay(FechaIni, -1);
   if (DiaFin = 31)and(DiaIni = 31) then
     FechaFin:= IncDay(FechaFin, -1)
   else
     if DiaFin = 31 then
       FechaFin:= IncDay(FechaFin, 1);
  end
  else
  begin
    if DiaIni = 31 then
      FechaIni:= IncDay(FechaIni, -1);
    if DiaFin = 31 then
      FechaFin:= IncDay(FechaFin, -1);
  end;
  DiaIni:= DayOf(FechaIni);
  DiaFin:= DayOf(FechaFin);
  if YearOf(FechaFin) > YearOf(FechaIni)  then
    FechaFin:= IncMonth(FechaFin, 1);
  Result:= MonthsBetween(FechaIni, FechaFin)* 30 + DiaFin - DiaIni;
end;

Al igual que la de Federico es una traducción.

No uso Microsoft Office por lo que no puedo probarla con Excel, pero pareciera funcionar.

De no ser así, con todo lo que te han posteado, tenés una buena base para desarrollarla
por vos mismo. Al fín y al cabo, sos el interesado ¿no ?

Por supuesto, cuando esté funcionando, todos te vamos a agradecer el aporte si decidís compartirlo.

Saludos.

Última edición por ecfisa fecha: 19-08-2010 a las 09:55:53.
Responder Con Cita
  #6  
Antiguo 20-08-2010
Avatar de ingabraham
ingabraham ingabraham is offline
Miembro
 
Registrado: ago 2007
Posts: 614
Poder: 17
ingabraham Va por buen camino
hola gracias por el codigo, lo probare.
a mis compañeros que me mencionan la funcion DaysBetween

prueben con 22 febrero del 2010 y 10 agosto 2010

dias360 excel da 168

DaysBetween delphi da 169


casi pega en el blanco, lo que no se es si con un rango de fecha mas grande existan más dias de diferencia.
__________________
Enseñar es la virtud de un sabio.
Responder Con Cita
  #7  
Antiguo 20-08-2010
Avatar de ingabraham
ingabraham ingabraham is offline
Miembro
 
Registrado: ago 2007
Posts: 614
Poder: 17
ingabraham Va por buen camino
hola gracias por el codigo, pero nda, no me funciona.

a mis compañeros que me mencionan la funcion DaysBetween

prueben con
22 -02--2010 y 10-08-2010
dias360 excel da 168
DaysBetween delphi da 169

diferencia 1 dia

06 -11-2009 y 30-07-2010
dias360 excel da 264
DaysBetween delphi da 266

diferencia 2 dias


28-03-2010 y 10-08-2010
dias360 excel da 132
DaysBetween delphi da 135

diferencia 3 dias
__________________
Enseñar es la virtud de un sabio.
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
rpt. manager: meses y días transcurridos entre dos fechas dandia28 Impresión 1 20-02-2008 15:56:08
Diferencia 2 Dias entre Tdatetime (delphi) y Datetime (SQL server) sinalocarlos Varios 2 10-05-2007 03:00:38
Diferencia en dias entre dos fechas. AMINOA2R Firebird e Interbase 2 15-12-2005 15:58:37
Dias y meses romansiux Varios 5 13-06-2005 17:19:12
agrupar por dias meses y años en Interbase????? mguixot Conexión con bases de datos 0 03-10-2003 19:31:08


La franja horaria es GMT +2. Ahora son las 01:20:19.


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