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

2018-05-28

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):

  • ActiveQueryBuilder.AdvantageMetadataProvider;
  • ActiveQueryBuilder.Core;
  • ActiveQueryBuilder.DB2MetadataProvider;
  • ActiveQueryBuilder.FirebirdMetadataProvider;
  • ActiveQueryBuilder.MSSQLCEMetadataProvider;
  • ActiveQueryBuilder.InformixMetadataProvider;
  • ActiveQueryBuilder.MSSQLMetadataProvider;
  • ActiveQueryBuilder.MySQLMetadataProvider;
  • ActiveQueryBuilder.ODBCMetadataProvider;
  • ActiveQueryBuilder.OLEDBMetadataProvider;
  • ActiveQueryBuilder.OracleMetadataProvider;
  • ActiveQueryBuilder.OracleNativeMetadataProvider;
  • ActiveQueryBuilder.PostgreSQLMetadataProvider;
  • ActiveQueryBuilder.SQLiteMetadataProvider;
  • ActiveQueryBuilder.SybaseMetadataProvider;
  • ActiveQueryBuilder.UniversalMetadataProvider;
  • ActiveQueryBuilder.View;
  • ActiveQueryBuilder.View.WinForms;
  • ActiveQueryBuilder.View.WPF;
  • ActiveQueryBuilder.VistaDB5MetadataProvider.

Außerdem brauchen wir noch folgende Bibliotheken:

  • FastReport;
  • FastReport.Bars;
  • FastReport.Editor.

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.

26. November 2024

Installing FastReport on .NET 8.0 and Creating a Simple Report

The purpose of this article is to explain step by step how to install FastReport on .NET 8.0 and how to create a simple report. Taking the reporting process from the beginning, it will show how to connect, design and view reports.
20. November 2024

Lokalisierung und Ändern von Sprachen in FastReport VCL

FastReport VCL unterstützt 40 Sprachen für die Schnittstellenlokalisierung und ermöglicht es Ihnen, die Sprache im laufenden Betrieb über Menüs oder Code ohne Neukompilierung zu ändern.
1. November 2024

Neue Funktionen des FastReport VCL Berichtseditors

Wir betrachten die neuen Funktionen des Berichtseditors: Hilfslinien, Hervorhebung von sich schneidenden Objekten, aktualisierte Berichts- und Datenbäume.
Fast Reports
  • 800-985-8986 (Englisch, die USA)
  • +4930568373928 (Deutsch)
  • +55 19 98147-8148 (Portugiesisch)
  • info@fast-report.com
  • 66 Canal Center Plaza, Ste 505, Alexandria, VA 22314

© 1998-2024 Fast Reports Inc.