Konuyu Oyla:
  • Derecelendirme: 0/5 - 0 oy
  • 1
  • 2
  • 3
  • 4
  • 5
FormatSettings ayarları set etme sorunu
#1
Hayırlı akşamlar herkese .

Bir sorunum var , birçok şey denememe rağmen bir türlü sonuca ulaştıramadım. Çok basit olabilir bilmediğimden bir şey diyemeyeceğim ama bu konuda yarım rica ediyorum.

Bilgisayarda çalışan farklı bir program her çalıştığında bilgisayarın tarih formatını   "31/05/2021"  olacak şekilde yani aradaki dateseperator işaretini  / olacak şekilde değiştiriyor.
Benim istediğim ise tarihin 31.05.2021 şeklinde olması bende programı her çalıştırdığımıda set etmeye çalıştım ama birşey değişmiyor ve program sürekli hata veriyor.

   FormatSettings.DateSeparator   := '.' ;
   FormatSettings.ShortDateFormat := 'gg.aa.yyyy';
  FormatSettings.LongDateFormat  := 'gg aaa yyyy gggg';
   

Yanlış birşey yapıyorum sanırım.   işletim Sistemi : Windows  7 (önemli mi bilemiyorum.)

OFlr6q.jpg
Cevapla
#2
Form1.Caption := FormatDateTime('DD.MM.YYYY',Date);

İstediğiniz sonuç bu olabilir mi ?
FMX - Software Developer | Serhat Yanalak
Cevapla
#3
Cevap için teşekkür ederim. Ama istediğim bilgisayardaki formatın değişmesi , çünkü birçok yerde tarih saat dönüşümleri kullanıldı.
Ama bu şekilde kullandığımda da istediğim sonucu vermiyor maalesef.
Cevapla
#4
(31-05-2021, Saat: 21:25)Bay_Y Adlı Kullanıcıdan Alıntı: Cevap için teşekkür ederim. Ama istediğim bilgisayardaki formatın değişmesi , çünkü birçok yerde tarih saat dönüşümleri kullanıldı.
Ama bu şekilde kullandığımda da istediğim sonucu vermiyor maalesef.

Rica ederim. 
Merakımı mazur görün ;
Bu durum da sisteme bulaşmaktansa uygulamanızın veriyi alış biçimini değiştirmek daha iyi bir yol olmaz mı ?
FMX - Software Developer | Serhat Yanalak
Cevapla
#5
olabilir çok zahmetli de olsa oda olabilir ama istediğim formata bir türlü çeviremiyorum mutlaka bir yerde hata veriyor. SQL server kullanıyorum. Ya oraya aktardığım veride ya da çalıştırdığım proseslerde sorun oluyor. O yüzden en kolay yol sistemden değiştirmek gibi geldi. ( Doğru mu yanlış mı bilmiyorum )

Forumdaki birçok tarih ile ilgili yazılmış konuyu da denedim ama maalesef sonuç aynı bir sonuç alamadım.
https://www.delphican.com/showthread.php?tid=1898
Cevapla
#6
Bu linki inceledim Regeditten değiştirseniz çözüm olabilir mi?

Alıntı:HKEY_CURRENT_USER\Control Panel\International

sLongDate = dd MMMM yyyy dddd
sShortDate = dd.MM.yyyy
sDate=.
 
Cevapla
#7
Kullandığım herhangi bir programın sistem ayarlarını kendi kafasına göre değiştirmesi kullanıcı olarak beni hiç memnun etmez.
Yazdığınız programı yine kendiniz kullanacaksanız birşey diyemem ama, başkaları kullanacaksa onların sistem ayarlarına saygı duymak zorundasınız.

Sizin program açık, tarih formatı değişti, aynı zamanda excel vb. tarih ile işlem yapan başka bir programda açık, sizin programın dayattığı formatı başka yerlerdede görmek hoş bir tecrübe olmaz. (Bazı kullanıcılar programcıyı, hoşuna gitmeyecek şekilde anabilirler Smile )

Doğru olan (uğraştıracak olsada) kendi yazılımınız içinde sistem ayarlarını değiştirmeden çözüm üretmeniz. (İdeal olan sistem ayarlarına sadık kalarak, sistem ayarlarını kendi programınız içindede kullanmak)

Sistem ayarlarını değiştirerek çözüm arama noktasına geldiyseniz birşeyler başlangıçtan beri ters gidiyor demektir.
Cevapla
#8
(01-06-2021, Saat: 02:47)10.Köy Adlı Kullanıcıdan Alıntı: Bu linki inceledim Regeditten değiştirseniz çözüm olabilir mi?

Alıntı:HKEY_CURRENT_USER\Control Panel\International

sLongDate = dd MMMM yyyy dddd
sShortDate = dd.MM.yyyy
sDate=.
 
Denedim maalesef onda da bir değişiklik olmadi
Cevapla
#9
Bilgisayardaki ayarları değiştirmeyin, programınızdaki değişkenleri ayarlayın. Yalnız ayar yaptığınız kod satırından önce bu ayarlara bağlı çalışan başka kodlarınız devreye girmemeli, her şeyden önce ayarlama yaptığınız kod satırlarınız çalışmalı.
unit untSettings;

interface

implementation

uses
  System.SysUtils;
initialization
  FormatSettings.DateSeparator   := '.' ;
  FormatSettings.ShortDateFormat := 'dd.MM.yyyy';
  FormatSettings.LongDateFormat  := 'dd MMMM yyyy gggg';
end.
gibi. Bu unit dosyasını dpr dosyanızın en üst satırında projenize dahil etmeyi deneyin.
Cevapla
#10
Konuya yorum yazan herkese değerli fikirleri için çok teşekkür ediyorum. Gecikme için çok özür diliyorum.

Sonrasında okuyacak arkadaşlar için sonucu yazayım ki sonradan ne oldu diye merak da kalan olmasın. Konuda yazan herşeyi denedim. Fakat istediğim şeyde maalesef başarılı olamadım belki ben beceremedim bilemiyorum.
Cevapla


Konu ile Alakalı Benzer Konular
Konular Yazar Yorumlar Okunma Son Yorum
  Cas Terazi Veri gönderimi Delphi sürüm sorunu KUNTAY 12 4.300 08-11-2023, Saat: 00:06
Son Yorum: berkan
  TCMB Kur Almada Explorer Sertifika Sorunu Adem Kurt 3 580 24-10-2023, Saat: 15:14
Son Yorum: RAD Coder
  program exe icon sorunu cvheneburi 9 2.726 19-10-2023, Saat: 15:04
Son Yorum: harunyl
  TThread.Synchronize çalışmama sorunu muratmutlu 3 587 10-10-2023, Saat: 12:16
Son Yorum: Tuğrul HELVACI
  FastReport detail tablo gösterim sorunu Frrst 12 1.730 14-07-2023, Saat: 17:10
Son Yorum: hi_selamlar



Konuyu Okuyanlar: 1 Ziyaretçi