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 ein anderer Nutzer mit der Adresse „mary@example.com“ denselben Bericht aufruft, sieht er die Daten „cde“ und „ghi“.

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 möchten also, dass dieselben Datenzeilen für zahlreiche Personen angezeigt werden (eine m:n-Beziehung).

Da beim Filtern nach E-Mail-Adresse nur eine Adresse pro Zeile verwendet wird, können Sie keine Liste von E-Mail-Adressen in das Feld E-Mail einfügen. Wenn Sie beispielsweise eine Liste von E-Mail-Adressen wie folgt in das Feld E-Mail einfügen, funktioniert das nicht:

E-Mail Daten
alan@example.com, manager@example.com, vp@example.com, bigwig@customer.com 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.

Vertriebsmitarbeiter-E-Mail 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. Öffnen Sie die Datenquelle für die ACL-Tabelle zum Bearbeiten.
  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. So sieht der Bericht für die einzelnen Vertriebsmitarbeiter aus:

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