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 ?
WWW
Cevapla
#2
(24-10-2017, Saat: 14:28)yhackup Adlı Kullanıcıdan Alıntı: 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 ?

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.
WWW
Cevapla


Konu ile Alakalı Benzer Konular
Konular Yazar Yorumlar Okunma Son Yorum
  Tanımladığım record içindeki alanlardan biri ile ilgili sorun Bay_Y 2 567 07-03-2023, Saat: 12:03
Son Yorum: Bay_Y
  domaindeki bir klasöre kullanıcı adı ve şifre ile erişme shooterman 9 1.544 23-01-2023, Saat: 12:17
Son Yorum: shooterman
  Dosya content type bulma tuna 7 1.820 18-01-2023, Saat: 20:29
Son Yorum: tuna
  Operand data type varchar is invalid for multiply operator OZCANK 33 8.570 14-06-2022, Saat: 17:58
Son Yorum: OZCANK
  could not convert variant of type (null) into type (olestr) yunusemre 5 2.363 18-05-2022, Saat: 18:00
Son Yorum: yunusemre



Konuyu Okuyanlar: 1 Ziyaretçi