Fastreport, label'i preview'de göstersin, Printte yazmasın

Delphi'de kod yazma ile ilgili sorularınızı bu foruma yazabilirsiniz.
Cevapla
uparlayan
Üye
Mesajlar: 34
Kayıt: 09 Oca 2009 05:48

Fastreport, label'i preview'de göstersin, Printte yazmasın

Mesaj gönderen uparlayan »

Merhaba,

Araştırdım fakat bir yanıt bulamadım, Sorun şu; FRX uzantılı bir FASTREPORT şablonum var. Bu şablonda Faturanın seri numarasını gösteren TfrxMemoView tipinde bir nesnem var. Bu nesnemin PRINTABLE adlı Boolean tipinde bir PROPERTY'si var. Bu property'e runtime'da erişemiyorum (yani henüz nasıl erişeceğimi bilemiyorum) dolayısıyla

Ben, runtime esnasında raporu export ettiğimde PRINTABLE = TRUE olsun, Print ettiğimde PRINTABLE = FALSE olsun istiyorum,

bunu nasıl yapabilirim?
Kullanıcı avatarı
vkamadan
Kıdemli Üye
Mesajlar: 1935
Kayıt: 17 Mar 2004 03:52
Konum: Adapazarı
İletişim:

Re: Fastreport, label'i preview'de göstersin, Printte yazmas

Mesaj gönderen vkamadan »

Merhaba aşağıdaki gibi bir yöntemle erişim sağlayabilirsiniz.

Kod: Tümünü seç

TfrxMemoView( frxReport1.FindObject('Memo1') ).Printable := False;
iyi çalışmalar.
Volkan KAMADAN
www.polisoft.com.tr
uparlayan
Üye
Mesajlar: 34
Kayıt: 09 Oca 2009 05:48

Re: Fastreport, label'i preview'de göstersin, Printte yazmas

Mesaj gönderen uparlayan »

Tekrar Merhaba,

Yardımınız için teşekkürler, başkasına da faydası dokunabilir niyetiyle ortaya çıkan çözümü aşağıdaki gibi gerçekleştirdim,

Kod: Tümünü seç

procedure TBaski_Onizleme.MN_Klik(Sender: TObject);
var
  I: Integer;
begin
  // Bu prosedür hangi tuşa basıldıysa o tuş ile ilgili işlemi gerçekleştirir, birden çok click prosedürü oluşturmamak, dağınıklığı önlemek için bu şekilde çalışıyorum
  // FR3Raporu = TfrxReport nesnesidir...
  if (Sender = MN_Tasarla) then begin
      FR3Raporu.DesignReport;
      FR3Raporu.ShowReport;
  end else
  if (Sender = MN_Yazdir) then begin

      For I := 0 to 9 do
      if   Assigned(FR3Raporu.Report.FindObject( FORMAT('yazdirilmayacak%d', [I])) ) = True
      then TfrxMemoView ( FR3Raporu.Report.FindObject(FORMAT('yazdirilmayacak%d', [I])) ).Printable := FALSE;

      FR3Raporu.PrepareReport;
      FR3Raporu.Print;
      MN_Kapat.Click;
  end;
  if (Sender = MN_PDF)
  or (Sender = MN_RTF)
  or (Sender = MN_HTML)
  or (Sender = MN_Excel)
  or (Sender = MN_XML)
  or (Sender = MN_BMP)
  or (Sender = MN_JPEG)
  or (Sender = MN_TIFF)
  or (Sender = MN_POSTA) then begin

      For I := 0 to 9 do
      if   Assigned(FR3Raporu.Report.FindObject( FORMAT('yazdirilmayacak%d', [I])) ) = True
      then TfrxMemoView ( FR3Raporu.Report.FindObject(FORMAT('yazdirilmayacak%d', [I])) ).Printable := TRUE;
      FR3Raporu.PrepareReport;
  end;
  if (Sender = MN_PDF)   then begin FR3Raporu.Export(ToPDF);  FR3Raporu.ShowReport; end else
  if (Sender = MN_RTF)   then begin FR3Raporu.Export(ToRTF);  FR3Raporu.ShowReport; end else
  if (Sender = MN_HTML)  then begin FR3Raporu.Export(ToHTML); FR3Raporu.ShowReport; end else
  if (Sender = MN_Excel) then begin FR3Raporu.Export(ToXLS);  FR3Raporu.ShowReport; end else
  if (Sender = MN_XML)   then begin FR3Raporu.Export(ToXML);  FR3Raporu.ShowReport; end else
  if (Sender = MN_BMP)   then begin FR3Raporu.Export(ToBMP);  FR3Raporu.ShowReport; end else
  if (Sender = MN_JPEG)  then begin FR3Raporu.Export(ToJPEG); FR3Raporu.ShowReport; end else
  if (Sender = MN_TIFF)  then begin FR3Raporu.Export(ToTIFF); FR3Raporu.ShowReport; end else
  if (Sender = MN_POSTA) then begin FR3Raporu.Export(toEmail); FR3Raporu.ShowReport; end;
end;
Cevapla