# Berichtsfilter

Stellen Sie sich Berichtsfilter wie einen intelligenten Assistenten vor, der Ihnen nur die Informationen zeigt, die Sie interessieren. Anstatt einen riesigen Stapel Papiere durchzusehen, überreicht Ihnen Ihr Assistent nur die Seiten, die für Ihre aktuelle Frage relevant sind.

## Zweck von Berichtsfiltern

Berichtsfilter ermöglichen es Ihnen, zu kontrollieren, welche Daten in Ihren Berichten erscheinen, indem sie sich mit SQL-Auswertungen mit Variablen verbinden:

* **Spezifische Auswertungen filtern** - Nur Auswertungen mit Variablen können gefiltert werden
* **Seitenübergreifende Steuerung** - Einen Filter mit Diagrammen auf mehreren Seiten verbinden
* **Interaktive Steuerelemente** - Bequeme Eingabefelder für Endbenutzer
* **SQL-gesteuerte Logik** - Filterlogik wird durch Ihr SQL-Abfrage-Design bestimmt
* **Verschiedene Szenarien testen** - Filterwerte ändern, um verschiedene Datenuntergruppen zu sehen
* **Filterleisten-Sichtbarkeit kontrollieren** - bestimmen Sie, welche Filter für Endbenutzer sichtbar sind
* **Dynamische Filteroptionen** - Filteroptionen automatisch aus Ihren Daten mit SQL-Abfragen generieren

**Beispiel aus der Praxis**: Ihr Budgetbericht hat eine SQL-Auswertung mit der Variable `$abteilung`. Sie fügen einen Abteilungsfilter zur Seite hinzu, der Benutzern ermöglicht, "Öffentliche Sicherheit" oder "Gesundheitsdienste" auszuwählen, um nur Daten für diese Abteilung zu sehen.

## Globale Filter und lokale Überschreibungen

{% tabs %}
{% tab title="Globale Filter" %}
**Globale Filter funktionieren über mehrere Auswertungen hinweg – auch seitenübergreifend:**

* Werden im Filter-Panel erstellt und anschließend mit beliebigen Auswertungen verbunden
* Können sich auf mehrere Seiten erstrecken – Filterwerte wirken überall dort, wo die Auswertung angebunden ist
* Benutzer sehen eine Filteroberfläche in der globalen Filterleiste oder als platzierte Komponente im Bericht
* Einmal einrichten, mit mehreren Auswertungen verbinden
* Werden von Berichtsbearbeitenden kontrolliert

**Beispielverwendungen:**

* Abteilungsfilter, der Auswertungen auf der Startseite und in einem Detailkapitel steuert
* Datumsfilter, der mehrere zeitbasierte Auswertungen beeinflusst und in PDF-Exports konsistent bleiben soll
* Statusfilter, der über mehrere projektbezogene Auswertungen hinweg funktioniert
  {% endtab %}

{% tab title="Auswertungsfilter" %}
**Auswertungsfilter funktionieren auf einzelnen Auswertungen:**

* Überschreiben globale Filterwerte für spezifische Auswertungen
* Temporäre Änderungen zum Testen (können nicht gespeichert werden)
* Gut für einmalige Anpassungen
* Betreffen nur die einzelne Auswertung, auf die sie angewendet werden

**Beispielverwendungen:**

* Abteilungsfilter für ein Zusammenfassungsdiagramm auf "Alle Abteilungen" ändern
* Anderen Datumsbereich für eine spezifische Trendanalyse verwenden
* Verschiedene Statuswerte für einzelne Auswertungen testen

