Loading

Nullsummen in Berichten und Diagrammen anzeigen

Veröffentlichungsdatum: Apr 3, 2026
Beschreibung
Wenn ein gruppierter Bericht in Salesforce ausgeführt wird und keine Daten für eine bestimmte Gruppierung vorhanden sind, wird im Bericht nichts angezeigt. Dies kann frustrierend sein, insbesondere wenn nach Daten gruppiert und versucht wird, einen Trend zu analysieren. In Diagrammen werden nur Daten mit einem Wert angezeigt, weshalb Zeiträume ohne Daten nur schwer identifiziert werden können. Infolgedessen kann es passieren, dass wir nicht erkennen, wann die Geschäfte besonders schlecht liefen.

Derzeit gibt es eine Idee zu diesem Problem, die Sie unter dem folgenden Link finden:
 Nullsummen in Berichten zulassen
Lösung
Dieses Beispiel dient der Erstellung eines Berichts auf Basis des Opportunity-Objekts, wobei der Schwerpunkt auf der Gruppierung der Daten nach Eigentümern und Schlusstermin liegt. Es ist jedoch wichtig zu beachten, dass der gleiche Ansatz auch für jedes andere Objekt angepasst werden kann. 

Erstellen eines neuen Formelfelds auf dem Opportunity-Objekt
Erstellen eines durch einen Zeitplan ausgelösten Flows in Opportunities
Erstellen eines durch einen Datensatz ausgelösten Flows
Erstellen eines zweiten durch einen Datensatz ausgelösten Flows

_____________________________________________________________________________________

Erstellen eines neuen Formelfelds auf dem Opportunity-Objekt
Schritt 1: Klicken Sie auf einer beliebigen Seite in Lightning auf das Zahnradsymbol in der rechten oberen Ecke. Wählen Sie Setup aus und navigieren Sie zur Registerkarte Objekt-Manager. Scrollen Sie in der Liste der verfügbaren Objekte nach unten, bis Sie die Opportunity finden. Klicken Sie auf die Opportunity, um sie auszuwählen.
Schritt 2: Klicken Sie in der Randleiste auf die Option Felder & Beziehungen.
Schritt 3: Klicken Sie auf Neu, um ein benutzerdefiniertes Feld zu erstellen.
Schritt 4: Wählen Sie Formel als Datentyp des Feldes aus und klicken Sie auf die Schaltfläche Weiter.
Schritt 5: Geben Sie im Abschnitt Feldbezeichnung als Formelnamen Anzahl der Opportunities ein. Der Feldname wird automatisch ausgefüllt. Wählen Sie Zahl als Typ der Formelrückgabe aus und setzen Sie die Dezimalstellen auf 0. Klicken Sie dann auf die Schaltfläche Weiter.
Schritt 6: Geben Sie die Formel unten (siehe Beispielformel) in den Formel-Zeichenbereich ein und klicken Sie auf die Schaltfläche Syntax prüfen, um sicherzustellen, dass keine Fehler vorliegen. Optional können Sie die Felder Beschreibung und Hilfetext ausfüllen.
Schritt 7: Wählen Sie im Abschnitt Verarbeitung leerer Felder die Option Leere Felder als leer behandeln aus. Klicken Sie auf die Schaltfläche Weiter.
Schritt 8: Durch Festlegen der Sicherheit auf Feldebene bestimmen Sie, ob das Feld für bestimmte Profile und Berechtigungssätze sichtbar sein soll. Klicken Sie dann auf Weiter.
Schritt 9: Wählen Sie die Seitenlayouts aus, die das Feld anzeigen sollen, und klicken Sie dann auf die Schaltfläche Speichern.
 
fomula.jpg
 
Beispielformel:
IF(Name="DUMMY OPP",0,1)

Erstellen eines durch einen Zeitplan ausgelösten Flows in Opportunities
Schritt 1: Klicken Sie auf einer beliebigen Seite in Lightning auf das Zahnradsymbol in der rechten oberen Ecke. 
Schritt 2: Geben Sie unter Setup im Feld Schnellsuche den Text Flows ein und klicken Sie darauf.
Schritt 3: Klicken Sie auf die Schaltfläche Neuer Flow.
Schritt 4: Wählen Sie Durch Zeitplan ausgelöster Flow aus und klicken Sie auf die Schaltfläche Erstellen.
 
image.png

Schritt 5: Klicken Sie auf +Plan festlegen, wählen Sie das Datum des nächsten Tages aus und setzen Sie die Uhrzeit auf Mitternacht. Stellen Sie sicher, dass die Häufigkeit auf Täglich eingestellt ist und klicken Sie dann auf Fertig.
 
Set Scheduled.PNG
Daily.PNG

Schritt 6: Klicken Sie auf den Link +Objekt auswählen (optional) im Startelement und setzen Sie das Objekt auf Benutzer.
 
