Delphi Can

Orjinalini görmek için tıklayınız: [ÇÖZÜLDÜ SOLVED] Fast Report Kontrollü Component Gizleme
Şu anda (Arşiv) modunu görüntülemektesiniz. Orjinal Sürümü Görüntüle internal link
Örnek Dataset(Query) içeriği

id, ad, soyad, yas, is_goster
---------------------------
1, Ali, Ak, 21, True
2, Veli, Kara, 24, False
3, Ahmet, Kısa, 27, False
4, Mehmet, Uzun, 24, True

Rapor Ekranındaki bilgiler
memoAd       -       memoSoyad       -       memoYas

Ben yukarıdaki 4 kayıtta görüneceği üzere 2 ve 3. kayıtlarda is_goster bilgisi False olduğu için memoYas kutucuğunun Visible özelliğinin False olmasını istiyorum.
Bunu nasıl yapabilirim.

procedure MasterData1OnBeforePrint(Sender: TfrxComponent);
begin
  //MasterData1.DataSet.Value['is_goster'];    Buradaki şekilde istenilen bilgiye erişebiliyoruz. Bu şekilde çözüm buldum. OnBeforePrint kısmına da kontrol kodumu yazınca oldu.
   memoYas.visible := MasterData1.DataSet.Value['is_goster'];
end;

Ayrıca yukarıdaki çözüm rapor form tasarım ekranından yapılmıştı.
Bu çözümde raporun çağırıldığı delphi formundan.
procedure TfrmX.frxReport1BeforePrint(Sender: TfrxReportComponent);
var
 LObj: TfrxMemoView;
 AGoster: Boolean;
begin
 AGoster := frxReport1.DataSets.Items[0].DataSet.Value['is_goster'];
 LObj := frxrprtBase.FindObject('memoYas') as TfrxMemoView;
 if Assigned(LObj) then
   LObj.Visible := AGoster;
 end
end;