Reporting Lazarus

A universal LCL set of components with source codes for generating reports and documents on Lazarus for Linux and Windows

v. 2025.1.5

What reports can Reporting Lazarus do?

Practically any: invoices, financial reports, product catalogs with color profile support, restaurant menus, sales details, questionnaires with electronic forms, airline tickets, utility bills, and much more. If you have data that needs to be made visually understandable, FastReport is the perfect solution for you.

Features und Vorzüge Reporting Lazarus

Lots of components
A variety of elements are available for building reports in the designer: from text and images to tables and interactive maps.
Quick access to the report and data structure
From the report tree and properties tree, you can edit the report structure, parameters, and filters, as well as data sources with global styles.
Safety
Protect your templates and reports with strong data encryption. Adapt all source codes to suit your solutions.
Flexible and open architecture
If FastReport's functionality is not enough for you, you can improve it by creating and connecting your objects (export filters, databases) to your reports.
Graphics core
GDI and GTK are used to create graphic elements, render text, and manage graphics.
Source code
This set of components includes FastReport source codes. Maximum convenience for companies wishing to adapt the code to their needs.

The template designer in your application

A powerful modern editor includes a large set of tools for visual design and modification of report templates. Our flexible architecture allows you to create your editors for both existing objects and new ones. A template designer can be included in your application to provide users with their report design. Localization is supported for more than 30 popular languages of the world.

Reporting Lazarus is a band-oriented report generator. A rich set of bands allows you to build reports of any type: list, master-detail, report with grouping, multi-column, master-detail-detail, and others. If you need to create many reports that contain the same elements (header, footer, company details, logos), then you can collect common elements into a base report and inherit all other reports from it. We also support subreports.

The template designer in your application

Data processing

Your report can contain data from tables, queries, and database connections directly from the report. Reporting Lazarus supports data sorting and filtering, master-detail relationships. Everything can be configured with a few clicks. The suite also contains a script engine that supports PascalScript, C++ Script, BasicScript, and JScript.

The report may contain dialog forms to request parameters before the report is built. Dialog controls support the ability to connect to data and then filter it. Filtering can be added to absolutely any report; it does not require writing any code.

Data processing

Preview and print

The pre-prepared report can be examined in detail in the Report Viewer's preview window. Our component supports working with parameters, multi-level detailing, and interactive reports. You can define the reaction to a mouse click on an object in the preview window. For example, you can build and display another report that shows detailed information about the object the user clicked on.

Additional printing settings. The following options are available to you: cutting large report pages into small ones, printing several small pages on one large page, and printing in a given format with scaling. Do you need to print a report containing A3 pages on a regular A4 printer? Now, this is not a problem!

Preview and print

Exports to convenient formats

Filters for exporting the finished report to many formats: PDF, RTF, XLSX, XML, DOCX, TXT, CSV, Excel OLE, PowerPoint, HTML, MHT, XPS, JPEG, BMP, PNG, Open Document Format (ODT, ODS, ODP), XAML, Scalable Vector Graphics (SVG), ZPL, etc.

Reporting VCL allows you to quickly convert reports with editable fields (such as text fields, combo boxes, checkboxes, radio buttons, and graphics fields) into PDF documents without connecting additional libraries. Save your reports in popular formats: PDF 1.4-1.7, PDF/A-1a, PDF/A-1b, PDF/A-2a, PDF/A-2b, PDF/A-3a, PDF/A-3b, which are secure, accessible and reliable.

Exports to convenient formats

Ultimate VCL

This set of components is part of the Ultimate solution, with which you can create your business projects on all familiar VCL, Lazarus, and FMX platforms. Additionally, the package includes FastScript for fast processing of scripts of any complexity, as well as the visual SQL query builder FastQueryBuilder. In addition, you will have access to client-server reporting tools on VCL and Lazarus.

Lieferoptionen

Features
ab 1.299 €
ab 499 €
FastReport Engine
VCL components
FMX components
Lazarus components
OLAP features
OLAP aggregation functions
Data connections
Reporting features
Report objects
Barcodes
Charts
Printing
Export in formats
Source Code
Convertors from
Transports

Neueste Artikel

20. November 2024

Lokalisierung und Ändern von Sprachen in FastReport VCL

