Konuyu Paylaş : facebook gplus twitter

Konuyu Oyla:
  • Derecelendirme: 3/5 - 2 oy
  • 1
  • 2
  • 3
  • 4
  • 5
Record type içerisindeki değişkenlerime for döngüsü ile erişme
#1
Merhabalar,
Bir Hizmetimde fonksiyonum var, Bu fonksiyonum, bir record tipi dönüyor, tipimin içerisinde her türden değişken var Currency, Int. Str. + Benim yaptığım record tiplerim.

İçerisinde 90'dan fazla değişken var, Fonksiyonumun sonunda, bu tipimin içerisinde dönüp, hangi değişkenimin içerisi ne ile dolmuş okuyup bir text dosyasına yazmam gerekiyor. (loglama yapmam gerekiyor)

Bunu nasıl yapabilirim ?
Linkleri Görebilmeniz İçin Giriş yap veya Üye Ol
Kuvvete dayanamayan adalet aciz, 
Adalete dayanamayan kuvvet zalimdir.
WWW
Cevapla
#2
(24-10-2017, Saat: 14:28)yhackup Adlı Kullanıcıdan Alıntı: Linkleri Görebilmeniz İçin Giriş yap veya Üye OlMerhabalar,
Bir Hizmetimde fonksiyonum var, Bu fonksiyonum, bir record tipi dönüyor, tipimin içerisinde her türden değişken var Currency, Int. Str. + Benim yaptığım record tiplerim.

İçerisinde 90'dan fazla değişken var, Fonksiyonumun sonunda, bu tipimin içerisinde dönüp, hangi değişkenimin içerisi ne ile dolmuş okuyup bir text dosyasına yazmam gerekiyor. (loglama yapmam gerekiyor)

Bunu nasıl yapabilirim ?

Merhaba Yakup ,

Eğer Delpi Xe ve üzeri bir sürüm kullanıyorsan bence en kestirme yol RTTI kullanmaktır , uses a RTTI ekle , forma bir TMemo ve TButton atıp aşağıdaki örneği hazırladım
TRecordTip  adında basit bir  Record tip tanımlayıp hem alan isimlerini hem değerlerini yazdırdım.

procedure TForm1.Button1Click(Sender: TObject);

 type TRecordTip = record
   a:string;
   b:Integer;
 end;
var
 intRec    : TRecordTip;
 intType   : TRTTIType;
 intFields : TArray<TRttiField>;
 i: Integer;
begin
 intRec.a := 'Str değer';
 intRec.b := 12345;
 intType := TRTTIContext.Create.GetType(TypeInfo(TRecordTip));
 intFields := intType.GetFields;
 for i := 0 to high(intfields) do
   Memo1.Lines.Add(Format('%s: %s ', [ intFields[i].Name,intFields[i].GetValue(@intRec).ToString]));
end;

Kolay gelsin.
Cevapla
#3
Harika Teşekkürler.
Linkleri Görebilmeniz İçin Giriş yap veya Üye Ol
Kuvvete dayanamayan adalet aciz, 
Adalete dayanamayan kuvvet zalimdir.
WWW
Cevapla

Konuyu Paylaş : facebook gplus twitter



Konu ile Alakalı Benzer Konular
Konular Yazar Yorumlar Okunma Son Yorum
  Harici dll içerisindeki metod Delphide nasıl çağırılır. yhackup 11 325 22-02-2018, Saat: 09:39
Son Yorum: yhackup
  For döngüsü - Çözüldü Dostk 5 465 24-07-2017, Saat: 19:01
Son Yorum: Dostk
  Record Allocation kimimben 6 736 25-03-2017, Saat: 12:16
Son Yorum: kimimben
  [Çözüldü]Çözemediğim veri tabanı hatası (Cannot access field as type Text) musdi42 15 1.134 19-01-2017, Saat: 14:07
Son Yorum: yhackup
  Unsafe Type PChar uyarısı esistem 3 410 07-12-2016, Saat: 08:53
Son Yorum: esistem



Konuyu Okuyanlar: 1 Ziyaretçi