So verwenden Sie den Active Query Builder im FastReport.Net Berichtsdesigner

FastReport.Net bietet zahlreiche Möglichkeiten, Ihren Berichtsdesigner an Ihre Anforderungen anzupassen.

In diesem Artikel wird beschrieben, wie Sie den integrierten SQL-Abfrage-Editor durch den Active Query Builder ersetzen können.

Als erstes laden Sie die neueste Version des Active Query Builder for .Net von der Website des Entwicklers herunter ( http://www.activequerybuilder.com/ ). Dies ist die Version 3.4.9.1086 im Moment der Veröffentlichung dieses Artikels. Wir installieren die Bibliothek mit Hilfe des heruntergeladenen Installers.

Erstellen Sie nun die WindowsForms-Anwendung zur Demonstration. Fügen Sie dem Projekt Links zu den Bibliotheken des Active Query Builders hinzu. Die folgenden Bibliotheken werden benötigt, die Sie im Ordner mit dem installierten Programm finden

(C:\Program Files\ActiveDBSoft\Active Query Builder 3.NET\assemblies):

Außerdem brauchen wir noch folgende Bibliotheken:

Und nun fügen wir dem Projekt eine Plugin-Datei hinzu, um mit ActiveQueryBuilder zu arbeiten. Es befindet sich hier: J:\Programmdateien (x86)\FastReports\FastReport.Net\Extras\Misc\ActiveQueryBuilder\ActiveQBForm.cs.

Klicken Sie dazu mit der rechten Maustaste auf den Projektnamen im Solution Explorer und wählen Sie Add -> Existing Item.....

Da wir eine Demo-Anwendung haben, wird das Formular nur eine Schaltfläche enthalten:

Erstellen wir nun den Eventhandler, indem wir auf die Schaltfläche doppelklicken:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
using FastReport.Forms;
using FastReport.Design;
using FastReport;

private void button1_Click(object sender, EventArgs e)
 {
 Report report = new Report();
 FastReport.Utils.Config.DesignerSettings.CustomQueryBuilder += new FastReport.Design.CustomQueryBuilderEventHandler(DesignerSettings_CustomQueryBuilder);
 report.Design();
 }
 
 private void DesignerSettings_CustomQueryBuilder(object sender, CustomQueryBuilderEventArgs e)
 {
 using (ActiveQBForm form = new ActiveQBForm())
 {
 form.Connection = e.Connection;
 form.SQL = e.SQL;
 if (form.ShowDialog() == DialogResult.OK)
 e.SQL = form.SQL;
 }
 }

Durch Anklicken der Schaltfläche wird ein Berichtsobjekt erstellt, dann wird der Handler des Berichtsgenerators neu definiert. Und rufen Sie den Berichtsdesigner an.

Im Folgenden haben wir einen benutzerdefinierten Handler für den Aufruf des Berichtserstellers gebildet. Wie Sie sehen können, rufen wir einfach das zuvor hinzugefügte ActiveQBForm-Objekt in das Projekt auf.

Starten Sie die Anwendung. Klicken Sie auf die einzelne Schaltfläche und wir sehen den Berichtsdesigner. Wenn Sie einen bestehenden Bericht bearbeiten möchten, dann müssen Sie nach der Erstellung des Berichtsobjekts den Bericht in ihn laden: report.Load ("C:/Programme (x86)/FastReports/FastReport.Net/Demos/Reports/Image.frx");

1
report.Load("С:/Program Files (x86)/FastReports/FastReport.Net/Demos/Reports/Image.frx");

Fügen wir nun die Datenquelle über das Symbol dem Bericht hinzu:

 

Es ist eine Verbindung zu einem SQL-Subsprachen-Supporter herzustellen, um den SQL Query Builder in Zukunft nutzen zu können. Zum Beispiel verbinden wir uns mit der Access-Datenbank.

Im nächsten Schritt des Assistenten zur Erstellung einer neuen Datenquelle wird uns angeboten, die notwendigen Tabellen aus der Datenbank auszuwählen.

 

Aber in der unteren rechten Ecke befindet sich die Schaltfläche " Add SQL query... ", die den Assistenten zum Erstellen einer Query startet. Im ersten Schritt der Erstellung einer Abfrage müssen Sie einen Namen für die neue Ansicht angeben, der sich aus der Anwendung der von uns erstellten Abfrage ergibt.

 

Und im zweiten Schritt kann man den SQL-Abfragetext manuell eingeben.

 

In der unteren rechten Ecke sehen wir jedoch die Schaltfläche "Query Builder...", die den Berichterstellungsprogramm startet. Klicken Sie darauf:

Und wir sehen den Ersteller von Berichten, der auf der Basis von ActiveQueryBuilder erstellt wurde. Um eine Tabelle in den Arbeitsbereich aufzunehmen, müssen Sie sie aus dem Datenbereich auf der rechten Seite ziehen. Oder klicken Sie mit der rechten Maustaste auf den Arbeitsbereich des Builders und wählen Sie aus dem Kontextmenü " Add ":

 

Und durch Gedrückthalten von Ctrl wählen wir die benötigten Tabellen aus der Datenbank aus:

 

Klicken Sie anschließend auf die Schaltfläche " Add Selected Objects " und sehen Sie die verknüpften Tabellen im Ersteller:

Am unteren Rand des Fensters sehen wir den automatisch generierten SQL-Abfragetext. Die Result-Ergebnis enthält das Ergebnis der Abfrageausführung. Angenommen, wir sind mit der erstellten Abfrage zufrieden. Um es zu akzeptieren, klicken Sie auf das grüne Symbol oben im Fenster. Um es abzubrechen, klicken Sie auf das rote Symbol.

Der Text der SQL-Abfrage, die wir im Ersteller angelegt haben, wird an den Abfrageassistenten übergeben:

 

Beenden Sie die Abfrage, indem Sie auf Weiter und am Ende von Fertigstellen klicken. Genauso wie wir die Erstellung der Datenquelle abschließen.

Nun hat der Berichtsdesigner eine Datenquelle:

 

Daher haben wir das Plugin verwendet, um den Standard SQL Query Builder zu ersetzen.

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