In der heutigen Welt ist es von großer Bedeutung, dass Sie Ihre Software an Kunden in der ganzen Welt liefern können. Aus diesem Grund unterstützt FastReport VCL etwa 40 der am häufigsten gesprochenen Sprachen der Welt für die Lokalisierung von Benutzeroberflächen. In FastReport VCL wurde ab Version 2023.2 die Lokalisierung erheblich verbessert – jetzt ist keine Neukompilierung mehr erforderlich, um Sprachen in FastReport zu ändern. Das Lokalisierungspaket ist in allen Lieferumfängen von FastReport VCL enthalten. Die Lokalisierung erfolgt on-the-fly durch die Auswahl der gewünschten Sprache im Berichtsdesigner im Menü „Ansicht - Sprache“. Darüber hinaus können Sie die Sprache der FastReport VCL- Benutzeroberfläche direkt vom Code aus steuern!     Prüfen und Installieren von Lokalisierungspaketen  Für die korrekte Funktion der Lokalisierung müssen die Lokalisierungspakete (frxLanguageXXX) und das Lokalisierungs-Controller-Paket (frLocalization) in der IDE installiert sein. Unter Windows werden die Lokalisierungspakete automatisch für die Delphi und Lazarus IDEs installiert. Wenn das Lokalisierungsmenü nicht verfügbar ist, müssen Sie überprüfen, ob diese Pakete in der IDE installiert sind. In Delphi werden Sie das folgende Fenster sehen: In Lazarus sieht das Lokalisierungsmenü wie folgt aus: Wenn einige der Übersetzungspakete nicht benötigt werden, können sie aus der Entwicklungsumgebung entfernt werden.     Umgang mit TfrLocalizationController und Spracheinstellungen Wie oben erwähnt, werden die Sprachen im FastReport-Berichtsdesigner sehr einfach eingestellt. Gehen Sie dazu im Menü auf „Ansicht–Sprachen“ und wählen Sie die gewünschte Sprache aus.  Um die FastReport-Lokalisierung mit der Software zu verbinden, müssen Sie die TfrLocalisationController Komponente verwenden. Es reicht aus, sie in das Hauptformular der Software einzufügen. Klicken Sie dann in Delphi mit der rechten Maustaste auf die Komponente und wählen Sie im Dropdown-Menü die Sprache aus, die von FastReport in Ihrer Software unterstützt werden soll:   Danach muss für die TfrLocalizationController-Komponente die Sprache ausgewählt werden, die standardmäßig geladen wird, wenn die Software gestartet wird. Sie können zu uses des Hauptformulars auch ein Modul hinzufügen, das die erforderliche Lokalisierung enthält.  Es sollte beachtet werden, dass FastReport VCL standardmäßig Englisch verwendet, so dass Sie nichts tun müssen, wenn Sie nur diese Sprache benötigen. Um die Lokalisierung in Lazarus zu aktivieren, müssen Sie dem Projekt ein Sprachpaket und dann ein Modul für diese Sprache hinzufügen.     Ändern der Sprache vom Code aus  In manchen Situationen kann es notwendig sein, die Lokalisierung der FastReport VCL vom Programmcode aus zu steuern. Dies wird wie folgt gemacht:  frLocalizationController.Language := ‘German’; Dieser Code stellt die deutsche Sprache ein. Vergessen Sie nicht, dass Ihre Software mit dem Sprachpaket kompiliert sein muss, zu dem Sie wechseln wollen. Mit dem unten stehenden Code können Sie herausfinden, mit welchen Sprachpaketen Ihre Software kompiliert ist. Verbinden Sie dazu das Modul Types, fügen Sie die Komponenten TButton und TMemo in das Formular ein und schreiben Sie in dem Button.OnClick Handler folgendes:  procedure TForm1.Button1Click(Sender: TObject);var D:TStringDynArray; I: Integer;begin  Memo1.Lines.Add('Default Lang: '+TfrAvailableLanguagesController.GetDefaultLanguageName);  Memo1.Lines.Add('Current Lng: '+frLocalizationController1.Language);  Memo1.Lines.Add('Suppotred languages:');  D:=TfrAvailableLanguagesController.GetLanguages;  for I:=Low(D) to High(D) do begin    Memo1.Lines.Add(D[I]);  End;end;    Bitte beachten Sie, dass Englisch nicht in der Liste der unterstützten Sprachen enthalten ist, aber standardmäßig immer verfügbar ist.     Bearbeitung der Lokalisierung über Localizer Der Lokalisierungseditor kann wie folgt aufgerufen werden: im Delphi IDE Menü “Tools… - Localization Editor…” im Lazarus Menü “Service - Localization Editor…” Mit dem folgenden Code können Sie den Lokalisierungseditor aus Ihrer Software heraus aufrufen. Diese Methode ist jedoch nicht in allen Versionen verfügbar.   frLocalizationController1.ShowLocalizationEditor; Zuweisung von Steuerelementen im Lokalisierungseditor: eine *.xml-Datei mit Übersetzung öffnen die *.xml-Datei mit der Übersetzung speichern die Übersetzungsdatei unter dem angegebenen Namen speichern die letzte Aktion rückgängig machen die abgebrochene Aktion durchführen die Zielsprache einstellen Einträge nach Masken filtern den Filter reinigen nur übersetzte Einträge anzeigen nur unübersetzte Einträge anzeigen Mit dem „Lokalisierungseditor“ können Sie FastReport VCL-Ressourcen Zeile für Zeile in verschiedene Sprachen übersetzen. In der Mitte des Editors befindet sich ein Raster mit übersetzbaren Werten.  Die erste Spalte ist der Bezeichner des zu übersetzenden Elements. Es handelt sich immer um eine Zeichenkette, auch wenn Zahlen ebenfalls in separaten Zeichenketten stehen, da ihre Zeichenkettendarstellung verwendet wird.  Die zweite Spalte enthält die englische Originalbedeutung des Elements.  Die dritte Spalte enthält die übersetzte Bedeutung des Elements in der anderen Sprache. Kommen wir nun zur Funktionsweise des Lokalisierungseditors. Beim Laden prüft der Editor, welche Lokalisierungen für die Software, in die er eingebettet ist, verfügbar sind. Dann füllt der Editor die Liste der verfügbaren Sprachen aus (Kombinationsfeld zur Eingabe der Zielsprache). Die aktuell installierte Lokalisierung ist für die Bearbeitung aktiv. Sie können eine Übersetzung für jede der verfügbaren Sprachen auswählen, bearbeiten und als eine XML-Datei speichern. Wenn Sie bereits über eine XML-Datei mit Übersetzungen verfügen, können Sie diese zur Bearbeitung herunterladen. Im Lokalisierungseditor können Sie zwischen verschiedenen Anzeigemodi wechseln. Beispielsweise kann man nur die Elemente anzeigen, deren Übersetzung mit dem englischen Original übereinstimmt. Oder umgekehrt werden nur die Elemente angezeigt, deren Übersetzung von der englischen Version abweicht. Beachten Sie jedoch, dass nicht alle Elemente übersetzt werden müssen.  Sie können einen Filter auf Einträge im Raster anwenden. Das Rasterelement wird nur angezeigt, wenn der Filterwert in einer beliebigen Spalte enthalten ist. Sie können das Raster auch in alphabetischer Reihenfolge vorwärts und rückwärts sortieren, indem Sie auf eine beliebige Spaltenüberschrift klicken. Wenn Sie die Übersetzungsdatei geändert haben, können Sie diese anstelle der Standarddatei in die Software einbinden. Dazu müssen Sie das Modul frResources in der uses-Anweisung mit folgendem Code verbinden:   frStringResources.LoadFromFile('mylanguage.xml'); Wir empfehlen, Ihre Software nach der Bearbeitung der Dateien neu zu starten, um sicherzustellen, dass alle übersetzten Ressourcen korrekt angezeigt werden. Beachten Sie auch, dass die geladene Übersetzung sofort aktiv wird, aber nur bis zum ersten Sprachwechsel funktioniert. Wenn Sie dann wieder zu dieser Sprache wechseln, wird die Lokalisierung aus den mit der Software verbundenen Ressourcen übernommen.  Außerdem können Sie eine Ressource mit einer Übersetzungsdatei selbst kompilieren. Legen Sie diese in das Verzeichnis mit dem entsprechenden Sprachmodul und verwenden Sie sie in der Software. Damit diese Übersetzung in der IDE angezeigt wird, führen Sie das Installationsprogramm aus und wählen Sie den Modus Neu kompilieren (Recompile) oder kompilieren Sie einfach das Paket der benötigten Sprache neu. In Lazarus müssen Sie danach die IDE neu erstellen; in Delphi müssen Sie die Umgebung neu starten. Wenn Sie sicherstellen möchten, dass Ihre Übersetzung nicht nach jedem Update verloren geht, können Sie die Lokalisierungsdatei uns an support@fast-report.com zukommen lassen. Wir prüfen die empfangene Datei und fügen sie dem Installationsprogramm hinzu.
Weiterlesen
28. Oktober 2024

WSL 2 Anpassung an FastReport und FastCube

Softwareentwickler haben sich schon lange Gedanken darüber gemacht, wie Linux-Anwendungen direkt in Windows ausgeführt werden können, ohne dass eine separate virtuelle Maschine aufsetzen zu müssen. Die WSL-Technologie könnte die Antwort auf diese Frage liefern. Die Geschichte des Windows Subsystems für Linux (WSL) begann im Jahr 2016. Damals wurde der Start ausführbarer Linux-Binärdateien über Systemaufrufe im Windows-Kernel implementiert. In der ersten Version gab es auch eine Emulation des Linux-Kernels durch eine Translationsebene, die Linux-Systemaufrufe in Windows-Systemaufrufe übersetzte. Die zweite Version von WSL wurde 2019 veröffentlicht. Sie bietet eine nahezu vollständige Kompatibilität mit Systemaufrufen, einen vollständigen Linux-Kernel sowie die Unterstützung für GPU- und Linux-Anwendungen mit grafischer Benutzeroberfläche. In diesem Artikel werden wir versuchen, gemeinsam herauszufinden, wie man WSL 2 konfiguriert, um mit FastReport und FastCube Komponenten in Lazarus für Linux zu arbeiten.     Installation und Konfiguration von Ubuntu 24.04 in WSL 2 Öffnen Sie die Windows-Eingabeaufforderung als Administrator. Um eine Liste aller verfügbaren Linux-Distributionen anzuzeigen, müssen Sie in der Windows-Eingabeaufforderung einen Befehl eingeben und die Eingabetaste drücken: wsl --list --online oder wsl -l -o Um Ubuntu 24.04 zu installieren, führen Sie den folgenden Befehl aus: wsl --install -d Ubuntu-24.04 Nach der Installation der Distribution werden Sie aufgefordert, ein Benutzerkonto und ein Passwort zu erstellen. Um Ubuntu 24.04 zu installieren, müssen Sie nur ein paar Befehle ausführen. Das Ubuntu 24.04-Terminal ist nach der Installation der Distribution über das Windows-Startmenü aufrufbar. Sie können auch den Linux-Kernel starten und das Ubuntu 24.04-Terminal mit dem Befehl aus der Windows-Eingabeaufforderung aufrufen: wsl -d Ubuntu-24.04 Nach der Installation von Ubuntu 24.04 müssen Sie die Pakete aktualisieren. Um die installierten Pakete zu aktualisieren, führen Sie die folgenden Befehle im Ubuntu 24.04 Terminal aus: $ sudo apt update && sudo apt upgrade && sudo apt dist-upgrade Geben Sie das Benutzerpasswort ein und drücken Sie die Eingabetaste. Warten Sie, bis Sie aufgefordert werden, der Aktualisierung der Pakete zuzustimmen. Geben Sie Y ein und bestätigen Sie mit der Eingabetaste. Um Nautilus zu installieren, führen Sie diesen Befehl in einem Terminal aus und geben Sie dann den folgenden Befehl ein, um Nautilus direkt zu starten. $ sudo apt install nautilus -y $ nautilus Nach der Installation ist der Nautilus-Dateimanager über das Windows-Startmenü aufrufbar.      Installation und Konfiguration von Linux 11 Starterkit in WSL 2 Das Subsystem WSL 2 ermöglicht es Ihnen, jede Linux-Distribution zu verwenden, indem Sie sie aus einer tar-Datei importieren. Öffnen Sie die Windows-Eingabeaufforderung als Administrator. Führen Sie den Befehl aus, um das Rootfs-Image von Linux in das Stammverzeichnis des Systemlaufwerks C\: herunterzuladen: curl -o C:\alt-p11-rootfs-systemd-x86_64.tar.xz https://ftp.altlinux.org/pub/distributions/Linux/p11/images/cloud/x86_64/alt-p11-rootfs-systemd-x86_64.tar.xz Um die Distribution in die WSL 2 zu importieren, müssen Sie den Befehl in der Windows-Eingabeaufforderung ausführen: wsl --import Linux-11 C:\Linux-11 C:\alt-p11-rootfs-systemd-x86_64.tar.xz Nach dem Importieren befindet sich die Linux-Festplatten-Image-Datei unter C:\Linux-11\ext4.vhdx. Führen Sie in der Windows- Eingabeaufforderung den Befehl aus, um eine Liste aller registrierten Distributionen anzuzeigen. Anschließend starten Sie die gerade importierte Linux-11-Distribution wsl -l -v wsl -d Linux-11 Nach dem Start von Linux wird ein Terminal geöffnet. In der WSL-Konfigurationsdatei für diese Distribution müssen Sie die Verwendung von systemd erlauben: # echo -e "[boot]\nsystemd=true\n" > /etc/wsl.conf Damit systemd funktioniert, müssen Sie die Distribution stoppen und neu starten. Verwenden Sie dazu die folgenden Befehle: # exit wsl -t Linux-11 wsl -d Linux-11 Um die Pakete zu aktualisieren, müssen Sie den folgenden Befehl ausführen und warten, bis Sie aufgefordert werden, der Aktualisierung der Pakete zuzustimmen. Geben Sie Y ein und bestätigen Sie mit der Eingabetaste. # apt-get update && apt-get dist-upgrade Um Schriftarten korrekt anzuzeigen, müssen Sie das Paket installieren: # apt-get install fonts-ttf-ms Um Lazarus zu installieren und auszuführen, müssen Sie das Dienstprogramm der make Eingabeaufforderung herunterladen und anschließend den Free Pascal Compiler und die Lazarus IDE installieren: # apt-get install make # apt-get install fpc && apt-get install fpc-src # apt-get install lazarus Die Installation ist abgeschlossen. Um Lazarus zu starten, führen Sie den Befehl aus: # startlazarus     Installation von FastReport für die Anwendungsentwicklung unter Linux Bevor Sie mit der Installation der FastReport- und FastCube-Komponenten beginnen, müssen Sie die Installationspakete herunterladen. Führen Sie im Linux-11-Terminal den Befehl zur Installation von wget aus und bestätigen Sie dann Ihre Aktionen, indem Sie Y eingeben und die Eingabetaste drücken. # apt-get install wget Laden Sie Testversionen der FastReport- und FastCube-Pakete herunter: # wget https://www.fast-report.com/public_download/fr.vcl/fast_report-trial.rpm # wget https://www.fast-report.com/public_download/fr.vcl/fast_cube-trial.rpm Um FastReport zu installieren, führen Sie den Befehl im Terminal aus: # apt-get install ./fast_report*.rpm Bevor Sie FastReport-Pakete installieren, müssen Sie die Pakete, die mit Lazarus geliefert werden, kompilieren und zusätzliche Bibliotheken installieren: # lazbuild --build-ide= --add-package /usr/lib64/lazarus/components/tachart/print/tachartprint.lpk # lazbuild --build-ide= --add-package /usr/lib64/lazarus/components/tachart/tachartlazaruspkg.lpk # apt-get install sqlite3 libsqlite3-devel Anschließend führen Sie nacheinander die folgenden Befehle aus, um FastReport-Pakete zu kompilieren: # lazbuild --build-ide= --add-package /usr/share/FastReport*/Lpks/fs_lazarus.lpk # lazbuild --build-ide= --add-package /usr/share/FastReport*/Lpks/fr_lazarus.lpk # lazbuild --build-ide= --add-package /usr/share/FastReport*/Lpks/frxe_lazarus.lpk # lazbuild --build-ide= --add-package /usr/share/FastReport*/Lpks/frCS_lazarus.lpk # lazbuild --build-ide= --add-package /usr/share/FastReport*/Lpks/frxchartlazarus.lpk # lazbuild --build-ide= --add-package /usr/share/FastReport*/Lpks/frxlazdbf.lpk # lazbuild --build-ide= --add-package /usr/share/FastReport*/Lpks/frxSmartMemo_Laz.lpk # lazbuild --build-ide= --add-package /usr/share/FastReport*/Lpks/fqb*.lpk # lazbuild --build-ide= --add-package /usr/share/FastReport*/Lpks/frxlazsqlite.lpk # lazbuild --build-ide= --add-package /usr/share/FastReport*/Lpks/frxPDFlazarus.lpk     Installation von FastCube für die Anwendungsentwicklung unter ALT Linux Gehen wir nun zur FastCube-Installation über. Führen Sie den folgenden Befehl im Terminal aus: # apt-get install ./fast_cube*.rpm Anschließend führen Sie nacheinander die folgenden Befehle aus, um FastCube-Pakete zu kompilieren:  # lazbuild --build-ide= --add-package /usr/share/FastCube*/Lpks/fcxScript.lpk # lazbuild --build-ide= --add-package /usr/share/FastCube*/Lpks/fcxLazarus.lpk # lazbuild --build-ide= --add-package /usr/share/FastCube*/Lpks/fcxCharting.lpk # lazbuild --build-ide= --add-package /usr/share/FastCube*/Lpks/fcxprint.lpk # lazbuild --build-ide= --add-package /usr/share/FastCube*/Lpks/fcxprintTee.lpk # lazbuild --build-ide= --add-package /usr/share/FastCube*/Lpks/fcxexport.lpk     Kompilieren und Ausführen der FastReport Demo in Lazarus Damit ist die Installation von FastReport und FastCube abgeschlossen. Schließlich können Sie versuchen, die FastReport-Demo zu kompilieren und auszuführen. Um Lazarus zu starten, führen Sie den Befehl im Terminal aus: # startlazarus --skip-last-project Öffnen Sie im Hauptmenü von Lazarus den Menüpunkt „Projekt“ -> „Projekt öffnen…“. Wählen Sie im Dialogfenster das Projekt aus: /usr/share/FastReport - Trial/Demos/FPC/FastReport/FastReportDemo.lpi Nachdem Sie das Projekt geöffnet haben, drücken Sie F9 um es zu kompilieren und auszuführen. Damit ist die detaillierte Konfiguration von WSL 2 für die Arbeit mit den FastReport- und FastCube-Komponenten in Lazarus für Linux abgeschlossen. Bei Fragen wenden Sie sich bitte an unseren technischen Support unter support@fast-report.com. Viel Spaß beim Benutzen!!
Weiterlesen
11. Dezember 2023

