Loading

Jeder Wert kann nur zu einer einzigen Gruppe/Kategorie gehören

Veröffentlichungsdatum: Jul 20, 2023
Beschreibung
Ein Dimensionselement kann nicht mehreren Gruppen/Kategorien zugewiesen werden.

Zum Beispiel sollte jeder Kunde je nach Höhe seines Umsatzes in die Kategorien "Wenigausgeber" oder "Vielausgeber" eingeteilt werden. Zusätzlich sollten einige Kunden eine zweite Kategorie "Positiver Gewinn" haben, die auf der Höhe des Gewinns basiert.

Cause

Tableau Desktop ist ein schreibgeschütztes Programm und kann daher keine zusätzlichen Zeilen hinzufügen, um einen Dimensionswert mehreren Gruppen/Kategorien zuzuordnen.

Wenn Sie eine IF-THEN-Berechnung schreiben, beendet Tableau Desktop die Auswertung der Bedingungen, sobald eine der Bedingungen WAHR ist.
Lösung
Alle nachstehenden Anleitungen beginnen mit dem Arbeitsblatt "Original" in der Beispiel-Arbeitsmappe, die im rechten Bereich dieses Artikels heruntergeladen werden können. Eine Anleitung zum Erstellen des Arbeitsblatts "Original" ist in der Arbeitsmappe enthalten.

Option 1: Erstellen einer Berechnung, die die Anzahl zurückgibt

  1. Entfernen Sie [Kundenname], [Umsatz] und [Gewinn] aus der Ansicht.
  2. Ändern Sie [Kundenkategorie] so, dass alle aggregierten Kennzahlen auf den Kundennamen FIXIERT sind. Die endgültige Berechnung kann wie folgt aussehen:
    IF { FIXED [Kundenname] : SUM([Gewinn])} > 0
    THEN "Positiver Gewinn"
    ELSEIF { FIXED [Kundenname] : SUM([Umsatz])} > 5000
    THEN "Vielausgeber"
    ELSE "Wenigausgeber"
    END
  3. Erstellen Sie ein berechnetes Feld mit einem Namen wie "Anzahl Kundenkategorien" mit einer Berechnung ähnlich der folgenden:
    IF MIN([Kundenkategorie (fixiert)]) = "Vielausgeber"
    THEN SUM({ FIXED : COUNTD( IF {INCLUDE [Kundenname]: SUM([Umsatz])} >= 5000 THEN [Kundenname] END )})
    
    ELSEIF  MIN([Kundenkategorie (fixiert)]) = "Wenigausgeber"
    THEN SUM({ FIXED : COUNTD( IF {INCLUDE [Kundenname]: SUM([Umsatz])} < 5000 THEN [Kundenname] END )})
    
    ELSEIF  MIN([Kundenkategorie (fixiert)]) = "Positiver Gewinn"
    THEN SUM({ FIXED : COUNTD( IF {INCLUDE [Kundenname]: SUM([Gewinn])} > 0 THEN [Kundenname] END )})
     
    END
  4. Ziehen Sie [Anzahl Kundenkategorien] auf den Zeilen-Container und auf Beschriftung auf der Karte "Markierungen".

Option 2: Erstellen mehrerer Kategorieberechnungen

  1. Erstellen Sie eine separate Berechnung für jeden Satz von Kategorien, die sich überschneiden würden. In diesem Beispiel ist ein Kunde nur "Wenigausgeber" ODER "Vielausgeber", niemals beides. Daher können wir diese beiden Bedingungen in einer Berechnung kombinieren. Die endgültigen Berechnungen könnten etwa wie folgt aussehen:
    [Kundenkategorie ~ Viel-/Wenigausgeber]:
    IF SUM([Umsatz]) > 5000
    THEN "Vielausgeber"
    ELSE "Wenigausgeber"
    END
    [Kundenkategorie ~ Positiver Gewinn]:
    IF SUM([Gewinn]) > 0
    THEN "Positiver Gewinn"
    END
  2. Ersetzen Sie [Kundenkategorie] durch [Kundenkategorie ~ Viel-/Wenigausgeber] und [Kundenkategorie ~ Positiver Gewinn].

Option 3: Verknüpfen mit einer Hauptkategorienliste

  1. Erstellen Sie eine Tabelle mit einer Liste aller möglichen Kategorien.
  2. Verbinden Sie die ursprüngliche Tabelle mit der neuen Liste mit Verknüpfungsberechnungen von 1=1.
  3. Erstellen Sie ein berechnetes Feld mit einem Namen wie "Anzahl Kundenkategorien mit Bedingungen" mit einer Berechnung ähnlich der folgenden:  
    IF [Kundenkategorie] = "Vielausgeber"
    AND { FIXED [Kundenname], [Kundenkategorie] : SUM([Umsatz]) } >= 5000
    THEN "Vielausgeber"
     
    ELSEIF [Kundenkategorie] = "Gewinn"
    AND { FIXED [Kundenname], [Kundenkategorie] : SUM([Gewinn]) } > 0
    THEN "Positiver Gewinn"
     
    ELSEIF [Kundenkategorie] = "Wenigausgeber"
    AND { FIXED [Kundenname], [Kundenkategorie] : SUM([Umsatz]) } < 5000
    THEN "Wenigausgeber"
     
    END
  4. Ersetzen Sie [Kundenkategorie] durch [Kundenkategorie mit Bedingungen].
Zusätzliche Ressourcen
Hinweise zu Option 1:
  • Diese Lösung setzt voraus, dass die zugrunde liegenden Daten mindestens eine Zeile für jede Kategorie enthalten. Außerdem muss jede Kategorie eine Zeile enthalten, die NICHT die Kriterien für eine der zuvor in der Berechnung aufgeführten Kategorien erfüllt. Damit z. B. "Wenigausgeber" in der Ansicht auftaucht, muss mindestens eine Zeile vorhanden sein, die ein Wenigausgeber ist und NICHT "Positiver Gewinn" oder "Vielausgeber".
Hinweise zu Option 3:
  • Klicken Sie in der Beispielarbeitsmappe auf die Registerkarte "Datenquelle", um zu sehen, wie diese Verknüpfung eingerichtet ist.
  • Wenn es nicht möglich ist, eine Hauptkategorienliste als Tabelle in die ursprüngliche Datenquelle einzufügen, ist es bei mehreren Datenquellen möglich, eine Texttabelle zu erstellen und eine datenbankübergreifende Verknüpfung zu verwenden, um die Texttabelle mit der ursprünglichen Tabelle zu verknüpfen.
  • Schritt 2 fügt eine Zeile für jede Kategorie für jeden Datensatz im zugrunde liegenden Datensatz hinzu. Das bedeutet, dass alle Kunden alle drei Kategorien haben.
  • Da diese Methode die Daten dupliziert, wird empfohlen, eine separate Datenquelle nur für diese Ansicht zu erstellen.

Nummer des Knowledge-Artikels

001474113

Anhänge

group values into multiple groups.twbx

2465 KB

 
Laden
Salesforce Help | Article