Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   GUI-Design mit VCL / FireMonkey / Common Controls (https://www.delphipraxis.net/18-gui-design-mit-vcl-firemonkey-common-controls/)
-   -   Delphi Viewer für Quickreport-Dateien (https://www.delphipraxis.net/9295-viewer-fuer-quickreport-dateien.html)

FBrust 23. Sep 2003 12:45


Viewer für Quickreport-Dateien
 
Hallo,

im Vorschaufenster von Quickreport gibt es die Möglichkeit, den aktuellen Report als QRP-Datei abzuspeichern.

Um diese Datei wieder zu öffnen, muss man das Vorschaufenster erst einmal öffnen, d. h. einen beliebigen Bericht erzeugen und dann auf den Button "Öffnen" klicken.

Weiss vielleicht jemand, ob es einen besseren Viewer für diese Dateien gibt oder muss man sich sowas selbst programmieren?

Grüsse
Frank

Mario 25. Sep 2003 07:28

Re: Viewer für Quickreport-Dateien
 
Hallo,

ich habe mir mal eine DLL geschrieben, die ich immer dann aufrufe, wenn ich eine alte QR-Version nur zur Anzeige laden will. Das kannst Du auch problemlos in eine Exe einbauen:

Delphi-Quellcode:
library QROldShow;

uses
  SysUtils,
  Classes,
  QrBonus;

procedure ShowReport(aFileName: PChar);
BEGIN
 with TQRPHandler.Create do
 begin
  try
    Filename := aFileName;
    Preview;
  Except
    On E:Exception DO ShowException(E,@ShowReport);
  end;
  Free;
 end;
END;

exports
  ShowReport;

begin

end.

hacki 9. Okt 2003 21:49

Re: Viewer für Quickreport-Dateien
 
Hallo,

ich habe den gleichen Bedarf, gespeicherte QReports im Programm anzuzeigen, in dem ich den Pfad zuweise. Ich habe den obigen Quelltext ins Programm eingefügt. Die Unit
Code:
QrBonus
kennt der Compiler nicht.

Code:
if( AskForImportFileDlg.ShowModal = mrOK ) then
 begin
  //Application.CreateForm(TQuickReportForm, QuickReportForm);
         // open file QuickReportOpenFileName
  //QuickReportForm.Preview;

 with TQRPHandler.Create do
 begin

  try
    Filename := QuickReportOpenFileName;
    Preview;
  Except
    On E:Exception DO ShowException(E,@ShowReport);
  end;
  Free;
 
 end;
Was hat es mit der Unit
Code:
QrBonus
auf sich, die mein Compiler nicht kennt. Kann man das ansonsten so machen ? Oder ??

Hacki

hacki 9. Okt 2003 21:49

Re: Viewer für Quickreport-Dateien
 
Hallo,

ich habe den gleichen Bedarf, gespeicherte QReports im Programm anzuzeigen, in dem ich den Pfad zuweise. Ich habe den obigen Quelltext ins Programm eingefügt. Die Unit
Code:
QrBonus
kennt der Compiler nicht.

Code:
if( AskForImportFileDlg.ShowModal = mrOK ) then
 begin
  //Application.CreateForm(TQuickReportForm, QuickReportForm);
         // open file QuickReportOpenFileName
  //QuickReportForm.Preview;

 with TQRPHandler.Create do
 begin

  try
    Filename := QuickReportOpenFileName;
    Preview;
  Except
    On E:Exception DO ShowException(E,@ShowReport);
  end;
  Free;
 
 end;
Was hat es mit der Unit
Code:
QrBonus
auf sich, die mein Compiler nicht kennt. Kann man das ansonsten so machen ? Oder ??

Hacki

Mario 10. Okt 2003 07:43

Re: Viewer für Quickreport-Dateien
 
Ich habe nur die Vollversion von QR. Kann sein, dass Du deshalb QRBonus nicht hast. Hast Du mal Deinem komplette Festplatte danach durchsucht oder alle pas-Dateien nach TQRPHandler?

hacki 10. Okt 2003 09:27

Re: Viewer für Quickreport-Dateien
 
Hallo Mario,

ich habe danch gesucht, leider konnte ich nichts finden. Würde es reichen, wenn ich dies Unit irgendwo her bekommen könnte ? Falls ja, woher könnte ich die eventuell bekommen ?

Danke und Grüsse
hacki

Mario 10. Okt 2003 14:39

Re: Viewer für Quickreport-Dateien
 
Hallo,

ich habe nachgeschaut, die Unit heißt in Delphi 6 QRExtras und es müsste laufen, wenn Du diese Unit verwendest.

hacki 10. Okt 2003 14:48

Re: Viewer für Quickreport-Dateien
 
Hallo Mario,

wir haben uns zeitlich überschnitten. Ich wollte gerade die Erfolgsmeldung verkünden. Du hast recht, in der QRExtra-dcu ist die Funktion enthalten und es funktioniert:

Code:
procedure TMainForm.Reports1Click(Sender: TObject);
var Dialogo: TOpenDialog;
begin

  with TQRPHandler.Create do
    try
      Dialogo:= tOpenDialog.Create(Application);
      Dialogo.Filter:='QuickReport (*.QRP)|*.QRP';
      if (Dialogo.Execute) then Filename := Dialogo.Filename;
      Dialogo.free;
      Preview;
    finally
      Free;
    end;
   
end;
Nochmals DANKE
grüsse
hacki


Alle Zeitangaben in WEZ +1. Es ist jetzt 19:30 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz