String Değişkeni TDatasource Olarak Göstermek

Delphi'de kod yazma ile ilgili sorularınızı bu foruma yazabilirsiniz.
Cevapla
Kullanıcı avatarı
osmantaskiran
Üye
Mesajlar: 34
Kayıt: 17 Nis 2004 09:27
İletişim:

String Değişkeni TDatasource Olarak Göstermek

Mesaj gönderen osmantaskiran »

Arkadaşlar fast report ile otomatik rapor yapan bir unit hazırlamak istiyorum. Tek bir takıldığım nokta var o da şu:

rapora ait tfrxdbdataset lerimi runtime da oluşturuyorum ve name özelliğini string olarak veriyorum. birde "datasource" özelliğine değer atamam lazım. Ben hangi tfrxdbdataset'ime hangi formdaki hangi datasource'u atayacağımı database te tutmak istiyorum.
Ancak aşağıda göründüğü gibi
"SiparisSonucForm.dsqSiparisSonuc" stringini database de raporlar tablomda tutmak istiyorum ve TfrxDBDataset nesneme aktarırken tdatasource olarak aktarmak istiyorum. Nasıl dönüşüm sağlayabilirim?

Kodum şu :
-------------------------
with TfrxDBDataset.Create(RaporForm) do
begin
Name := 'frdsSiparisSonuc';
DataSource := SiparisSonucForm.dsqSiparisSonuc;
end;
------------------------------
Kullanıcı avatarı
vkamadan
Kıdemli Üye
Mesajlar: 1935
Kayıt: 17 Mar 2004 03:52
Konum: Adapazarı
İletişim:

Mesaj gönderen vkamadan »

mehaba ,

Kod: Tümünü seç

 with TfrxDBDataset.Create(RaporForm) do
begin
Name := 'frdsSiparisSonuc';
DataSource := TDataSource(FindComponent(Query1.FieldByName('dbdeki_datasourceadi').asstring));
end; 
gibi yapabilirsin.
iyi çalışmalar.
Volkan KAMADAN
www.polisoft.com.tr
Kullanıcı avatarı
osmantaskiran
Üye
Mesajlar: 34
Kayıt: 17 Nis 2004 09:27
İletişim:

Mesaj gönderen osmantaskiran »

cevabın için teşekkürler ama o kodu daha önce denedim. Ayrıca şuan için query'den alanı bile göstermiyorum kod simple olsun diye.manuel el ile tırnak içinde yazıyorum. datasource'um rapor formumdan başka bir formda.
Örnek: "SiparisForm.dsSiparisRapor" farklı bir formda olduğu için aşağıdaki 2 ayrı koduda denedim yemedi.

1.) DataSource:= TDatasource(Tform('SiparisSonucForm').FindComponent('dsSiparisRapor'));

2.) DataSource:= (('SiparisSonucForm') as TForm).(FindComponent('dsSiparisRapor') as TDataSource);

Nasıl Çözerim?
Cevapla