Set Scheduled - Copy.PNG

Schritt 7: Wenden Sie alle erforderlichen Filter an. Sie können zum Beispiel Ihre Experience Cloud-Benutzer ausschließen (zumindest der Gastbenutzer muss ausgeschlossen werden, wenn er verwendet wird, sonst kommt es zu Fehlern). Stellen Sie sicher, dass inaktive Benutzer herausgefiltert werden. Klicken Sie auf Fertig.
 
Filter Condition.png

Schritt 8: Fügen Sie dem Zeichenbereich das Element Datensätze erstellen hinzu.
a. Klicken Sie im Flow-Designer auf das Pluszeichen und wählen Sie das Element Datensätze erstellen aus.
b. Geben Sie im Feld Bezeichnung einen Namen für das Element ein. Der API-Name wird automatisch ausgefüllt.
c. Wählen Sie unter Wie viele Datensätze sollen erstellt werden? die Option Einer und unter Wie sollen die Datensatzfelder festgelegt werden? die Option Unterschiedliche Ressourcen und Literalwerte verwenden aus.
d. Setzen Sie das Objekt auf Opportunity.
e. Fügen Sie die erforderlichen Feldwerte hinzu und stellen Sie sicher, dass die Pflichtfelder auf einen Wert gesetzt sind.
 i. Nachdem dieses Element Opportunities erstellen wird, stellen Sie sicher, dass die OwnerId auf $Record.Id gesetzt ist.
 ii. Setzen Sie den Schlusstermin auf {!$Flow.CurrentDate}.
 iii. Der Name sollte ebenfalls eindeutig sein und genau mit dem Wert im zuvor erstellten Formelfeld übereinstimmen. In diesem Artikel verwenden wir DUMMY OPP als Beispiel.
 iv. Legen Sie abschließend die Phase fest, da es ein Pflichtfeld ist:


Ihr durch einen Zeitplan ausgelöster Flow sollte nun wie folgt aussehen:


Schritt 9: Speichern und aktivieren Sie Ihren Flow.

Hinweis: Es ist auch möglich, einen weiteren durch einen Zeitplan ausgelösten Flow auszuführen, um vergangene und/oder zukünftige Opportunities zu erstellen. Dieser Ansatz kann aber komplexer sein und zu einer großen Anzahl von zu erstellenden Datensätzen führen. Daher ist es wichtig, die Flow- und Speichergrenzen zu kennen, um Probleme zu vermeiden.

Erstellen eines durch einen Datensatz ausgelösten Flows
Schritt 1: Klicken Sie auf den Zurück-Pfeil oben links im Zeichenbereich von Flow Builder und klicken Sie auf die Schaltfläche Neuer Flow.
Schritt 2: Setzen Sie das Objekt auf Opportunity und wählen Sie im Abschnitt Flow auslösen, wenn die Option Ein Datensatz erstellt oder aktualisiert wird.
Schritt 3: Wählen Sie im Dropdown-Menü Bedingungsanforderungen den Eintrag Formel wird als wahr ausgewertet aus und geben Sie die Formel (siehe Beispielformel) in den Formel-Zeichenbereich ein. Klicken Sie dann auf die Schaltfläche Syntax prüfen, um sicherzustellen, dass keine Fehler vorliegen.
 
Record Triggered.PNG
Record Triggered 2.PNG

Beispielformel:
AND({!$Record.Name}<>"DUMMY OPP",OR(ISNEW(),ISCHANGED({!$Record.CloseDate})))
Schritt 4: Wählen Sie im Abschnitt Flow für aktualisierte Datensätze in folgenden Fällen ausführen die Option Immer, wenn ein Datensatz aktualisiert wird und die Bedingungsanforderungen erfüllt.
Schritt 5: Wählen Sie in Flow optimieren für die Option Aktionen und verwandte Datensätze und klicken Sie dann auf Fertig.
Schritt 6: Fügen Sie ein Element vom Typ Datensätze abrufen hinzu.
a. Klicken Sie im Flow-Designer auf das Pluszeichen und wählen Sie das Element Datensätze abrufen aus.
b. Geben Sie im Feld Bezeichnung einen Namen für das Element ein (z. B. Dummy-Opportunity abrufen). Der API-Name wird automatisch ausgefüllt.
c. Wählen Sie im Dropdown-Menü Bedingungsanforderungen den Eintrag Alle Bedingungen sind erfüllt (AND) aus. Fügen Sie folgende Details als Ihre Filterbedingungen hinzu:
 
Erste Filterbedingung
  • Feld: Name
  • Operator: Gleich
  • Wert: DUMMY OPP
Zweite Filterbedingung
  • Feld: OwnerId
  • Operator: Gleich
  • Wert: {!$Record.OwnerId}
