Selam,
Sanırım asıl sorun senin field bilgilerine delphi değişkenleri ile erişmeye çalışman. Zaten başlıktan da anlaşılıyor aslında. Ama çözüm mantığın pek de doğru bir yaklaşım değil.
Burada iki yöntem uygulayabilirsin bence (Satırlarca if yazmayı zaten çözüm olarak görmüyorum).
1. Field ID'lerini kullanırsın. Yani daha önce bir arkadaşın yazdığı gibi Combo box gibi bir bileşen kullanırsın, ve Query1.Fields[Index].AsString dersin. Burada index, kullanıcının seçtiği Field'in indeksi olur. Tabii arabirimde biraz kasman gerekir. Yani ComboBox'ta ItemIndex=1 olur ama bu Field Listesinde 12 olur. Bu eşleşmeyi sağlaman gerekir.
2. TField için bir pointer kullanırsın ve buna göre yaptırırsın. Ama bu yöntem biraz daha dikkat gerektirir. Bilgisayarda Delphi yok o yüzden yanlış bir kod olabilir ama şu şekilde bir şey olmalı (Gene ComboBox var)
var
AField:TField;
case ComboBox.ItemIndex of
0: AField:=Query1Kod;
1: AField:=Query2Kod;
end;
AField.AsString... gibi devam edecek. Bu kodun şöyle bir avantajı olabilir. TField dizisi oluşturursun ve bir seferde Query6MalKodu.Text değerini üretebilirsin. Yani kullanıcının seçimine göre 4,3,2,1 çıktı diyelim
var
AFieldList:array [0..4]of TField;
begin
AFieldList[0]:=Query1Kod;
AFieldList[1]:=Query3Kod;
...
Query6MalKodu.Text :=('152.'+AFieldList[0].Text+'.'+copy (AFieldList[1].Text,2,3)...
Biraz karışık anlattım farkındayım ama umarım işine yarar.
Kolay gelsin,
Bahadır Alkaç
Dışarıdan Değişken İsmini Değiştirmek
Forum kuralları
Forum kurallarını okuyup, uyunuz!
Forum kurallarını okuyup, uyunuz!
Merhaba @Opt2000 arkadaşım.
inan cevabını beni çok mutlu etti. benim için uzun uzadıya yazmışsın çok tşk ederim.
yazdığın olayın mantığını anladım aslında (normalde böyle bişey banada uçuk geldi ama ya olursa dedim herşeyi kullanıcının isteğine göre yaptırabilirim diye düşündüm)
Söylediğin mantık ile yazmaya çalışacam. eğer olursa çok büyük bir işi olucak.
Ya gerçekten
Bilmeyipte bakınca herşey zor Bilipte görünce herşey çok basit geliyor.
Tekrar teşekkür ederim.
Çözülünce yazarım inş.
inan cevabını beni çok mutlu etti. benim için uzun uzadıya yazmışsın çok tşk ederim.
yazdığın olayın mantığını anladım aslında (normalde böyle bişey banada uçuk geldi ama ya olursa dedim herşeyi kullanıcının isteğine göre yaptırabilirim diye düşündüm)
Söylediğin mantık ile yazmaya çalışacam. eğer olursa çok büyük bir işi olucak.
Ya gerçekten
Bilmeyipte bakınca herşey zor Bilipte görünce herşey çok basit geliyor.
Tekrar teşekkür ederim.
Çözülünce yazarım inş.
Gün gelecek, dilleri, elleri ve ayakları yapmış oldukları bütün kötülükleri tek tek bildirerek aleyhlerinde şahitlik edecektir. [Nur Suresi 24]
_________________
_________________