Nach mehreren E-Mail-Adressen pro Zeile filtern

Beim Filtern nach E-Mail-Adresse wird die Adresse des angemeldeten Nutzers mit einem Feld in Ihrer Datenquelle verglichen, das gültige E-Mail-Adressen enthält. Dabei wird Zeile für Zeile in Ihren Daten geprüft, ob die E-Mail-Adresse des Nutzers mit der Adresse in der Zeile übereinstimmt.

Gehen Sie von den folgenden Daten aus:

E-Mail Daten
alan@example.com abc
mary@example.com cde
alan@example.com efg
mary@example.com ghi

Wenn diese Daten nach E-Mail-Adresse gefiltert werden und ein Nutzer alan@example.com den gefilterten Bericht aufruft, sieht er nur die Daten abc und efg. Wenn sich ein anderer Nutzer, mary@example.com, denselben Bericht ansieht, werden ihm die Daten cde und ghi angezeigt.

Dieser Ansatz funktioniert, wenn eine 1:1-Beziehung zwischen den Nutzern und den Daten besteht. Was aber, wenn auch der Nutzer manager@example.com die Daten sehen soll? Sie also möchten, dass dieselben Datenzeilen für zahlreiche Personen angezeigt werden (eine Many-to-Many-Beziehung)?

Da das Filtern nach E-Mail-Adresse nur für eine Adresse pro Zeile funktioniert, können Sie keine Liste mit E-Mail-Adressen in das Feld E-Mail einfügen. Wenn Sie beispielsweise eine Liste von E-Mail-Adressen im Feld E-Mail angeben, funktioniert das nicht:

E-Mail Daten
alan@beispiel.de, manager@beispiel.de, vp@beispiel.de, mustermann@beispielkunde.de abc

Lösung: Daten zusammenführen

Sie können eine m:n-Beziehung zwischen E-Mail-Adressen und Ihren Daten herstellen. Hierzu führen Sie eine Tabelle mit Adressen mit Ihren Daten zusammen und verwenden dabei ein beliebiges gemeinsames Feld als Join-Schlüssel.

Beispiel für einen Obststand

Sie leiten ein Lebensmittelunternehmen und möchten Ihren Vertriebsmitarbeitern die Leistung an den verschiedenen Obstständen präsentieren, die sie betreuen. Da mehrere Vertriebsmitarbeiter mehrere Stände betreuen können, filtern Sie die Daten so, dass jeder Vertriebsmitarbeiter nur seine eigenen Daten sieht:

Schritt 1: ACL-Tabelle erstellen

In diesem Schritt erstellen Sie eine ACL-Tabelle (Access Control List), die sowohl die E-Mail-Adressen der autorisierten Vertriebsmitarbeiter als auch ein Datenfeld (Name des Obststands) enthält, das beim Zusammenführen als Join-Schlüssel verwendet werden kann.

E‑Mail-Adresse des Vertriebsmitarbeiters Join-Schlüssel
salesrep1@example.com Obststand A
salesrep2@example.com Obststand A
salesrep1@example.com Obststand B

salesrep2@example.com

Obststand C

ACL-Tabelle

Der Nutzer salesrep1@example.com sieht die Daten für die Obststände A und B, der Nutzer salesrep2@example.com hingegen die Daten für die Obststände A und C.

Schritt 2: Datentabelle erstellen

In der Datentabelle wird die Menge an Obst erfasst, die die beiden Vertriebsmitarbeiter zusammengenommen an den jeweiligen Obststand verkauft haben.

Obststand Frucht Vertrieb
Obststand A Apple 50
Obststand A Banane 26
Obststand A Orange 20
Obststand A Birne 93
Obststand B Apple 98
Obststand B Banane 86
Obststand B Orange 7
Obststand B Birne 85
Obststand C Apple 21
Obststand C Banane 61
Obststand C Orange 3
Obststand C Birne 78

Datentabelle

Schritt 3: E-Mail-Filter auf ACL-Tabelle anwenden

So wenden Sie den E-Mail-Filter auf die ACL-Tabelle an:

  1. Bearbeiten Sie die Datenquelle für die ACL-Tabelle.
  2. Klicken Sie auf NACH E-MAIL-ADRESSE FILTERN.
  3. Wählen Sie das Feld Vertriebsmitarbeiter-E-Mail für den Filter aus.

Schritt 4: ACL-Tabelle mit Datentabelle zusammenführen

Führen Sie abschließend die Datentabelle mit der ACL-Tabelle zusammen. Da wir die E-Mail-Adressen der Vertriebsmitarbeiter als Spalte in die Datentabelle einfügen möchten, beginnen wir mit der Datentabelle und führen dann einen LEFT JOIN mit der ACL-Tabelle durch.

Ohne E-Mail-Filter sehen Sie alle Datensätze für beide Vertriebsmitarbeiter. Wird jedoch beim Zusammenführen der E-Mail-Filter angewendet, sieht jeder der Vertriebsmitarbeiter aufgrund des Filters andere Daten im Bericht. Folgende Daten werden für die Vertriebsmitarbeiter getrennt angezeigt:

Vertriebsmitarbeiter 1 sieht Folgendes:

Daten Frucht Vertrieb
Obststand A Apple 50
Obststand A Banane 26
Obststand A Orange 20
Obststand A Birne 93
Obststand B Apple 98
Obststand B Banane 86
Obststand B Orange 7
Obststand B Birne 85

Vertriebsmitarbeiter 2 sieht Folgendes:

Daten Frucht Vertrieb
Obststand A Banane 26
Obststand A Orange 20
Obststand A Apple 50
Obststand A Birne 93
Obststand C Banane 61
Obststand C Orange 3
Obststand C Apple 21
Obststand C Birne 78