İki tarih farkını gün olarak nasıl alıyorduk

Delphi'de kod yazma ile ilgili sorularınızı bu foruma yazabilirsiniz.
Cevapla
Kullanıcı avatarı
naile
Admin
Mesajlar: 1873
Kayıt: 11 Haz 2003 10:11

İki tarih farkını gün olarak nasıl alıyorduk

Mesaj gönderen naile »

İki tarih arasındaki gün farkını delphide alabiliyormuyduk? Alınıyordu da sanırım nasıldı hatırlayamadım :oops:

Yani;

15.05.04 ile 01.06.04 arasında "16 gün" var.
Kullanıcı avatarı
TRSoft
Kıdemli Üye
Mesajlar: 636
Kayıt: 13 Şub 2004 11:39
Konum: Konya
İletişim:

Mesaj gönderen TRSoft »

@naile hanım ikiside date tipindeyse birbirinden çıkartmanız yeterli sanırım.
En son TRSoft tarafından 26 May 2004 02:32 tarihinde düzenlendi, toplamda 2 kere düzenlendi.
İlimle geçen bir gece,
ibadetle geçen bin geceden hayırlıdır.
HZ. MUHAMMED (S.A.)
Kullanıcı avatarı
fahrettin
Admin
Mesajlar: 2619
Kayıt: 11 Haz 2003 10:38
Konum: İstanbul
İletişim:

Mesaj gönderen fahrettin »

evet doğru date tipindeki değişkenleri birbirinde çıkartıp bir tamsayı değişkene atayabilirsiniz....
* http://www.fahrettin.org Manzara Fotoğraflarım... :)
* http://delphiturkiye.gunduz.info Seminerler... ;)
* http://www.hakmar.com.tr Kalite bir haktır... 8)
Kullanıcı avatarı
mussimsek
Admin
Mesajlar: 7603
Kayıt: 10 Haz 2003 12:26
Konum: İstanbul
İletişim:

Mesaj gönderen mussimsek »

DateUtils'de hazır fonksiyonlarda var. Bkz : Site -> Makaleler

Kolay gelsin.
Kullanıcı avatarı
naile
Admin
Mesajlar: 1873
Kayıt: 11 Haz 2003 10:11

Mesaj gönderen naile »

DaysBetween fonksiyonu tam olarak işimi gördü, teşekkürler..
shadowmann
Üye
Mesajlar: 508
Kayıt: 30 Oca 2004 10:49

Mesaj gönderen shadowmann »

fonk.siyonumuz
function Tarih(Tarih1, Tarih2: TDateTime): string;
var gun: integer;
difference: real;
begin
if Tarih2 > Tarih1 Then //Tarih, sistem Tarihinden kücükse
difference:=Tarih2-Tarih1;
if Tarih2 < Tarih1 Then //Tarih, sistem Tarihinden Büyükse
difference:=Tarih1-Tarih2;
Gun:=round(difference-Frac(difference));
difference:=Frac(difference)*24;
result:=IntToStr(Gun)+' Gün';
end;


fonk.çağırma
procedure TForm1.Button4Click(Sender: TObject);
var
Tarihgun, Bugun: TDateTime;
// Diff: real;
begin
Edit3.Text := DateToStr(Date);
Tarihgun := StrTODate(Edit4.Text);
Bugun := Date;
// Tarih hesaplama
Label1.Caption := Tarih(Tarihgun,Bugun); //Tarih Fonksionunu cagirir
end;
Kullanıcı avatarı
okurtdiken
Üye
Mesajlar: 21
Kayıt: 11 May 2004 01:02
Konum: ankara
İletişim:

Mesaj gönderen okurtdiken »

daysbetween ile date1-date2 yapmak arasında bir fark var.

daysbetween ile iki tarihin farkını aldığınız zaman hiç bir şekilde (-) sonuç çıkmaz.

Örneğin:

date1:=01.01.2004;

date2:=05.01.2004;

sonuc:=date1-date2; // sonuc = -4

sonuc:=daysbetween(date1,date2); // sonuc = 4

sonuc:=daysbetween(date2,date1); // sonuc = 4

kolay gelsin...
Cevapla