fastreportta bileşenleri visible=false yapmak

Delphi'de kod yazma ile ilgili sorularınızı bu foruma yazabilirsiniz.
Cevapla
a_o
Üye
Mesajlar: 84
Kayıt: 18 Eki 2005 04:41
Konum: Tekirdağ

fastreportta bileşenleri visible=false yapmak

Mesaj gönderen a_o »

merhaba arkadaşlar

fastreport 3.0 kullanıyorum. ödeme kontrolü yapmam lazım. çek, senet, kredi kartı veya nakit ödeme yapılıyor. çek, senet veya kredi kartından herhangi birisi seçildiyse nakit ödemenin fastreportta yazılmaması lazım.

mesela görünüm şekli;
nakit Toplam Fiyat 1000$
--------------------------------------------------
çek
2 eşit taksit 1000$
1.taksit 500$
2.taksit 500$
--------------------------------------------------
kredikartı
Tek Çekim 1000$
bu ödeme şekillerinin hepsi ayrı ayrı sorgularla çağrılıyor. şimdi benim nakit kısmının bulunduğu
SubdetailData11.visible:=false;
yada
memo1.visible:=false;
memo2.visible:=false;
memo3.visible:=false;

şeklinde yapmam lazım. ama olmadı:(. bunu nasıl yapabilirim.

kolay gelsin
ii çalışmalar
ademcicek
Üye
Mesajlar: 409
Kayıt: 03 Eki 2003 01:50
Konum: Ankara

Mesaj gönderen ademcicek »

üstatım onBeforePrint olayında yaparsan olur.ben denedim script kısmında çalıştı.

Kod: Tümünü seç

procedure PageHeader1OnBeforePrint(Sender: TfrxComponent);
begin
  memo1.visible:=false;
end;
a_o
Üye
Mesajlar: 84
Kayıt: 18 Eki 2005 04:41
Konum: Tekirdağ

Mesaj gönderen a_o »

hocam burda şarta göre visible etme durumu yok ama:(.
yani çek, senet veya kredi kartından herhangi birisi seçildiyse nakit ödemenin fastreportta visiblenın false olması lazım.
eğer çek, senet veya kredi kartından herhangi birisi seçilmediyse nakit alanının visible ı true olcak.
bunu nasıl yapıcam? :(
ii çalışmalar
kolay gelsin
ademcicek
Üye
Mesajlar: 409
Kayıt: 03 Eki 2003 01:50
Konum: Ankara

Mesaj gönderen ademcicek »

fast report dialog form mu kullandın.
a_o
Üye
Mesajlar: 84
Kayıt: 18 Eki 2005 04:41
Konum: Tekirdağ

Mesaj gönderen a_o »

hayır hocam. sadece detailband, subdetailband kullandım.
ademcicek
Üye
Mesajlar: 409
Kayıt: 03 Eki 2003 01:50
Konum: Ankara

Mesaj gönderen ademcicek »

üstadım şöyle bir şey yaparsın.delphi kısmında gerekli işlemleri yap.ve değişken olarak rapora gönder ve orada şartlarını koy.bunu şu şekilde yapabilirsin.2 tane mi şart gönderecen.iki tane memo koy.ve onbefore print olayında bunları kontrol et.değişkeni şöyle gönderebilirsiin.

Kod: Tümünü seç

        Report.LoadFromFile(ExtractFilePath(ParamStr(0)) +
          'Raporlar\SeninRapor.fr3');
        TFrxMemoView(Report.Pages[0].FindObject('Memonunismi')).Memo.Clear;
        TFrxMemoView(Report.Pages[0].FindObject('memonunismi')).Memo.Text
          := Değişken;
böylece delphi tarafında hazırladığın değişkenleri fastreport a aldın.burada onbeforeprint olayında aynı delphide yazıyormuş gibi gizleyebilirsin.
kolay gelsin.umarım yardımcı olabilmişimdir.
a_o
Üye
Mesajlar: 84
Kayıt: 18 Eki 2005 04:41
Konum: Tekirdağ

Mesaj gönderen a_o »

hocam dediğiniz gibi yapınca oldu. :lol: çok tşk ederim .
kolay gelsin.
ii çalışmalar
Kullanıcı avatarı
bobasturk
Kıdemli Üye
Mesajlar: 1387
Kayıt: 20 May 2004 08:39
Konum: Düzce

Mesaj gönderen bobasturk »

Merhaba,

FastReport şeklinde programlama+delphi başlıklarında arattığımda 9 sayfa konu geldi karşıma ve bu başlığın benim sorunumla yakın ilgili olduğunu gördüm fakat söylenenleri uygulayamadım.

ana tablom var ve bu ana tabloya bağlı foto tablom var. yine yazdırma alanım var kişinin bilgilerini yazıyor ve fotosunu fast reportta picture alanında gösteriyor buraya kadar sorun yok. lakin kullanıcı bazen kişinin bilgilerini yazdırmak ama fotoğrafını yazdırmak istemeyebilir. form üzerine bir cxcheckbox koydum ve click çartına eğer checked true ise fotoğrafı yazdır false ise yazdırma şeklinde komut vermeye çalışıyorum fakat fast reporta ulaşamıyorum veya bir hata yapıyorum sanki çünkü access violation hatası alıyorum. kod şöyle;

Kod: Tümünü seç

if cxcheckbox1.Checked =true then
  begin
    verigirisdm.SucSicilMatbufrxReport.LoadFromFile('d:\KTSBpro\Raporlar\SucSicilMatbu.fr3');
    verigirisdm.sucsicilA4frxReport.LoadFromFile('d:\KTSBpro\Raporlar\SucSicilA4.fr3');
    verigirisdm.SucSicilMatbufrxReport.pages[1].FindObject('frxpictureview').Visible:=false;
    verigirisdm.SucSicilA4frxReport.pages[1].FindObject('frxpictureview').Visible:=false;
  end;
burada raporu yüklesem de yüklemesemde aynı hatayı alıyorum. program kilitlenmiyor ama kliklediğim anda access hatasını veriyor ve butona bastığımda report açılıyor ama resim görünüyor.

kısacası checkbox durumuna göre şart uygulayıp fastreport içindeki resmi gösterip göstermeme işlemini basit olarak nasıl yapabilirim.

kolay gelsin
Şefkat-u Merhamette Güneş Gibi Ol.
Başkalarının Kusurunu Örtmekte Gece Gibi Ol.
Sehavet-u Cömertlikte Akarsu Gibi Ol.
Hiddet-u Asabiyette Ölü Gibi Ol.
Tevazu-u Mahviyette Toprak Gibi Ol.
Ya Olduğun Gibi Görün Ya Göründüğün Gibi Ol.

Resim
Kullanıcı avatarı
bobasturk
Kıdemli Üye
Mesajlar: 1387
Kayıt: 20 May 2004 08:39
Konum: Düzce

Mesaj gönderen bobasturk »

Merhaba,

Sorunu şu şekilde çözdüm. Kolay gelsin;

Kod: Tümünü seç

procedure TFrmArsivGiris.JvXPButton10Click(Sender: TObject);
begin
  if cxcheckbox2.Checked =true then
  begin
      if cxcheckbox1.Checked =false then
      begin
        verigirisdm.SucSicilMatbufrxReport.LoadFromFile('d:\KTSBpro\Raporlar\SucSicilMatbu.fr3');
        verigirisdm.sucsicilmatbufrxReport.FindObject('Picture1').Visible:=false;
        verigirisdm.SucSicilMatbufrxReport.ShowReport();
      end;
  end;

  if cxcheckbox3.Checked =true then
  begin
    if cxcheckbox1.Checked =false then
    begin
      verigirisdm.SucSicilA4frxReport.LoadFromFile('d:\KTSBpro\Raporlar\SucSicilA4.fr3');
      verigirisdm.sucsicilA4frxReport.FindObject('Picture1').Visible:=false;
      verigirisdm.SucSicilA4frxReport.ShowReport();
    end;
  end;
end;

Şefkat-u Merhamette Güneş Gibi Ol.
Başkalarının Kusurunu Örtmekte Gece Gibi Ol.
Sehavet-u Cömertlikte Akarsu Gibi Ol.
Hiddet-u Asabiyette Ölü Gibi Ol.
Tevazu-u Mahviyette Toprak Gibi Ol.
Ya Olduğun Gibi Görün Ya Göründüğün Gibi Ol.

Resim
Cevapla