Loading

Verwenden eines aggregierten Felds, um die Detailgenauigkeit in einer Tabellenberechnung zu definieren

Veröffentlichungsdatum: Jul 20, 2023
Beschreibung
Wenn Partitionen in einer Ansicht durch ein aggregiertes Feld erstellt werden, wie zum Beispiel eine Tabellenberechnung oder eine IF-Anweisung, und eine weitere Tabellenberechnung unterschiedliche Ergebnisse für jede Partition zurückgeben soll, dann wird das aggregierte Feld nicht in den "Berechnen per"-Optionen für die Tabellenberechnung angezeigt.

Beispiel: Kunden fallen in eine der drei Kategorien, "High", "Medium" oder "Low", die über die folgende Berechnung definiert werden:

IF SUM([Sales]) < 500
THEN "low"
ELSEIF SUM([Sales]) < 5000
THEN "Medium"
ELSE "High"
END

Dann muss der [Customer Name] in der Ansicht für diese Partitionen enthalten sein, damit die Berechnungen ordnungsgemäß funktionieren. Wenn sich jedoch [Customer Name] in der Ansicht befindet, werden die Markierungen in der Ansicht von [Customer Name] durchbrochen, sprich, für keine Kategorie wird der Gesamtumsatz gebildet.
Lösung

Option 1:


Umbrechen Sie die aggregierte Berechnung im Detailgenauigkeitsausdruck FIXED. FIXED-Ausdrücke geben stets nicht aggregierte Ergebnisse zurück, die sich in Dimensionen konvertieren lassen. In der beigefügten Beispielarbeitsmappe werden die folgenden Anweisungen anhand des Beispieldatensatzes "Superstore" demonstriert:

  1. Erstellen Sie ein berechnetes Feld mit einem Namen wie "FIXED Sales Category" mit einer Berechnung ähnlich der folgenden:

    { FIXED [Customer Name] : [Sales Categories] }

  2. Ersetzen Sie in der Ansicht [Sales Categories] durch [FIXED Sales Categories].
  3. Entfernen Sie [Customer Name] aus der Karte "Markierungen".

Option 2:


Erstellen Sie eine Berechnung, die die ursprüngliche Logik innerhalb und außerhalb der Tabellenberechnung nutzt. In der beigefügten Beispielarbeitsmappe werden die folgenden Anweisungen anhand des Beispieldatensatzes "Superstore" demonstriert:
 

  1. Erstellen Sie ein berechnetes Feld mit einem Namen wie "Sales per Sales Category" mit einer Berechnung ähnlich der folgenden:

    IF SUM([Sales]) < 500
    THEN
    WINDOW_SUM(
    IF SUM([Sales]) < 500
    THEN SUM([Sales])
    END
    )
     
    ELSEIF SUM([Sales]) < 5000
    THEN
     
    WINDOW_SUM(
    IF SUM([Sales]) < 5000
    THEN SUM([Sales])
    END
    )
     
    ELSE
     
    WINDOW_SUM(
    IF SUM([Sales]) >= 5000
    THEN SUM([Sales])
    END
    )
    END

  2. Ziehen Sie [Sales Categories] auf den Zeilen-Container.
  3. Ziehen Sie [Customer Name] auf der Karte "Markierungen" auf "Detail".
  4. Ziehen Sie [Sales per Sales Category] auf den Spalten-Container.
  5. Klicken Sie mit der rechten Maustaste auf [Sales per Sales Category] und wählen Sie "Berechnen per > Customer Name".
  6. Drücken Sie die Strg-Taste und ziehen Sie [Sales per Sales Category] von dem Spalten-Container auf "Beschriftung" auf der Karte "Markierungen".
  7. Navigieren Sie zu "Analyse > Markierungen stapeln > Aus".
Zusätzliche Ressourcen
Die Berechnung in Option 2 mag redundant erscheinen, aber jede IF-Anweisung ist erforderlich. Durch die IF-Anweisung innerhalb des WINDOW_SUM()-Ausdrucks werden die Daten eingeschränkt, die in WINDOW_SUM() summiert werden. Das Ergebnis für WINDOW_SUM() für eine Kategorie wird in jeder Kategorie angezeigt. Daher müssen wir den WINDOW_SUM()-Ausdruck innerhalb einer weiteren IF-Anweisung platzieren, die nur das Ergebnis zurückgibt, das wir für die gewünschte Kategorie möchten.


Nummer des Knowledge-Artikels

001473424

Anhänge

using aggregation as bins.twbx

1205 KB

 
Laden
Salesforce Help | Article