Wie kann man einen Parameter in den Bericht mit Hilfe von URL übergeben

2017-08-23

Bei der Arbeit im Internet braucht man immer, irgendwelche Parameter überzugeben. Das können entweder Filtration-Daten oder Kunden-Daten sein. Beim Aufruf der Form mit dem Bericht ist es bequem die Parameter mit Hilfe von URL überzugeben.

Wir betrachten ein einfaches Beispiel. In der Schablone gibt es zwei Parameter: Param1 и Param2 mit dem Typ „String“:

 

Man soll für diese Parameter die Werte mit dem URL übergeben.

Wir erstellen eine ASP.Net WebForms Anwendung. Wir platzieren auf irgendwelcher Seite eine WebReport-Komponente. Weiter fügen wir schon erstellte Berichts-Schablone ins Projekt hinzu und klicken mit rechter Maus-Taste auf den Ordner App_Data und wählen Add->Existing Item… . Danach suchen wir nach der Datei am lokalen Speicher und redigieren den C# Code der Seite. Zuerst erklären Bibliotheken:

1
2
using FastReport.Web;
using FastReport;

Ich verwende den Event „Load“, weil bei diesem Event der Bericht schon nicht auf dem Bildschirm ist: 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
namespace URLParams
{
 public partial class About : Page
 {
 protected void Page_Load(object sender, EventArgs e)
 {
//Get parameters from URL
 string param1 = Request.QueryString["param1"];
 string param2 = Request.QueryString["param2"];
//Load report fil into WebReport object 
 
 WebReport1.ReportFile = "App_Data/URLParams.frx";
//Set value to report parameters
 WebReport1.Report.SetParameterValue("Param1", param1);
 WebReport1.Report.SetParameterValue("Param2", param2);
 }
 }
}

Merken Sie sich, dass der Name des Parameters gleich den Namen des Parameters in der Schablone ist:

1
WebReport1.Report.SetParameterValue("Param1", param1);

URL-String sieht so aus:

http://localhost:51838/About?param1=Hello%20World!&param2=Good%20job!

Die Funktion Request.QueryString(); sucht nach dem Parameter mit dem bestimmten Namen und bestimmt den Wert des Parameters als Funktion-Ergebnis.

Zweite Variante, ohne Speichern der Schablone des Berichts im Projekt:

1
2
3
4
5
6
7
8
9
10
 protected void Page_Load(object sender, EventArgs e)
 {
 string param1 = Request.QueryString["param1"];
 string param2 = Request.QueryString["param2"];
 Report report = new Report();
 report.Load("J:/Program Files (x86)/FastReports/FastReport.Net/Demos/Reports/URLParams.frx");
 report.SetParameterValue("Param1", param1);
 report.SetParameterValue("Param2", param2);
 WebReport1.Report = report;
}

Hier erstellen wir das Objekt „Report“, laden die Schablone dorthin und bestimmen die Parameter. Weiter verbinden wir Objekte „Report“ und „Web Report“ miteinander und prüfen, dass die Eigenschaft ReportResourceString von WebReport leer ist.

Bei der Verwendung von zwei diesen Methoden bekommt man gleiche Ergebnisse:

 

Auf diese Weise ist es reich, nur ein Paar Codezeilen lassen uns die Parameter verwenden, die mit Hilfe von URL übergeben werden können.

.NET .NET FastReport FastReport ASP.NET ASP.NET WebReport WebReport
22. April 2025

Umgang mit der TfrShellTreeView-Komponente in FastReport VCL

In diesem Artikel werden wir uns die TfrShellTreeView-Komponente ansehen. Es dient zur Anzeige von Dateisystemelementen und ist teilweise analog zu den Komponenten TDirectoryListBox, TDirectoryOutline und TShellTreeView.
21. April 2025

Funktionsweise von RFID-Tags in FastReport VCL

In diesem Artikel werden wir die Funktionsweise von RFID-Tags mit dem neuen TfrxDeviceCommand-Objekt in FastReport VCL mit der Veröffentlichung 2025.2 untersuchen.
8. April 2025

Konvertieren einer Microsoft Word-Datei (.docx) in eine FastReport .NET-Datei (.frx)

Ein Konverter von Microsoft Word (.docx) Format zu einem file FastReport .NET (.frx): Beschreibung und Anweisungen zur Verwendung des Tools.
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.