Tarih Farkı Hesaplama

Delphi'de kod yazma ile ilgili sorularınızı bu foruma yazabilirsiniz.
Cevapla
ozcank
Üye
Mesajlar: 925
Kayıt: 28 Nis 2005 05:29

Tarih Farkı Hesaplama

Mesaj gönderen ozcank »

Arkadaşlar Merhaba; Günün tarihinden 1 yıl sonrasını bularak geriye doğru eksiltmek istiyorum. Ekteki kod ile 1 yıl sonrasını buldum ama günün tarihinden 365 den geriye doğru hesap yaptıramadım. Yardımcı olabilir misiniz?

Yapmak istediğim, İlk Yılı sıfır geçip sonraki yılı hesaplatmak.
16-11-2021 ile 16-11-2022 arası Sıfır sonraki yıl 16-11-2023 hesaplama yapacak.

D7 kullanıyorum.

Kod: Tümünü seç


procedure TForm1.Button2Click(Sender: TObject);
Var
Tarih, Tarih1, Tarih2 : Tdate;
Sonuc : Double;
LEM : Real;
begin
LEM:=StrToInt(ME1.Text) + StrToInt(ME6.Text);
Tarih := DateTimePicker1.Date + 365;
DateTimePicker2.Date:= Tarih;
Tarih1 := Date;
Tarih2 := DateTimePicker2.Date;
Sonuc := (Tarih2 - Tarih1);
Edit14.Text := FloatToStr(Sonuc);
If Date = DateTimePicker2.Date Then
Begin
Label20.Caption:='LEM Süresi Sona Erdi';
ME5.Text := FloatToStr(LEM * 10 / 100);
end
Else
Edit14.Text:='0';
end;


alidirik
Üye
Mesajlar: 16
Kayıt: 04 Eyl 2010 11:15

Re: Tarih Farkı Hesaplama

Mesaj gönderen alidirik »

Merhabalar,

DateUtils Fonksiyonlarından IncYear ile tarihi 1 yıl ileri veya geri alabilirsiniz.
Aynı Şekilde IncMonth, IncWeek ve IncDay Fonksiyonları da mevcut.
Örnek Kullanım:
Var Gun: TDate;

Gun:=DateTimePicker1.Date;
Gun:=IncYear(Gun,1); // Bir Yıl Sonraki Gün
DateTimePicker1.Date:=Gun;

Gun:=DateTimePicker1.Date;
Gun:=IncYear(Gun,-1); // Bir Yıl Önceki Gün
DateTimePicker1.Date:=Gun;
ertank
Kıdemli Üye
Mesajlar: 1651
Kayıt: 12 Eyl 2015 12:45

Re: Tarih Farkı Hesaplama

Mesaj gönderen ertank »

ozcank yazdı: 16 Kas 2021 04:41 Arkadaşlar Merhaba; Günün tarihinden 1 yıl sonrasını bularak geriye doğru eksiltmek istiyorum. Ekteki kod ile 1 yıl sonrasını buldum ama günün tarihinden 365 den geriye doğru hesap yaptıramadım. Yardımcı olabilir misiniz?
Merhaba, "Geriye doğru hesap yaptırmak" ve ""İlk yılı sıfır geçmek" derken ne kast ediyorsunuz? Daha anlaşılır şekilde ifade etmeniz mümkün mü?
Paylaştığınız kod ile yapmak istediğiniz anlaşılmıyor.
ozcank
Üye
Mesajlar: 925
Kayıt: 28 Nis 2005 05:29

Re: Tarih Farkı Hesaplama

Mesaj gönderen ozcank »

ertank kardeşim merhaba; Günün Tarihinden 1 yıl sonrasına tarih verip aradaki farkı (365) günü geri saydırmak istiyorum. Bir yıl sonraki tarih o günkü tarihe eşit olduğun da hesaplama yaptırıp 1 yıl daha ileri tarih vererek devam ettirmek istiyorum.
19-11-2021 // Günün tarihi
19-11-2022 // Bir yıl sonraki tarih
365 // aradaki farkı ve bir yıl sonraki tarihe geri sayım 365-1 = 364......
O günün tarihi geldiğin de;
19-11-2022 = 19-11-2022
Hesaplama
..
..
..
.
19-11-2022
19-11-2023
365 // aradaki farkı ve bir yıl sonraki tarihe geri sayım 365-1 = 364......

bu şekilde devam edecek.
ertank
Kıdemli Üye
Mesajlar: 1651
Kayıt: 12 Eyl 2015 12:45

Re: Tarih Farkı Hesaplama

Mesaj gönderen ertank »

Şahsen halen anlamadım ne yapmak istediğinizi.
Basit bir excel dosyası paylaşırsanız daha anlaşılır olabilir belki.
ozcank
Üye
Mesajlar: 925
Kayıt: 28 Nis 2005 05:29

Re: Tarih Farkı Hesaplama

Mesaj gönderen ozcank »

ertank kardeşim :) şöyle basitçe anlatayım. Lisanslı program bedeli var ve 1 yıl sonra program bedelinin %10 nunu hesaplatıp edit e yazdıracam.
Programı alındığı tarih : 19-11-2021 diyelim
Lisans bedelinin hesaplanacağı zaman : 19-11-2022 zaman gelince 19-11-2022 eşit olduğun da %10 hesaplama yapıp edit e aktaracak.
1 yıl daha ekleyip 19-11-2023 yapacak. Bu kadar.
ertank
Kıdemli Üye
Mesajlar: 1651
Kayıt: 12 Eyl 2015 12:45

Re: Tarih Farkı Hesaplama

Mesaj gönderen ertank »

Merhaba,

Doğru anladı isem ekteki projeyi inceleyerek istediğinizi yapacak hale getirebilirsiniz.
Dosya ekleri
lisans.7z
Delphi 7 projesi
(2.54 KiB) 83 kere indirildi
Cevapla