Konuyu Paylaş : facebook gplus twitter

Konuyu Oyla:
  • Derecelendirme: 0/5 - 0 oy
  • 1
  • 2
  • 3
  • 4
  • 5
Fast Report Preview ekranında Pdf butonuna tıklandıgında verdiği hata.
#1
Hayırlı akşamlar arkadaşlar.
Fast Report frxReport1 çalıştırdığımda Preview ekranında Pdf butonuna tıklandığında aşagıdaki hatayı veriyor.

 frxPDFExport1.ShowDialog:=True; iken bu hatayı veriyor.

 frxPDFExport1.ShowDialog:=False; yaptıgımda pdf butonuna tıklasamda hiç bir işlem yapmamaktadır.


Access violation at address 00737086 in module 'Project1.exe'. Read of address 00000000.



fakat. 

    frxReport1.LoadFromFile(ExtractFilePath(Application.ExeName)+data.DataModule1.spPASSWORD.FieldByName('frxReport1Location').AsString+'\'+data.DataModule1.spPASSWORD.FieldByName('KasafrxReport1u').AsString);

                             frxReport1.Variables.Variables['kasagider'] := QuotedStr(cxLabel71.Caption);
     frxReport1.Variables.Variables['kasagelir'] :=QuotedStr(cxLabel72.Caption);
    frxReport1.Variables.Variables['odemeler'] := QuotedStr(cxLabel95.Caption);
    frxReport1.Variables.Variables['tahsilatlar'] := QuotedStr(cxLabel96.Caption);
    frxReport1.Variables.Variables['alinancekler'] := QuotedStr(cxLabel99.Caption);
    frxReport1.Variables.Variables['verilencekler'] := QuotedStr(cxLabel100.Caption);
    frxReport1.Variables.Variables['gelirler'] := QuotedStr(cxLabel115.Caption);
    frxReport1.Variables.Variables['giderler'] := QuotedStr(cxLabel120.Caption);
    frxReport1.Variables.Variables['netkasa'] := QuotedStr(cxLabel97.Caption);
 
       SaveDialog1.Title := 'Kaydet';
 SaveDialog1.FileName :='Kasa_raporları_'+IntToStr(gun)+IntToStr(
   ay)+IntToStr(yil)+IntToStr(saat)+IntToStr(dakika)+IntToStr(saniye)+IntToStr(
   salise)+'.pdf';
 SaveDialog1.DefaultExt := 'pdf';
 SaveDialog1.FilterIndex := 1;
 SaveDialog1.InitialDir := GetCurrentDir;
 SaveDialog1.Filter := 'PDF document (*.pdf)|*.pdf';


 if SaveDialog1.Execute then
 begin
 
 frxPDFExport1.DefaultPath:=SaveDialog1.Filename;
frxPDFExport1.FileName:=SaveDialog1.Filename;
  
frxPDFExport1.ShowDialog:=False;
frxPDFExport1.OverwritePrompt := False;
frxPDFExport1.OpenAfterExport:=True;
// frxReport1.PrepareReport(False);
frxPDFExport1.ExportObject(frxReport1);

frxReport1.Export(frxPDFExport1);
  end;
        

Form üzerindeki button2 ozeliğine yukarıdaki kodu yazıp direkt pdf export etikten sonra eğer 
yeniden frxReport1 çalıştırdığımda Preview ekranında Pdf butonuna tıklandığında pdf olarak ekrana geliyor.

1. Neden ne olabilir.
2. Button2 ozellıgındekı kod ile pdfexport etığimde bir önceki pdf exportunun sayfasının içine bir sayfa daha ekleyip pdf açıyor.
normalde tek sayfa olması gekirken program çalıştıkca ne kadar export edersem o kadar raporu sayfa ekleyerek export ediyor.

yardımlarınız için şimdiden teşekkürler.
Cevapla
#2
    if SaveDialog1.Execute then
    begin
        Form1.frxPDFExport1.FileName:=SaveDialog1.FileName;

        Form1.frxreport1.Export(form1.frxPDFExport1);
        Form1.frxreport1.preparereport(true);
    end;                

bu şekilde yaptığımda bende sorunsuz çalışyor.
2. Sorun bende de bir ara olmuştu tam hatırlamıyorum nasıl çözdüğümü uzun süre önceydi. Her çıktı aldıktan sonra raporu yeniliyormusun
Cevapla
#3
(16-01-2017, Saat: 00:14)CaglarCoskun Adlı Kullanıcıdan Alıntı: Linkleri Görebilmeniz İçin Giriş yap veya Üye Ol
    if SaveDialog1.Execute then
    begin
        Form1.frxPDFExport1.FileName:=SaveDialog1.FileName;

        Form1.frxreport1.Export(form1.frxPDFExport1);
        Form1.frxreport1.preparereport(true);
    end;                

bu şekilde yaptığımda bende sorunsuz çalışyor.
2. Sorun bende de bir ara olmuştu tam hatırlamıyorum nasıl çözdüğümü uzun süre önceydi. Her çıktı aldıktan sonra raporu yeniliyormusun

ilginiz için teşekkürler.
1. sorumda kı neden 
  frxPDFExport1.DefaultPath:=ExtractFilePath(Application.ExeName)+data.DataModule1.spPASSWORD.FieldByName('RaporLocation').AsString+'\';
 frxPDFExport1.FileName:='Kasa_Raporları_'+IntToStr(gun)+IntToStr(
   ay)+IntToStr(yil)+IntToStr(saat)+IntToStr(dakika)+IntToStr(saniye)+IntToStr(
   salise)+'.pdf';

satırı ekleyınce duzeldi.
Cevapla
#4
Aşağıdaki methoda parametre olarak False dediğinizde önceki raporları de ekleyip, sürekli raporu bütüyor.

   function PrepareReport(ClearLastReport: Boolean = True): Boolean;

Bir dokümana pei peşe başka şeyler eklemek için eklenmiş bir özellik, standart'ta True ya da False demediğinizde default değer True olduğu için zaten bu davranışı sergilemez.
Cevapla

Konuyu Paylaş : facebook gplus twitter



Konu ile Alakalı Benzer Konular
Konular Yazar Yorumlar Okunma Son Yorum
Exclamation Bir Türlü Kuramadım (HATA) keceonurr 3 140 12-09-2018, Saat: 14:50
Son Yorum: ihalilcoban
  IDHttp error:14094410:SSL routines:SSL3_READ_BYTES:sslv3 alert handshake failure hata burakb44 12 367 02-09-2018, Saat: 23:37
Son Yorum: burakb44
  Delphi 10.3.2 Cominity için Sui Pack ve Rave Report konusu Bafehan 9 303 09-08-2018, Saat: 20:48
Son Yorum: Bafehan
  Community Edition Fast report quake16 1 139 05-08-2018, Saat: 13:02
Son Yorum: engerex
  Format atinca hata verdi arsl01 9 280 27-07-2018, Saat: 19:09
Son Yorum: arsl01



Konuyu Okuyanlar: 1 Ziyaretçi