Tarih Formatı Problemi

FireMonkey ve Mobil uygulama (iOS, Android, Windows Phone) ile ilgili sorularınızı bu foruma sorabilirsiniz.
Cevapla
jakarta2
Üye
Mesajlar: 63
Kayıt: 20 Nis 2015 05:51
İletişim:

Tarih Formatı Problemi

Mesaj gönderen jakarta2 » 06 Haz 2016 12:02

Selam;

Android'ten Mysql'e datasnap bağlantısı yapıyorum. Formda 1 adet editdate var bind visually ile mysql'deki tarih satırına bağlı. Program çalıştığında tarih seçer seçmez "06 06 2016' is not a valid date and time' hatası alıyorum. Dateedit'in formatını dd/mm/yyyy yaptım, yyyy.mm.dd yaptım, dd.mm.yyyy yaptım hiçbiri olmadı.

Ne yapmam gerekiyor ki bu problemden kurtulayım?
(Tarih yerine varchar bir değer yazıp tarih yazdırabilirim, ya da normal edit koyup tarih yazdırıp strtodate ile formatıda değiştirebilirim ama o zamanda insanlar tarih seçimi yapamaz elle yazarlar. Bunları istemiyorum.)
Bunlardan başka çözüm var mıdır?

Kullanıcı avatarı
fesiharslan
Üye
Mesajlar: 584
Kayıt: 20 Eki 2006 10:37
Konum: Erzurum
İletişim:

Re: Tarih Formatı Problemi

Mesaj gönderen fesiharslan » 06 Haz 2016 12:32

Merhaba;
FormatSettings record tipi ile tüm yerel sistem formatlarını biçimlendirebilirsiniz.
FormatSettings'i kullanabilmek için Uses bölümüne SysUtils referansını eklemeniz gerekiyor.

Kod: Tümünü seç

Uses 
 System.SysUtils;
Resimde örnek kullanımını paylaşıyorum.

Resim

İyi çalışmalar...

delphimaker
Üye
Mesajlar: 10
Kayıt: 04 May 2016 04:58

Re: Tarih Formatı Problemi

Mesaj gönderen delphimaker » 10 Haz 2016 12:42

ben bu sorunu aşağıda ki kod ile aşmıştım

Kod: Tümünü seç

procedure getir;
var a,b,c,d: string;
begin
Edit1.Text:=datetostr(DateEdit1.Date);
if Edit1.Text.Length=10 then begin
a:=Copy(Edit1.Text,7,4);
b:=Copy(Edit1.Text,4,2);
c:=Copy(Edit1.Text,1,2);
   end else begin
   a:=Copy(Edit1.Text,6,4);
   b:=Copy(Edit1.Text,3,2);
   c:=Copy(Edit1.Text,0,1);
     if c='1' then c:='01';
     if c='2' then c:='02';
     if c='3' then c:='03';
     if c='4' then c:='04';
     if c='5' then c:='05';
     if c='6' then c:='06';
     if c='7' then c:='07';
     if c='8' then c:='08';
     if c='9' then c:='09';
   end;
   d:=a+b+c;
end;

jakarta2
Üye
Mesajlar: 63
Kayıt: 20 Nis 2015 05:51
İletişim:

Re: Tarih Formatı Problemi

Mesaj gönderen jakarta2 » 17 Haz 2016 04:54

O kadar alışmışım ki dbdate'e telefonu çok garipsedim. Db hiçbirşey olmadığı için. bindvisually ile oldukça cebelleştim. Fesih Hocamın format settings bilgisi sonunda date ve time'ların bağlanamayacağını anladım. Bağlantıları koparıp kaydetmeden hemen önce formatsettings ile formatları değiştirip ondan sonra kaydettim. Problem çözüldü. Kayıt açılırken de format settings ile telefona uygun hale getirip açıyorum.

Çok Sağolasın Fesih Hocam
Saygılarımla;

Kullanıcı avatarı
fesiharslan
Üye
Mesajlar: 584
Kayıt: 20 Eki 2006 10:37
Konum: Erzurum
İletişim:

Re: Tarih Formatı Problemi

Mesaj gönderen fesiharslan » 17 Haz 2016 08:10

Rica ederim, Saygılar benden.
Çözüm şeklini paylaşmanız çok iyi olmuş. Anlatımınız, bu sorunu yaşayan arkadaşlara bir klavuz olacaktır.
İyi çalışmalar...

Bay_Y
Üye
Mesajlar: 114
Kayıt: 10 Mar 2014 11:12
Konum: İstanbul

Re: Tarih Formatı Problemi

Mesaj gönderen Bay_Y » 04 Ara 2018 10:37

Çok teşekkürler.

Cevapla