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
  FastReport TeeChart Hata elixir84 2 73 14-06-2018, Saat: 11:55
Son Yorum: elixir84
  Quick Report ile boş satır ekleme boreas 1 129 10-04-2018, Saat: 18:53
Son Yorum: boreas
  Uzak masaüstünde çalışan program, bağlantı kesildiğinde hata veriyor canbir 0 178 16-03-2018, Saat: 18:50
Son Yorum: canbir
  [ Çözüldü] Runtime da çıkan hata sebepleri Lord_Ares 8 346 16-03-2018, Saat: 17:11
Son Yorum: Lord_Ares
  Bu hata sizdede varmı ? Lord_Ares 11 525 06-03-2018, Saat: 21:54
Son Yorum: engerex



Konuyu Okuyanlar: 1 Ziyaretçi