Dritte Filterbedingung
  • Feld: Schlusstermin
  • Operator: Gleich
  • Wert:  {!$Record.CloseDate}
d. Setzen Sie Wie viele Datensätze sollen gespeichert werden? auf Nur der erste Datensatz und Speichern von Datensatzdaten auf Alle automatisch speichern. Klicken Sie dann auf Fertig.

Get Records.PNG
image.png

Schritt 7: Fügen Sie das Element Entscheidung hinzu.
a. Klicken Sie im Flow-Designer auf das Pluszeichen und wählen Sie das Element Entscheidung aus.
b. Geben Sie im Feld Bezeichnung einen Namen für das Element ein (z. B. Datensatz gefunden?). Der API-Name wird automatisch ausgefüllt.
c. Ändern Sie den Namen von Neues Ergebnis zu Ja und legen Sie die Filter wie folgt fest: 
  • Variable: {!Retrieve_Dummy_Opportunity.Id}
  • Operator: Ist null
  • Wert: {!$GlobalConstant.False} 
d. Ändern Sie den Namen von Standardergebnis zu Nein (optional). Klicken Sie auf Fertig.
 
image.png

Schritt 8:  Beenden Sie den Flow in der Abzweigung Nein (Standard) des Elements "Entscheidung".
Schritt 9: Fügen Sie in der Abzweigung Ja ein Element Datensätze löschen hinzu. 
a. Klicken Sie im Flow-Designer unter dem Knoten Ja auf das Pluszeichen und wählen Sie das Element Datensätze löschen aus.
b. Geben Sie im Feld Bezeichnung einen Namen für das Element ein (z. B. Dummy-Opps löschen). Der API-Name wird automatisch ausgefüllt.
c. Wählen Sie im Abschnitt Wie sollen die zu löschenden Datensätze ermittelt werden? die Option In einer Datensatzvariablen oder Datensatzsammlungsvariablen gespeicherte IDs verwenden aus.
d. Geben Sie die Variable Datensatz abrufen ({!Retrieve_Dummy_Opportunity}) in das Feld Datensatz oder Datensatzsammlung ein und klicken Sie dann auf Fertig. 

image.png
 
Ihr durch einen Datensatz ausgelöster Flow sollte wie folgt aussehen: 
 

Schritt 10: Speichern und aktivieren Sie Ihren Flow.

Erstellen eines zweiten durch einen Datensatz ausgelösten Flows
Schritt 1: Klicken Sie auf den Zurück-Pfeil oben links im Zeichenbereich von Flow Builder und klicken Sie auf die Schaltfläche Neuer Flow.
Schritt 2: Setzen Sie das Objekt auf Opportunity und wählen Sie im Abschnitt Flow auslösen, wenn die Option Ein Datensatz gelöscht wird aus.
Schritt 3: Wählen Sie im Dropdown-Menü Bedingungsanforderungen den Eintrag Alle Bedingungen sind erfüllt (AND) aus und fügen Sie die folgenden Details als Ihre Eintrittsbedingungen hinzu:
  • Feld: Name
  • Operator: Ungleich
  • Wert: DUMMY OPP

Delete Element.PNG

Schritt 4: Klicken Sie auf Fertig.
Schritt 5: Fügen Sie dem Zeichenbereich das Element Datensätze abrufen hinzu.
a. Klicken Sie im Flow-Designer auf das Pluszeichen und wählen Sie das Element Datensätze abrufen aus.
b. Geben Sie im Feld Bezeichnung einen Namen für das Element ein (z. B. Datensatz gefunden?). Der API-Name wird automatisch ausgefüllt. Fügen Sie folgende Details als Ihre Filterbedingungen hinzu:

Erste Filterbedingung
  • Feld: Name
  • Operator: Ungleich
  • Wert: DUMMY OPP
Zweite Filterbedingung
  • Feld: Schlusstermin
  • Operator: Gleich
  • Wert: {!$Record.CloseDate}
Dritte Filterbedingung
  • Feld: OwnerId
  • Operator: Gleich
  • Wert: {!$Record.OwnerId}
Vierte Filterbedingung
  • Feld: ID
  • Operator: Ungleich
  • Wert: {!$Record.Id}
Fünfte Filterbedingung
  • Feld: Schlusstermin
  • Operator: Kleiner als oder gleich
  • Wert: {!$Flow.CurrentDate}
d. Setzen Sie Wie viele Datensätze sollen gespeichert werden? auf Nur der erste Datensatz und Speichern von Datensatzdaten auf Alle automatisch speichern. Klicken Sie auf die Schaltfläche Fertig.

Hinweis: Entfernen Sie den letzten Filter, wenn Sie auch zukünftige DUMMY OPP-Datensätze erstellt haben.
 
Edit Get Records.png

