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, sieht er die Daten cde und ghi.

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

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

E-Mail Daten
tim@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, So filtern Sie die Daten, damit Ihre Vertriebsmitarbeiter nur ihre eigenen Daten sehen:

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 (Access Control List)

Der Nutzer salesrep1@example.com kann Daten für Obststand A und Obststand B sehen, der Nutzer salesrep2@example.com hingegen Daten für Obststand A und Obststand 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