Berechnen von Werten in Variablen und Formeln
Lernziele
Nachdem Sie diese Lektion abgeschlossen haben, sind Sie in der Lage, die folgenden Aufgaben auszuführen:
- Verketten zweier Textwerte in einem Flow
- Addieren und Subtrahieren von Zahlen- und Datumswerten in einem Flow
- Erstellen einer Formel zum Berechnen dynamischer Werte in einem Flow
- Erläutern, warum Sie ggf. eine Formel in einem Flow verwenden
Ändern von Daten mit dem Element "Assignment" (Zuweisung)
Das Element "Assignment" (Zuweisung) kann vorhandene Variablendaten nicht nur ganz ersetzen, sondern auch ändern.
Kombinieren von Text
Wenn der Datentyp einer Variablen "Text" lautet, können Sie "Add" (Hinzufügen) als Operator des Elements "Assignment" (Zuweisung) auswählen. Mit dem Operator "Add" (Hinzufügen) können Sie Text am Ende des aktuellen Werts hinzufügen.
Der Flow "Set Shipping Address" (Lieferadresse festlegen) funktioniert recht gut, doch jetzt möchte Flo wissen, wie aktuell die Lieferadresse ist. Wir fügen im Zuweisungselement "Copy Address" (Adresse kopieren) nun eine Zeile hinzu, die eine Notiz an das Feld "Description" (Beschreibung) des Accounts anhängt, die das Datum angibt, an dem die Lieferadresse zum Account hinzugefügt wurde. Wir möchten den aktuellen Inhalt des Felds "Description" (Beschreibung) dabei nicht ersetzen, sondern nur am Ende eine Notiz anhängen. Beachten Sie jedoch, dass Salesforce Textvariablen nicht mit Nicht-Text-Ressourcen, wie Datumsvariablen oder Zahlenfeldern, kombinieren kann. Um Nicht-Text-Daten hinzuzufügen, erstellen Sie eine Formel, die die Funktion TEXT() verwendet, um den Nicht-Text-Wert in Text zu konvertieren.
Erstellen wir zunächst eine Formel, die den zusätzlichen Text enthält.
- Klicken Sie auf
, um die Toolbox einzublenden.
- Klicken Sie auf New Resource (Neue Ressource).
- Wählen Sie für "Resource Type" (Ressourcentyp) Formula (Formel) aus.
- Geben Sie als "API Name" (API-Name)
frmChangeDateNote
ein.
- Legen Sie "Data Type" (Datentyp) auf Text fest. (Wir fügen zwar ein Datum hinzu, doch das Endergebnis muss vom Datentyp "Text" sein, damit wir es zu einem Textfeld hinzufügen können.)
- Geben Sie in das Feld "Formula" (Formel) folgenden Text ein:
" Shipping Address added on " & TEXT()
([" Lieferadresse hinzugefügt am " & TEXT()) - Platzieren Sie den Cursor innerhalb der Klammern ( ).
- Wählen Sie im Feld "Insert a resource…" (Ressource einfügen) $Flow > Current Date (Aktuelles Datum) aus.
- Klicken Sie auf Check Syntax (Syntax prüfen).
Die Syntaxprüfung ist besonders hilfreich bei der Erkennung von Fehlern in langen, komplexen Formeln mit geschachtelten Funktionen.
- Klicken Sie auf Done (Fertig).
Bevor wir mit dem nächsten Schritt fortfahren, sollten wir kurz pausieren und uns ein paar Dinge in dieser Formel ansehen.
- Beachten Sie die Leerzeichen am Anfang und am Ende des Satzes in Anführungszeichen. Die Leerzeichen trennen den neuen Ausdruck von dem Text, der sich bereits im Feld "Description" (Beschreibung) befindet, und vom nachfolgenden Datum. Ohne ein Leerzeichen am Ende würde der Flow die Beschreibung beispielsweise auf folgenden Wortlaut einstellen: "Shipping Address added on03-02-2023" ("Lieferadresse hinzugefügt am02.03.2023").
- Das
&
weist die Formel an, den Text davor und danach zu kombinieren, ähnlich wie wir es mit dem Operator "Add" (Hinzufügen) der Zuweisung tun.
- Die Funktion
TEXT()
wandelt ihren Inhalt in Text um, der dann in einem Textfeld verwendet werden kann.
Als Nächstes fügen Sie die Zeile zum Hinzufügen von Text zur Zuweisung "Copy Billing Address" (Rechnungsadresse kopieren) hinzu.
- Klicken Sie auf das Element "Copy Billing Address" (Rechnungsadresse kopieren) und wählen Sie Edit Element (Element bearbeiten) aus.
- Klicken Sie auf + Add Assignment (+ Zuweisung hinzufügen).
- Wählen Sie im Feld "Variable" erst Account from Get Account Data (Account aus "Account-Daten abrufen") und dann Account Description (Accountbeschreibung) aus. Wir legen das Feld "Description" (Beschreibung) der Accountvariablen hier fest, da sich die Variable ändert.
- Wählen Sie im Feld "Operator" Add (Hinzufügen) aus.
- Wählen Sie im Feld "Value" (Wert) frmChangeDateNote aus. Wir wählen die Formel hier aus, da sie den Textwert enthält, den wir zur Beschreibung hinzufügen.
- Speichern Sie den Flow.
Wenn das Element "Update Records" (Datensätze aktualisieren) jetzt den Account aktualisiert, umfasst die Änderung auch die geänderte Beschreibung.
Durchführen einfacher Berechnungen
Sie können den Operator "Add" (Hinzufügen) auch verwenden, um etwas zu einer Variablen vom Datentyp "Zahl" oder "Währung" hinzuzufügen. Dabei erfolgen jedoch echte mathematische Berechnungen: Wenn Sie also die Zahlenwerte 4 und 2 kombinieren, erhalten Sie 6 und nicht die Zahl 42. Sie können auch den Operator "Subtract" (Subtrahieren) verwenden, um von Variablenwerten vom Datentyp "Zahl" oder "Währung" zu subtrahieren.
Das folgende Element "Assignment" (Zuweisung) subtrahiert beispielsweise einen Rabatt vom Betrag einer Opportunity. Der "Amount" (Betrag) der Opportunity-Variable wird in das Feld "Variable" eingetragen, da dies der Wert ist, der sich ändert. Als Operator ist Subtract (Subtrahieren) eingestellt. Zum Schluss wird die Variable mit dem Rabattbetrag in das Feld "Value" (Wert) eingetragen.
Sehen Sie sich jedoch auch die zweite Zeile an: Sie fügt etwas zu einem Datumsfeld hinzu. Sie können die Operatoren "Add" (Hinzufügen) und "Subtract" (Subtrahieren) auch verwenden, um Tage zu einem Datumswert zu addieren bzw. davon zu subtrahieren. Dieses Zuweisungselement addiert zwei Tage zum Abschlussdatum der Opportunity.
Automatisches Berechnen von Änderungen mit Formeln
Als Sie die Formel "frmChangeDateNote" erstellt haben, kombinierte das Symbol &
zwei Texte miteinander, entsprach in seiner Funktionsweise also dem Operator "Add" (Hinzufügen) in einer Zuweisung. Warum haben wir also nicht das Symbol &
verwendet, um das Datum direkt an das Feld "Description" (Beschreibung) anzuhängen? Das &-Symbol funktioniert nur in Formeln, und "Description" (Beschreibung) ist ein langes Textfeld. In Flow-Formeln lässt Salesforce keine langen Textfelder zu, da sie leicht die Berechnungsgrenze für Formeln überschreiten können.
Diese Einschränkung ist ein Beispiel für die Grenzwerte und Komplikationen bei Formeln in Flows. Für Flow-Formeln gilt eine begrenzte Berechnungszeit und eine begrenzte Anzahl von Zeichen, was komplexe Formeln von Natur aus riskant macht. Außerdem können Formeln, im Gegensatz zu Variablen, nicht mitten im Flow geändert werden. Wann empfiehlt es sich also, eine Formel zu verwenden?
Stellen Sie sich Formeln wie die seltsamen Schraubendreher in Ihrem Werkzeugkasten vor, deren Köpfe Formen haben, die Sie noch nie gesehen haben. Sie benutzen sie vielleicht nicht oft, aber wenn Sie tatsächlich einmal auf eine Schraube treffen, für die Sie einen solchen Kopf benötigen, sind Sie froh, dass Sie dieses Spezialwerkzeug haben! Mit anderen Worten: In der Regel sollten Sie Formeln in Situationen verwenden, die nur mit einer Formel gelöst werden können.
Die Formel "frmChangeDateNote" ist ein gutes Beispiel für diese Regel. Wir können nicht einfach ein Element "Assignment" (Zuweisung) verwenden, um das Datum an die Beschreibung anzuhängen, da das Datum zunächst in einen Textwert umgewandelt werden muss. Für diese Umwandlung benötigen wir die Funktion TEXT() der Formel.
Ressourcen
- Trailhead: Formeln und Validierungen (Verwenden von Formelfeldern)
- Salesforce-Hilfe: Überlegungen zu Flow-Formeln