Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
In diesem Abschnitt erfahren Sie, wie Sie einen Filter auf die im Bericht enthaltenen Daten anwenden.
So wenden Sie einen Filter auf Berichtdaten an
Öffnen Sie das Web Form oder Windows Form in der Entwurfsansicht.
Klicken Sie im Menü Ansicht auf Code.
Fügen Sie am Anfang der Klasse drei neue Variablendeklarationen auf Klassenebene hinzu, die die Werte darstellen, auf deren Grundlage Daten gefiltert werden.
Private salesAmount As String Private operatorValue As String Private customerName As Stringprivate string salesAmount; private string operatorValue; private string customerName;Wenn Sie ein Windows-Projekt erstellen, fügen Sie eine zusätzliche Variablendeklaration auf Klassenebene hinzu: einen booleschen Wert mit der Bezeichnung useDefaultValues. Weisen Sie dieser Variablendeklaration dann den Wert "true" zu.
Private useDefaultValues As Boolean = Trueprivate bool useDefaultValues = true;Erstellen Sie innerhalb der ConfigureCrystalReports()-Methode einen Bedingungsblock.
Wenn Sie eine Website entwickeln, erstellen Sie einen Not IsPostBack-Bedingungsblock. Platzieren Sie diesen Block in der Methode über dem vorhandenen Code.
If Not IsPostBack Then End Ifif (!IsPostBack) { }Wenn Sie ein Windows-Projekt entwickeln, erstellen Sie einen useDefaultValues-Bedingungsblock. Platzieren Sie diesen Block in der Methode über dem vorhandenen Code.
If useDefaultValues Then End Ifif (useDefaultValues) { }
Weisen Sie den drei Variablen auf Klassenebene innerhalb des Bedingungsblocks die Werte "4.000", "<" und "K" zu.
Diese Werte werden deshalb innerhalb eines Bedingungsblocks zugewiesen, da sie später mit einem Click-Ereignis für ein Button-Steuerelement außer Kraft gesetzt werden.
``` vb
salesAmount = "4000"
operatorValue = "<"
customerName = "K"
```
``` csharp
salesAmount = "4000";
operatorValue = "<";
customerName = "K";
```
Erstellen Sie direkt außer- und unterhalb des Bedingungsblocks eine selectionFormula-Zeichenfolge, in der Sie Literale mit den zuvor erstellten Variablen auf Klassenebene kombinieren.
Dim selectionFormula As String = "{Customer.Last Year's Sales} > " _ & salesAmount _ & " AND Mid({Customer.Customer Name}, 1, 1) " _ & operatorValue _ & "'" _ & customerName _ & "'"string selectionFormula = "{Customer.Last Year's Sales} > " + salesAmount + " AND Mid({Customer.Customer Name}, 1, 1) " + operatorValue + "'" + customerName + "'";Erstellen Sie in dem zuvor erstellten Berichtbindungscode einen Zeilenumbruch direkt über der Codezeile, in der customerBySalesName der ReportSource-Eigenschaft des CrystalReportViewer-Steuerelements zugewiesen wurde.
Weisen Sie der ReportDocument-Instanz in diesem Zeilenumbruch die selectionFormula-Zeichenfolgenvariable zu.
customerBySalesNameReport.DataDefinition.RecordSelectionFormula = selectionFormulacustomerBySalesNameReport.DataDefinition.RecordSelectionFormula = selectionFormula;Kompilieren Sie die Anwendung, und zeigen Sie sie an.
Die Daten sollten jetzt gefiltert werden.
Kehren Sie zu Visual Studio zurück, und klicken Sie auf Debuggen beenden, um den Debugmodus zu verlassen.
Im nächsten Abschnitt erstellen Sie auf dem Formular Steuerelemente, mit denen Sie die Auswahlformel dynamisch anpassen können.