Schritt 6: Fügen Sie das Element Entscheidung hinzu.
a. Klicken Sie im Flow-Designer auf das Pluszeichen und wählen Sie das Element Entscheidung aus.
b. Geben Sie im Feld Bezeichnung einen Namen für das Element ein (z. B. Datensatz gefunden?). Der API-Name wird automatisch ausgefüllt.
c. Ändern Sie den Namen von "Neues Ergebnis" zu Ja und legen Sie die Filter wie folgt fest:
  • Feld: {!Retrieve_opportunities.Id}
  • Operator: Ist null
  • Wert: {!$GlobalConstant.False}
d. Ändern Sie den Namen von Standardergebnis zu Nein (optional). Klicken Sie auf Fertig.
 
Record Found.PNG

Schritt 7: Beenden Sie den Flow in der Abzweigung Ja.
Schritt 8: Fügen Sie in der Abzweigung Nein der Entscheidung das Element Datensätze erstellen hinzu, um die Dummy-Opportunity ähnlich wie beim ersten durch einen Zeitplan ausgelösten Flow zu erstellen. Setzen Sie dieses Mal aber den Schlusstermin auf {!$Record.CloseDate}. Klicken Sie auf Fertig.
 
Edit Create Records.png

Ihr zweiter durch einen Datensatz ausgelöster Flow sollte wie folgt aussehen:
 

Schritt 9: Speichern und aktivieren Sie Ihren Flow.
 
Sie können nun einen Bericht über Opportunities erstellen, die einen Schlusstermin bis heute haben.  Wenn Sie eine Dummy-Opportunity für zukünftige Daten erstellt haben, können Sie den Datumsbereich im Bericht in die Zukunft setzen. Anstatt die Anzahl der Datensätze im Bericht zu verwenden, sollten Sie die Summe des Formelfelds verwenden, das Sie zu Beginn erstellt haben. Stellen Sie außerdem sicher, dass Sie den Umschalter für Zeilenzahlen in die ausgeschaltete Position setzen.



Sie können auch einen Bericht über das Betragsfeld erstellen, das in einem Diagramm als 0 angezeigt wird, da es in den Flows nicht festgelegt ist. 



Hinweis: Diese Lösung kann ziemlich viel Speicherplatz verbrauchen. Stellen Sie daher sicher, dass Sie nicht benötigte Dummy-Datensätze regelmäßig löschen.

_____________________________________________________


Verfasst von: Eric Praud | Salesforce MVP
Eric ist ein Senior Consultant bei Epam PolSource und arbeitet seit 12 Jahren im Salesforce-Ökosystem. Er begann seine Salesforce-Karriere als Salesforce-Supportagent. Wie viele andere ist er zufällig auf die Plattform gestoßen und hat dies keinesfalls bereut. Eric ist sehr aktiv in der Answers-Community und ist seit März 2021 Salesforce MVP.


Die Übermittlung spiegelt nur die Meinung des Benutzers wider, der die Übermittlung zur Verfügung gestellt hat, und nicht die Meinung von Salesforce, unabhängig davon, ob der Benutzer mit Salesforce verbunden ist, und kann Produkte, Services, Informationen, Daten, Inhalte und andere Materialien enthalten oder darstellen, die von oder im Namen von Dritten zur Verfügung gestellt werden ("Materialien von Dritten"). Salesforce kontrolliert und befürwortet keine Materialien von Dritten und ist auch nicht für diese verantwortlich, einschließlich ihrer Genauigkeit, Gültigkeit, Aktualität, Vollständigkeit, Zuverlässigkeit, Integrität, Qualität, Rechtmäßigkeit, Nützlichkeit oder Sicherheit sowie der anwendbaren geistigen Eigentumsrechte. Jegliche Übermittlung, die über eine Nachrichtenseite oder ein Forum als Antwort auf gepostete Fragen zur Verfügung gestellt wird oder die anderweitig den Anschein erweckt, Fragen zu beantworten, einschließlich Fragen zu Salesforce oder Programmen, wird nur zu Ihrer allgemeinen Kenntnis zur Verfügung gestellt und sollte niemals als alleinige Antwort auf Ihre spezifischen Fragen verwendet werden (selbst wenn eine Antwort als "beste Antwort" oder Ähnliches gekennzeichnet ist). Sie sollten sich immer an den Salesforce-Support wenden, um Antworten auf Ihre spezifischen Fragen zu erhalten. Salesforce hat keine Kontrolle über Übermittlungen und ist nicht verantwortlich für die Nutzung oder den Missbrauch (einschließlich der Verbreitung) von Übermittlungen durch Dritte.

Wenn Sie Fragen haben, können Sie hier auf das Wissen unserer gesamten Trailblazer-Community zurückgreifen: https://trailhead.salesforce.com/trailblazer- community/feed

Nummer des Knowledge-Artikels

000395398

 
Laden
Salesforce Help | Article