Laden von Objekten in FastReport VCL mit http und https

Laden von Objekten in FastReport VCL mit http und https

Eine der Schlüsselaufgaben des Berichtsgenerators besteht in der Datenermittlung. Am häufigsten werden die Datenbanken zum Speichern und Abrufen von Daten verwendet. Aber was ist, wenn Remote-Speicher in der Cloud verwendet werden, um bestimmte Daten zu speichern? Wie wird ein Firmenlogo über http in einen Bericht hochgeladen, damit es immer auf dem neuesten Stand ist?

Um diese Aufgaben in FastReport VCL 2021.3 zu lösen, haben wir Unterstützung für Protokolle und die Möglichkeit, Daten über Protokolle in Objekte wie z.B.: Karten, Bilder, Text, PDF-Objekt, HTML-Objekt hinzugefügt. Eine Reihe von Objekten verfügt über eine neue DataLink-Eigenschaft, die zusätzliche Eigenschaften für die Handhabung von Links enthält. Solche Links beginnen immer mit dem Schemanamen gefolgt von einem Trennzeichen. Beispiel <Schema>:[//Pfad] . Das Schema wird in den meisten Fällen durch Protokolle wie http und https dargestellt.

Hochladen von Daten über Links in der FastReport VCL

Die FastReport VCL basiert auf einer modularen Architektur, die http- und https-Funktionalität bildet hier keine Ausnahme und ist zusammen mit den Internet Transporten in einem separaten Paket enthalten. Damit Links über http- und https- Protokolle funktionieren, muss das frxTransportHTTP-Modul an den uses-Abschnitt der Anwendung angeschlossen werden oder einer der Internet Transporte zum Anwendungsformular hinzugefügt werden.

Liste der Internet Transporte in der Komponentenpalette

 

Wichtig! Damit das https-Protokoll funktioniert, sind die folgenden Open SSL- Bibliotheken erforderlich: ssleay32.dll und libeay32.dll. Sie sind im Verzeichnis mit der Haupt-Demoanwendung zu finden.

Starten Sie den Berichtsdesigner und erstellen Sie einen neuen Bericht. Fügen Sie der Berichtsseite ein Band "Berichtskopf" und ein Objektbild hinzu. Der Bericht sollte folgendermaßen aussehen.

Beispiel für einen erstellten Bericht

Wählen Sie das Objekt «Bild» aus und wechseln Sie zum Objektinspektor. Suchen Sie im Objektinspektor die Eigenschaft DataLink. Für eine schnelle Suche können Sie den im Objektinspektor integrierten Filter verwenden, indem Sie den Namen der gesuchten Eigenschaft eingeben.

Suche nach der DataLink-Eigenschaft

Betrachten wir den Wert der untergeordneten DataLink-Eigenschaften:

Link ist ein Link mit einem Schema (Protokoll), im Format <Schema>:[//Pfad]. Die Daten werden vom angegebenen Link heruntergeladen.

LoadingType ist ein Download-Typ, der gibt an, wann die Daten hochgeladen werden. Er kann die folgenden Werte annehmen:

[] – Leer. Die Daten werden im Bearbeitungsmodus der Vorlage geladen, indem der Benutzer auf den Download-Editor klickt. Der Wert wird verwendet, wenn die Daten nur einmal abgerufen und in einer Vorlage gespeichert werden sollen.

Schaltfläche „Download-Editor“ im Berichtsdesigner

Legen Sie die DataLink.Link-Eigenschaft des «Bild»-Objektes mit einem Link zu einem Bild auf der Webseite, z.B. fest. Starten Sie Ausführung des Berichts.

Beispiel für einen erstellten Bericht

Andere Objekte wie Text, Bild, Karten, HTMLView, PDFView können auf die gleiche Weise geladen werden.

Die Links können verwendet werden, um auf Web-APIs zuzugreifen und Daten abzurufen, z. B. OSM-Karten.

Erstellen Sie einen neuen Bericht mit dem «Berichtskopf»-Band und mit einem Karten-Objekt mit einer leeren Ebene (Mehr Information über die Erstellung eines Karten-Objekts entnehmen Sie bitte unserer Dokumentation unter).

Erstellter Bericht mit der Karte

Wählen Sie nun die MapFileLayer1-Kartenebene und gehen Sie im Objektinspektor auf die DataLink.Link-Eigenschaft. Die OpenStreetMap-API kann zum Herunterladen von OSM-Karten verwendet werden. Lassen Sie uns versuchen, den ausgewählten Bereich in FastReport VCL anzuzeigen. Der API-Link wird wie folgt aussehen: https://www.openstreetmap.org/api/0.6/map?bbox=-6.7234%2C61.6283%2C-6.697%2C61.6379 , fügen Sie ihn in die Eigenschaft DataLink.Link ein. Starten Sie die Berichtserstellung.

Bericht mit OpenStreetMap API in der Vorschau

Die Daten vom Server wurden automatisch in das Kartenobjekt geladen.

Mehr als nur Hyperlinks

In FastReport VCL werden alle Schemata und Protokolle der DataLink-Eigenschaft über die Factory verarbeitet. Dies ermöglicht es Entwicklern, die Funktionalität der Anwendung zu erweitern, indem sie neue Schemata und Protokolle hinzufügen, ohne den Quellcode von FastReport VCL ändern zu müssen. Dazu registriert FastReport VCL automatisch Internet-Transporte in der Factory als neue Protokolle. So können Sie auf einen privaten Cloud-Speicher zugreifen und Daten daraus in den Bericht hochladen, ohne Autorisierungsdaten innerhalb des Berichts zu übertragen oder zu speichern. Das Schema des Zusammenwirkens der DataLink-Eigenschaft mit der Protokoll-Factory finden Sie unten.

Schema des Zusammenwirkens der DataLink-Eigenschaft mit der Protokoll-Factory

Wie sollen wir einen Internet Transport hinzufügen und Links zu einem privaten Google Drive verwenden?

Das ist in wenigen Schritten möglich:

  1. Öffnen Sie die Komponentenpalette mit Internet-Transporten.
  2. Fügen Sie TfrxGoogleDriveIOTransport zum Anwendungsformular hinzu.
  3. Benennen Sie die Komponente. Der Name wird als Schema-Protokoll im Zugangslink verwendet. In unserem Beispiel haben wir sie “GDRIVE” genannt.

FastReport VCL

  1. Stellen Sie über das Menü “Edit connection” eine Verbindung zu Google Drive her (Details finden Sie in unserem anderen Artikel).

FastReport VCL

  1. Starten Sie den Berichtsdesigner und erstellen Sie einen Bericht, indem Sie die Schritte für die Erstellung eines Bildberichtes, die am Anfang dieses Artikels beschrieben sind, ausführen.
  2. In der DataLink.Link-Eigenschaft müssen Sie den Link zur Datei in Google Dive angeben, aber anstelle des Schemas (Protokolls) geben Sie den Namen des Transports an. In unserem Fall ist es “GDRIVE“. Der Link sieht dann so aus GDRIVE://LogoF.PNG. Sie können nun die Ausführung des Berichts starten.

FastReport VCL

Wichtig! Wenn die Daten nicht hochgeladen werden, prüfen Sie, ob die Verbindung zum Cloud-Speicher korrekt hergestellt wurde und ob das Autorisierungs-Token bei der Verbindung gespeichert wurde.

Ebenso können Sie eine Verbindung zu anderen Internet-Transporten herstellen. Dies ist eines der wenigen leistungsstarken Tools, die mit der Veröffentlichung von FastReport VCL 2021.3 erschienen sind und die Sie zur Verbesserung Ihrer Projekte verwenden können.

Fast Reports
  • 800-985-8986 (Englisch, die USA)
  • +4930568373928 (Deutsch)
  • +55 19 98147-8148 (Portugiesisch)
  • info@fast-report.com
  • 901 N Pitt Str #325 Alexandria VA 22314

© 1998-2024 Fast Reports Inc.
Trustpilot