Neuer S3 (Amazon) Transport in FastReport VCL

In diesem Artikel werden wir uns mit dem neuen S3-Transport befassen. Funktionell unterscheidet sich S3 stark von dem, womit die meisten Menschen gewohnt sind zu arbeiten. Daher werden wir zu Beginn dieses Artikels seine wichtigsten Merkmale im Detail betrachten. Hinweis! Für die Nutzung des HTTPS-Protokolls werden die folgenden OpenSSL-Bibliotheken benötigt: libssl-3.dll und libcrypto-3.dll. Diese Dateien befinden sich im Verzeichnis der Haupt-Demo-Anwendung. Sie müssen die Bibliotheken entweder in den Anwendungsordner oder in das Systemverzeichnis kopieren. Was ist das? S3 ist kein Dateispeicher wie Dropbox, Google Drive, Mega und andere. S3 ist ein Objektspeicher. Und zuallererst müssen wir den Unterschied zwischen diesen beiden Konzepten verstehen. Ein Dateispeicher verfügt über eine übliche hierarchische Struktur (Baumstruktur). Das sind bekannte Verzeichnisse (Ordner), in denen andere Verzeichnisse und Dateien gespeichert sind. Objektspeicher sind relativ neu (der älteste ist jetzt etwa 20 Jahre alt). Sie unterscheiden sich geringfügig in ihren Implementierungen, so dass die meisten Funktionen gleich sind, aber es gibt einige, die nur auf S3 anwendbar sind. Alle Objektspeicher sind "flach", d. h. sie haben keine hierarchische Struktur, wenn auch sie eine solche "simulieren" können. Die erste Entität, auf die Sie stoßen werden, wenn Sie mit S3 arbeiten, ist ein Bucket. Die nächstliegende Analogie ist die "Map" in vielen Programmiersprachen, bei der ein Schlüssel verwendet wird, um Daten abzufragen. Ein Bucket kann nur Dateien speichern, aber keine anderen Buckets. Zur Veranschaulichung betrachten wir einen Bucket einmal genauer. Bucket Schlüssel Daten video.mp4 Daten text_file.txt Daten code.pas Daten Nach dem Schlüssel können Sie die dazugehörigen Metadaten abrufen und diese nach Bedarf selbst interpretieren. Viel interessanter ist die Simulation der hierarchischen Ordnerstruktur in einem solchen System. Bucket Schlüssel Daten video.mp4 Daten folder1\text_file.txt Daten folder1\video.mp4 Daten folder1\folder1_1\video.mp4 Daten folder2\text_file.txt Daten folder1\ Leer folder1\folder1_1\ Leer folder2\ Leer Bei einigen „Ordnern“ handelt es sich um dieselben Objekte wie bei Dateien. Sie sind nur aus Gründen der Übersichtlichkeit anders eingefärbt. Ein weiteres Unterscheidungsmerkmal ist ein Schrägstrich (\) am Ende des Schlüssels. Oft haben solche "Ordner" keine Daten (obwohl sie Daten haben können). Um zu sehen, was sich in dem "Ordner" folder1 befindet, müssen wir nach dem Anfang des Schlüssels "folder1\" filtern. Viel interessanter ist jedoch das Löschen von "Ordnern". Wenn wir versuchen, den "Ordner" folder1 in der Web-GUI zu löschen, werden einige Dienste dies tun, aber die übrigen werden uns die Fehlermeldung "Ein leerer Ordner kann nicht gelöscht werden" geben. Wenn wir einen Datensatz mit dem API-Schlüssel "folder1\" löschen, wird dieser "Ordner" in den meisten GUIs nicht mehr angezeigt. Auch können wir ihn nicht mehr darauf zugreifen, aber tatsächlich werden die Dateien in diesem „Ordner“ nicht verschwinden. Sobald wir anschließend den „Ordner“ folder1 erstellen, enthält dieser bereits die von uns vergessenen Dateien. Der Schlüssel selbst unterliegt nur sehr wenigen Einschränkungen und kann beispielsweise so lauten: „////“. Und das werden „Ordner“ mit leeren Namen sein.   Warum sind Objektspeicher besser als Dateispeicher? 1. Objektspeicher sind wesentlich kostengünstiger. Jedes Objekt ist nicht an ein bestimmtes Gerät gebunden, so dass der Objektspeicher problemlos auf die benötigte Kapazität erweitert werden kann. Sie können ganz einfach ein Petabyte Objektspeicher (ca. 1.000.000 Gigabyte) mieten. 2. Objektspeicher ermöglichen eine sehr schnelle Suche. Aber natürlich sind Objektspeicher am besten für unstrukturierte (nicht baumartige) Daten geeignet. Neues Authentifizierungssystem Alle bisherigen Transporte funktionierten mit dem OAuth-2-Protokoll. S3 könnte theoretisch auch mit OAuth 2 arbeiten, aber in seine API ist sein eigenes Authentifizierungssystem eingebaut. OAuth 2 erhielt mit der Client-ID und der Secret-ID ein Token, das für eine bestimmte Zeit gültig war und alle Anfragen signieren konnte. Die interne S3-Authentifizierung mit derselben Client-ID und Secret-ID erstellt für jeden Vorgang ein neues einmaliges Token unter Verwendung von SHA256HMAC auf der Grundlage von etwa 30 Variablen (einschließlich Zeitpunkt der Token-Generierung, erforderlicher Vorgang usw.). Der Server prüft nur, ob das Token korrekt generiert wurde, und wenn das vom Server akzeptierte Token mit dem vom Server generierten Token übereinstimmt, wird der Vorgang abgeschlossen. Danach kann das Token nicht mehr verwendet werden. AWS S3 Der Transport heißt zwar "TfrxS3IOTransport" und bezieht sich eindeutig auf AWS S3 (Amazon Simple Storage Service), aber dessen API wurde von vielen Objektspeichern kopiert (die bedingt als S3-ähnlich bezeichnet werden können), so dass dieser Transport es Ihnen ermöglicht, nicht nur mit dem Amazon-Service zu arbeiten. Hinzufügen von Transporten zur Anwendung und deren Konfiguration  Ganz am Anfang müssen Sie die entsprechende Komponente aus der Registerkarte „FastReport VCL Internet Transports“ hinzufügen.   Sie können das Kontextmenü der Komponente verwenden. Dadurch wird die Verbindung direkt aus der Entwicklungsumgebung heraus hergestellt. Klicken Sie auf das Untermenü “Edit connection”.   S3-Verbindungsdialog  Wenn Sie eine Datei mit Hilfe eines Transports öffnen oder darin speichern müssen, steht Ihnen der folgende Standard-Autorisierungsdialog zur Verfügung (falls Sie sich zuvor nicht angemeldet waren).   Schauen wir uns die einzelnen Felder in diesem Formular an:   Server URL ist eine URL-Adresse, die in der API verwendet wird. Um die URL herauszufinden, müssen Sie die Dokumentation lesen. Bei AWS S3 sollte sie standardmäßig "s3.amazonaws.com" lauten.   Client ID ist ein öffentlicher Schlüssel zur Autorisierung (oft wird als Access Key bezeichnet).   Secret ID ist ein geheimer Schlüssel zur Autorisierung (oft wird als Secret Access Key bezeichnet).   Region - Sie müssen die Dokumentation lesen, um mögliche Regionswerte zu wissen. Manchmal gibt es ungewöhnliche Anforderungen, z. B. ist es in AWS S3 möglich, eine Liste von Bucket-Listen nur mit der Region "us-east-1" anzufordern.   Bucket - um nicht jedes Mal einen Bucket manuell auswählen zu müssen, können Sie ihn in diesem Feld angeben, manchmal sind Buckets durch eine bestimmte Region gekennzeichnet.   Bucket style - ein Bucket kann auf zwei Arten angegeben werden: path style (aws.s3.com/bucket) und virtual hosted style (bucket.aws.s3.com). "Path style" ist veraltet, weil es mehrere Zugriffe auf verschiedene Buckets über einen bestimmten DNS geben kann, was eine zusätzliche Belastung verursachen kann. Einige Dienste unterstützen beide Arten, einige nur eine, und einige sind für verschiedene Situationen anpassbar. Unter folgendem Link können Sie mehr darüber lesen. Nach erfolgreicher Verbindung sehen Sie den FastReport-VCL Standard-Dateibrowser (im Screenshot unten ist die Liste der Dateien im Bucket dargestellt). Damit ist der Verbindungsaufbau erfolgreich abgeschlossen. Jetzt wissen Sie, wie in FastReport VCL die S3-Verbindung hergestellt wird. Es bleibt nur noch, die letzten Feinheiten unserer Implementierung zu erwähnen. Unser Team hat die Erstellung und Löschung von Buckets nicht implementiert. Bisher unterscheiden sich Buckets optisch nicht von Ordnern (in unserer ersten GUI-Version), da dies zu gefährlich wäre. Auch das Löschen eines Ordners mitsamt seinem Inhalt ist noch nicht implementiert. Und es gibt auch kein teilweises Herunterladen der Datei (was bei einer Dateigröße von 100 Megabyte oder mehr empfohlen wird). Dieser Transport hat eine Menge Details und Feinheiten bei der Konfiguration, aber in einigen Fällen wird er ein optimaler Ersatz für Dateispeicher sein.
Weiterlesen

Kostenlos testen

Any other questions?

Contact the manager
Fast Reports
  • 800-985-8986 (Englisch, USA)
  • +31 97 01025-8466 (Englisch, EU)
  • +49 30 56837-3928 (Deutsch, DE)
  • +55 19 98147-8148 (Portugiesisch, BR)
  • info@fast-report.com
  • 66 Canal Center Plaza, Ste 505, Alexandria, VA 22314

© 1998-2025 Fast Reports Inc.