OnGuard da 01.01.9999 tarihinde hata

Delphi'de kod yazma ile ilgili sorularınızı bu foruma yazabilirsiniz.
Cevapla
Kullanıcı avatarı
VooDoo
Üye
Mesajlar: 126
Kayıt: 22 Haz 2005 10:25
Konum: Bursa & ANKARA
İletişim:

OnGuard da 01.01.9999 tarihinde hata

Mesaj gönderen VooDoo »

arkadaslar onguard kullananlar bilir

checknodate:=StrToDate('01.01.9999');

diye bir satir vardir burasi hata verir hale geldi, sizde de boyle bir sorun varmi?

valid date degil diyor bu satirda kod
Kullanıcı avatarı
VooDoo
Üye
Mesajlar: 126
Kayıt: 22 Haz 2005 10:25
Konum: Bursa & ANKARA
İletişim:

Mesaj gönderen VooDoo »

checknodate:=StrToDate('01/01/9999');

seklinde duzeltme yapilinca olay cozuldu aklinizda bulunsun noktalar sorun yapiyor
Kullanıcı avatarı
TRSoft
Kıdemli Üye
Mesajlar: 636
Kayıt: 13 Şub 2004 11:39
Konum: Konya
İletişim:

Mesaj gönderen TRSoft »

Bence problem noktalardan değil, sizin işletim sisteminizde ayarlamış olduğunuz bölgesel ayarlardaki tarih ayıracına bağlı olarak değişkenlik gösterecektir.
İlimle geçen bir gece,
ibadetle geçen bin geceden hayırlıdır.
HZ. MUHAMMED (S.A.)
Kullanıcı avatarı
VooDoo
Üye
Mesajlar: 126
Kayıt: 22 Haz 2005 10:25
Konum: Bursa & ANKARA
İletişim:

Mesaj gönderen VooDoo »

dogru soyluyorsunuz evet olay bu
peki her işletim sisteminde tarih ayracını nasil bilip de ona gore işlem yapicaz, yada genel gecer bir tarih ayracı varmıdır, yokmudur?
fduman
Moderator
Mesajlar: 2749
Kayıt: 17 Ara 2004 12:02
Konum: Ankara

Mesaj gönderen fduman »

Programın girişine

Kod: Tümünü seç

uses SysUtils;
 
  DateSeparator := '.';
  ShortDateFormat := 'dd.mm.yyyy';
kodunu ekleyeceksin. Bu sayede yerel ayarlar ne olursa olsun Türkçe tarih biçimine göre işlem yapacak.
Kullanıcı avatarı
VooDoo
Üye
Mesajlar: 126
Kayıt: 22 Haz 2005 10:25
Konum: Bursa & ANKARA
İletişim:

Mesaj gönderen VooDoo »

teşekkürler

gerci dateseperatoru alaraktan tarihi olusturdum arastirma sonucu ama bu daha genel geçer bir çözüm
Çağrıbey
Üye
Mesajlar: 40
Kayıt: 26 Kas 2004 11:25
Konum: Ankara

Program girişi

Mesaj gönderen Çağrıbey »

Program'in girişinden kastiniz
form'un creatine mi,, yoksa yapılan her kisa porgramin başlangicina mi..
ikisi arasında bir fark olur mu?

örnekteki işlemi yaptıktan sonra aşağıdaki tarih ayarlamasını yapmaya gerek var mı?
fduman
Moderator
Mesajlar: 2749
Kayıt: 17 Ara 2004 12:02
Konum: Ankara

Re: Program girişi

Mesaj gönderen fduman »

Çağrıbey yazdı:Program'in girişinden kastiniz
form'un creatine mi,, yoksa yapılan her kisa porgramin başlangicina mi..
ikisi arasında bir fark olur mu?
Bir fark olmaz. Bu kodun program açıldığında bir kereliğine çalışması yeterli. Sürekli çalıştırmayacaksınız.
Çağrıbey yazdı: örnekteki işlemi yaptıktan sonra aşağıdaki tarih ayarlamasını yapmaya gerek var mı?
Neyi kastettiğini anlamadım.
myalcin
Üye
Mesajlar: 63
Kayıt: 11 Mar 2008 03:45

Re: OnGuard da 01.01.9999 tarihinde hata

Mesaj gönderen myalcin »

en iyisi regeditten sorgu yapıp tarih formatını kaydetme.
var
reg:TRegistry;
begin
reg:=TRegistry.Create;
reg.RootKey:=HKEY_CURRENT_USER;
reg.OpenKey('Control Panel\International',True);
if reg.ReadString('sShortDate')<>'dd.MM.yyyy' then
Begin
reg.WriteString('sShortDate','dd.MM.yyyy');
end;
reg.CloseKey;
reg.Free;
mehmetcan
Üye
Mesajlar: 63
Kayıt: 14 Tem 2008 05:19

Re: OnGuard da 01.01.9999 tarihinde hata

Mesaj gönderen mehmetcan »

Bir ek bilgi de ben vereyim.

Eger firebird ile ugraşıyorsanız nokta . kullandıgınızda firebird tarihi dd.mm.yyyy olarak yorumlar, eger slash / kullanırsanız mm/dd/yyyy olarak yorumlar.
Cevapla