Mit der Veröffentlichung von FastReport .NET 2022.2 wurde ein Plugin hinzugefügt, um .XLSX-Dateien als Datenquelle zu verbinden.
Um es zu verwenden, muss ein Projekt im Voraus erstellt werden:
С:\Program Files (x86)\FastReports\FastReport.Net\Extras\Core\FastReport.Data\FastReport.Data.Excel
Nach dem Erstellen des Projekts müssen Sie das Plugin zur Anwendung auf eine der beiden folgenden Weisen hinzufügen.
1. Verbinden des Plugins über den Designer:
2. Fügen Sie das Plugin beim Starten des Projekts als Abhängigkeit hinzu und registrieren Sie es im Code mit dem folgenden Befehl:
FastReport.Utils.RegisteredObjects.AddConnection(typeof(ExcelDataConnection));
Um eine Verbindung zu Excel herzustellen, klicken Sie im Designer auf die Registerkarte "Daten" und wählen Sie "Datenquelle hinzufügen". In dem nun erscheinenden Fenster klicken Sie auf die Schaltfläche "Neue Verbindung". Um eine Verbindung herzustellen, ist der Pfad zur .XLSX-Datei erforderlich. Wenn beim Zugriff auf die Datei keine Probleme auftreten, wird nach dem Klicken auf die Schaltfläche "Weiter" eine Liste mit Tabellen angezeigt. Wenn Sie eine Tabelle verbinden, müssen Sie das Kästchen links neben dem Tabellennamen ankreuzen. Anschließend können Sie die Verbindung beenden.
Sobald die Datenquelle verbunden ist, müssen Sie ein Band daran binden.
Der endgültige Bericht wird die Daten aus der hergestellten Excel-Verbindung verwenden.
Beispiel einer Excel-Verbindung aus dem Code:
// ExcelDataConnection-Objekt erstellen var connection = new ExcelDataConnection(); // Verbindungszeichenfolge festlegen connection.ConnectionString = @"C:\Matrix With Rows Only.xlsx"; // Alle Tabellen initialisieren connection.CreateAllTables(); // Verbindungsname festlegen connection.Name = "NewConnection"; // Report-Objekt erstellen var report = new Report(); // Verbindung zum Bericht hinzufügen report.Dictionary.Connections.Add(connection); // Verbindungsanzeige aktivieren connection.Enabled = true; // Alle Tabellen auswählen und mit dem Bericht verbinden foreach (TableDataSource table in connection.Tables) { table.Enabled = true; }
Als Ergebnis der Ausführung dieses Codes kann eine neue Verbindung mit Tabellen im Designer angezeigt werden. Dies wird in der Liste der verfügbaren Verbindungen widergespiegelt.
Es ist bemerkenswert, dass "Blatt"-Namen als Tabellennamen und Spaltenamen als Feldnamen verwendet werden.
Wie Sie sehen können, ist es nun möglich, eine Excel-Verbindung herzustellen und die dort hinterlegten Daten zu verwenden.