> ℹ️ Aktivieren Sie **Lokales Filter-Überschreiben verhindern**, wenn Auswertungsfilter keine lokalen Änderungen erlauben sollen. Details finden Sie in den [Erweiterten Einstellungen](/berichte/filter/erweiterte-einstellungen.md#lokales-filter-ueberschreiben-verhindern).
> {% endtab %}
> {% endtabs %}

## Wie Berichtsfilter funktionieren

1. **SQL-Auswertungen mit Variablen erstellen** - Verwenden Sie die Syntax `$variablenname` in Ihren SQL-Abfragen (siehe [SQL-Variablen](https://github.com/polyteia-de/docs/blob/main/help-center/de/berichte/auswertungen/sql-editor/sql-variablen.md) für die vollständige Anleitung)
2. **Auswertungen zu Ihrem Bericht hinzufügen** - Platzieren Sie Auswertungen mit Variablen auf den gewünschten Seiten
3. **Filter einrichten** - Verbinden Sie Filter mit den Auswertungsvariablen (auch auf anderen Seiten)
4. **Filteroptionen konfigurieren** - Definieren Sie die verfügbaren Werte, aus denen Benutzer auswählen können
5. **Benutzer interagieren mit Filtern** - Dropdown-Menüs und Eingaben ändern die angezeigten Daten

## Filter über mehrere Seiten hinweg einsetzen

In der Filterkonfiguration sehen Sie, welche Auswertungen mit dem aktuellen Filter verbunden sind. Die Ansicht ist in zwei Bereiche aufgeteilt:

* **Diese Seite** – Auswertungen, die sich auf der aktuellen Seite befinden
* **Andere Seiten** – Auswertungen auf weiteren Seiten oder in anderen Berichtsabschnitten

Zu jeder Auswertung werden Seiten-Badges angezeigt, damit Sie schnell erkennen, wo der Filter wirkt. So können Sie denselben Filter auf mehreren Seiten einsetzen, ohne ihn doppelt pflegen zu müssen.

Wenn Sie sicherstellen möchten, dass überall derselbe Wert verwendet wird (z. B. für Soll-Ist-Reports oder Exporte), aktivieren Sie in den [Erweiterten Einstellungen](/berichte/filter/erweiterte-einstellungen.md#lokales-filter-ueberschreiben-verhindern) den Schalter **Lokales Filter-Überschreiben verhindern**.

## Filter direkt im Bericht platzieren

Filter müssen nicht in der globalen Filterleiste bleiben. Über die Werkzeugleiste **+ Block → Filter** platzieren Sie eine Filter-Komponente genau dort, wo Nutzer:innen sie benötigen – beispielsweise neben KPI-Kacheln oder unter einem erklärenden Abschnitt. Details finden Sie im Leitfaden [Filter-Komponenten platzieren](/berichte/filter/filter-komponenten.md).

## Arten von Berichtsfiltern

### Textfilter

Filtern basierend auf Textwerten:

* **Einzelauswahl**: Eine Abteilung aus einer Dropdown-Liste auswählen
* **Mehrfachauswahl**: Mehrere Projektstatus aus Checkboxen auswählen
* **Texteingabe**: Einen spezifischen Namen oder Identifikator eingeben
* **Kategoriefilterung**: Aus vordefinierter Liste von Regionen oder Typen auswählen

### Zahlenfilter

Filtern basierend auf numerischen Werten:

* **Einzelzahl**: Einen minimalen Budgetbetrag eingeben
* **Zahlenauswahl**: Aus einer Liste von Prioritätsstufen auswählen (1, 2, 3)
* **Schwellenwertfilterung**: Mindest- oder Höchstwerte festlegen

### Datumsfilter

Filtern basierend auf spezifischen Daten:

* **Einzeldatumsauswahl**: Ein spezifisches Berichtsdatum auswählen
* **Datumsvergleich**: Nach Datensätzen vor oder nach einem bestimmten Datum filtern
* **Datumsabgleich**: Daten für einen spezifischen Tag oder ein Datum anzeigen

{% hint style="warning" %}
**Aktuelle Einschränkungen**: Datumsfilter können nur nach spezifischen Daten filtern, nicht nach Datumsbereichen. Erweiterte zeitbasierte Filterung wie Zeitraum-über-Zeitraum-Vergleiche sind noch nicht verfügbar.
{% endhint %}

## Filterleiste ein- und ausblenden

Sie können die Filterleiste im Bericht ein- oder ausblenden. Das ist praktisch, wenn Sie mehr Platz für den Berichtsinhalt brauchen.

* Klicken Sie auf **Filter anzeigen**, um die Filterleiste einzublenden.
* Klicken Sie auf **Filter ausblenden**, um die Filterleiste auszublenden.

Die Filterleiste haftet oben am Bericht. So bleiben die Filter immer erreichbar, auch wenn Sie im Bericht nach unten scrollen.

## Wie Benutzer mit Filtern interagieren

Sobald Filter eingerichtet sind, sehen Benutzer sie als interaktive Filter im oberen Bereich des Berichts.

### Filteroberfläche

Jeder Filter erscheint wie folgt:

* **Filtername** (das von Ihnen konfigurierte Etikett)
* **Aktueller Wert** (falls ein Wert ausgewählt ist)
* **Klicken** zum Öffnen der Filteroptionen

### Filterinteraktionen

{% tabs %}
{% tab title="Eingabefeld-Filter" %}
**Für Text-, Zahlen- und Datumseingabe-Filter:**

1. **Filter anklicken**, um die Eingabeoberfläche zu öffnen
2. **Wert eingeben oder eintippen**:
   * Text: Beliebigen Textwert eingeben
   * Zahl: Numerische Werte eingeben
   * Datum: YYYY-MM-DD Format eingeben oder Datumsauswahl verwenden
3. **"Anwenden" klicken**, um verbundene Auswertungen zu aktualisieren
4. **Filter zeigt Ihren eingegebenen Wert**

**Zurücksetzen**: Filter anklicken → "Zurücksetzen", um den Wert zu löschen oder auf den Standardwert zurückzusetzen
{% endtab %}

{% tab title="Dropdown-Filter" %}
**Für Einzelauswahl- und Mehrfachauswahlfilter:**

1. **Filter anklicken**, um Auswahlmenü zu öffnen
2. **Optionen auswählen**:
   * **Einzelauswahl**: Eine Option anklicken
   * **Mehrfachauswahl**: Mehrere Optionen anklicken
3. **Suchen**: Tippen, um durch verfügbare Optionen zu suchen (bei vielen Optionen)
4. **"Anwenden" klicken**, um verbundene Auswertungen zu aktualisieren
5. **Filter zeigt ausgewählte Werte**

**Zurücksetzen**: Filter → "Zurücksetzen", um den Wert zu löschen oder auf den Standardwert zurückzusetzen
{% endtab %}

{% tab title="Kalender-Filter" %}
**Für Datumsfilter mit Kalenderoberfläche:**

1. **Filter anklicken**, um Kalender zu öffnen
2. **Datum aus der Kalenderoberfläche auswählen**
3. **"Anwenden" klicken**, um verbundene Auswertungen zu aktualisieren
4. **Filter zeigt ausgewähltes Datum**

**Zurücksetzen**: Filter → "Zurücksetzen", um den Wert zu löschen oder auf den Standardwert zurückzusetzen
{% endtab %}
{% endtabs %}

### Globale Filter und Auswertungsfilter

{% tabs %}
{% tab title="Globale Filter" %}
**Standardverhalten für globale Filter:**

* **Beeinflusst alle verbundenen Auswertungen** mit passenden Variablen – auch auf anderen Seiten
* **Konsistente Filterung** über mehrere Diagramme und Tabellen hinweg
* **Zurücksetzen wirkt global für den gesamten Bericht** – löscht Filterwerte für alle verbundenen Auswertungen
* **Benutzer sehen denselben Filterwert** über alle verbundenen Visualisierungen hinweg

**Beispiel**: Abteilungsfilter auf "Öffentliche Sicherheit" gesetzt beeinflusst alle Auswertungen, die mit der Variable `$abteilung` verbunden sind
{% endtab %}

{% tab title="Auswertungsfilter" %}
**Benutzer können globale Filter temporär überschreiben:**

1. **Filter werden angezeigt** auf verbundenen Auswertungen
2. **Jedes Anklicken eines Filters** bei einer Auswertung ändert den Wert des Filters nur lokal für die aktuelle Auswertung
3. **Lokale Änderungen sind temporär** - werden nicht gespeichert, wenn die Seite aktualisiert wird
4. **Lokal zurücksetzen** kehrt zum Wert des Seitenfilters zurück
5. **Andere Auswertungen behalten Seitenfilterwert bei**

**Anwendungsfall**: "Öffentliche Sicherheit" global vergleichen, aber temporär "Alle Abteilungen" in einem Zusammenfassungsdiagramm anzeigen

{% hint style="info" %}
Überschreiben des Seitenfilters ist temporär und kann nicht gespeichert werden. Dies ist nützlich für schnelle Vergleiche oder temporäre Analysen.
{% endhint %}
{% endtab %}
{% endtabs %}

## Erste Schritte mit Filtern

Bereit, mit der Filterung Ihrer Berichte zu beginnen?

* [**Filter erstellen**](/berichte/filter/filter-erstellen.md) - Richten Sie Ihre ersten Berichtsfilter Schritt für Schritt ein, einschließlich Sichtbarkeit und Mehrseiten-Verknüpfung
* [**Erweiterte Einstellungen**](/berichte/filter/erweiterte-einstellungen.md) - Steuern Sie Standardwerte, Sichtbarkeit und das lokale Überschreiben
* [**Filter-Komponenten platzieren**](/berichte/filter/filter-komponenten.md) - Binden Sie Filter direkt in das Berichtslayout ein
* [**Dynamische Filteroptionen**](/berichte/filter/dynamische-filteroptionen.md) - Automatische Filteroptionen aus Ihren Daten mit SQL-Abfragen
* [**Filtertypen**](/berichte/filter/filtertypen.md) - Verstehen Sie alle verfügbaren Filteroptionen und wann Sie jede verwenden sollten

{% hint style="success" %}
**Profi-Tipp**: Beginnen Sie zuerst mit einfachen Einzelwert-Filtern. Testen Sie Ihre SQL-Variablen-Logik gründlich in der Auswertung, bevor Sie sie mit Berichtsfiltern verbinden. Stellen Sie sicher, dass Ihre NULL-Behandlung korrekt funktioniert, wenn kein Filterwert ausgewählt ist.
{% endhint %}

## Anforderungen für die Verwendung von Berichtsfiltern

**Sie müssen benutzerdefinierte SQL-Auswertungen mit Variablen verwenden**, um Berichtsfilterung zu aktivieren. Was Sie benötigen:

### SQL-Auswertungen mit Variablen

1. **SQL-Auswertungen erstellen**: Verwenden Sie den SQL-Editor, um benutzerdefinierte Abfragen zu schreiben
2. **Variablen hinzufügen**: Schließen Sie die Syntax `$variablenname` in Ihre SQL-Abfragen ein
3. **NULL-Werte behandeln**: Verwenden Sie ordnungsgemäße SQL-Logik für den Fall, dass kein Filter angewendet wird
4. **Gründlich testen**: Überprüfen Sie, dass Ihre Variablen-Logik in der Auswertung funktioniert, bevor Sie sie zu Berichten hinzufügen

**Beispiel-SQL-Muster:**

```sql
SELECT department, COUNT(*) as count
FROM projects 
WHERE (department = $department OR $department IS NULL)
    AND (status IN $status_list OR array_length($status_list) = 0)
GROUP BY department
```

### Manuelle Filterkonfiguration

* **Filterwerte bereitstellen**: Sie müssen die Liste der verfügbaren Optionen für jeden Filter manuell eingeben
* **Keine automatische Erkennung**: Das System erkennt nicht automatisch verfügbare Werte aus Ihren Daten
* **Filtertypen konfigurieren**: Richten Sie Text-, Zahlen- oder Datumsfilter basierend auf Ihren Variablentypen ein
* **Filtersichtbarkeit konfigurieren**: Entscheiden Sie für jeden Filter, ob er in der oberen Leiste angezeigt werden soll oder nur auf der Auswertung

### Mehr über Variablen erfahren

Für vollständige Details über das Erstellen von SQL-Auswertungen mit Variablen, siehe [**SQL-Variablen**](/auswertungen/sql-editor/sql-variablen.md).

Für eine schrittweise Filtereinrichtung, siehe die [**Anleitung Filter erstellen**](/berichte/filter/filter-erstellen.md).


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.polyteia.com/berichte/filter.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
