Salesforce Blog

Salesforce Validierungsregeln Tipps

Inhaltsverzeichnis

Worauf muss ich bei Salesforce Validierungsregeln achten? In diesem Blogbeitrag geben wir für Salesforce Validierungsregeln Tipps und Tricks und liefern Beispiele.

Was ist eine Validierungsregel?

Eine Validierungsregel ist eine sogenannte “Speicherverhinderungsregel”. Wenn ich also möchte, dass ein Datensatz mit bestimmten Eingaben nicht gespeichert werden soll, dann verwende ich hierfür eine Validierungsregel.

Validierungsregel bestehen aus einem Rule Name, einer Error Condition Formula und einer Error Message.

Rule Name

Der Rule Name ist der Name der Validierungsregel. Es handelt sich hierbei um ein Textfeld mit 40 Zeichen. Du solltest dir also einen guten Namen überlegen, der deutlich macht was die Validierungsregel prüft. Um den Namen besser lesen zu können und Zeichen zu sparen, kann die Camel Case Schreibweise helfen.

Error Condition Formula

Die Error Condition Formula ist das Herzstück der Validierungsregel. Sie besteht, wie der Name bereits sagt aus einer Formel. Die Formel kann entweder wahr oder falsch als Resultat haben. Nur wenn die Formel wahr ist, wird der Datensatz nicht gespeichert und die Error Message wird dem Benutzer angezeigt.

  1. Du hast ein großes Formelfeld, in dem du die Formel schreiben kannst.
  2. Mit einem Klick auf den Insert Field Button kannst du Felder hinzufügen.
  3. Klickst du auf Insert Operator, kannst du Operatoren zur Formel hinzufügen.
  4. Unter Functions hast du die Möglichkeit nach Funktionen zu suchen und diese durch klicken auf den Button Insert Selected Function der Formel hinzuzufügen.

Error Message

  1. Gebe eine Error Message ein, die dem Benutzer angezeigt wird, wenn die Validierungsregel zieht und der Datensatz nicht gespeichert wird. Achte darauf, dass der Bentuzer durch den Text versteht welche Eingabe falsch war und was er machen muss.
  2. Wähle aus wo die Error Message angezeigt werden soll. Du hast die Möglichkeit ein Feld auszuwählen oder die Meldung oben auf der Seite anzeigen zu lassen.

Validierungsregeln richtig schreiben und verstehen

Bei Validierungsregeln ist es ganz wichtig zu verstehen, dass diese nur ausgelößt werden, wenn die Error Condition Formula wahr ist. Du musst dir also vorher genau überlegen wann ein Datensatz nicht gespeichert werden soll. Schreibe dir die Bedingung dafür auch gerne im Vorfeld als Text auf. Jetzt musst du diese Bedingung in eine Formel umwandeln, die wahr ist, wenn die Bedingung erfüllt ist.

Nehmen wir ein Beispiel. Du möchtest eine Validierungsregel erstellen, damit nur Opportunities mit einem positiven Amount gespeichert werden. Die Bedingung für einen Datensatz der nicht gespeichert werden soll lautet also, dass der Amount negativ ist. Die Error Condition Formula lautet in diesem Fall:

Amount < 0

Nur wenn der Amount kleiner als 0 (negativ) ist, ist die Validierungsregel wahr und der Opportunity Datensatz wird nicht gespeichert. Alle Opportunities mit einem positiven Amount werden in diesem Fall gespeichert, ohne dass die Validierungsregel ausgelöst wird.

Kommentieren in Validierungsregeln

Du kannst Kommentare in deinen Validierungsregeln hinzufügen. So hast du die Möglichkeit in komplexeren Validierungsregeln einige Argumente mit einem Kommentar zu erklären. Wenn du oder jemand anderes die Validierungsregel nach einiger Zeit wieder bearbeitet, bekommt ihr leichter einen Überblick.

Nutze vor dem Kommentar /* und nach dem Kommentar */. Der Kommentar wird so von Salesforce in der Validierungsregel nicht als Teil der Formel betrachtet und ist damit ausgeklammert. Anbei ein Beispiel von einem Kommentar in einer Validierungsregel:

Salesforce Validierungsregel Kommentar

Validierungsregeln übersichtlich aufbauen

Damit auch komplexere Validierungsregeln lesbar bleiben, achte darauf sie übersichtlich aufzubauen. Anbei einige wichtige Punkte, die es dabei zu beachten gilt:

  1. Wenn du mit Funktionen (z.B. AND oder OR) arbeitest, achte darauf, dass die Funktion mit der öffnenden Klammer in einer Zeile steht und die schließende Klammer in einer Zeile.
  2. Du kannst auch zusätzlich die einzelnen Funktionen einrücken, wenn du mehrere ineinander geschachtelte Funktionen in der Validierungsregel hast.
  3. Achte darauf, dass du immer nur ein Argument pro Zeile schreibst.
  4. Schreibe Kommentare immer direkt hinter das Argument, das sie beschreiben.

Auf diese Weise erschließt sich die Logik auf den ersten Blick deutlich besser. Anbei ein Beispiel einer Validierungsregel einmal ohne übersichtliche Struktur und einmal mit übersichtlicher Struktur.

Salesforce Validierungsregel unformatiert

Die Validierungsregel inklusive Kommentar ohne gesonderte Struktur. Auf den ersten Blick kann man nicht erkennen welche Funktionen und Argumente die Formel enthält.

Salesforce Validierungsregel formatiert

Die gleiche Validierungsregel mit den oben genannten Maßnahmen. Es ist deutlich einfacher die einzelnen Funktionen und Argumente zu erkennen und zu lesen. Wenn du dich an diese wenigen Vorgaben hältst, kannst du viel Zeit sparen, wenn du die Validierungsregel später noch einmal bearbeiten musst.

Salesforce Enhanced Formula Editor

Ein Tool, welches dir bei der Formatierung von Validierungsregeln helfen kann ist der Salesforce Enhanced Formula Editor. Der Enhanced Formula Editor bietet noch weitere Funktionen wie z.B. analysieren von Feldern, die in der Formel verwendet werden oder vorschlagen von Funktionen oder Feldern, wenn du in der Formel tippst.

Ich habe dir hier einen Blogbeitrag zu diesem Tool verlinkt. Hier der Link direkt zum Tool.

In Validierungsregeln vergleichen

Wenn du in Validierungsregeln vergleichen möchtest, achte darauf, dass du links immer das schreibst was du einschränken möchtest (das Feld) und rechts womit du einschränken möchtest (einen Wert). So kommst du nicht durcheinander und hast eine eindeutige Struktur für logische Vergleiche. Anbei ein Beispiel aus einer Validierungsregel:

Salesforce Validierungsregel Vergleich
  1. Links steht was wir einschränken möchten. In diesem Fall ist es das Feld Amount an der Opportunity.
  2. Rechts steht womit wir einschränken wollen. Im Beispiel kleiner 0 und größer 10 000 000.

Formelfelder in Validierungsregeln

Du hast die Möglichkeit Formelfelder in Validierungsregeln zu verwenden.

Dies kann sinnvoll sein, wenn du beispielsweise in der Validierungsregel etwas prüfen möchtest, was du bereits in einem Formelfeld prüfst. Oder du möchtest einen Teil der Logik aus einer Validierungsregel in ein Formelfeld auslagern, wenn du diese Logik in mehreren Validierungsregeln verwenden möchtest. Nehmen wir als Beispiel an, dass du bereits das Formelfeld HotPhase__c auf der Opportunity angelegt hast. Es ist eine Checkbox, die aktiviert wird, wenn die Opportunity in der Phase Negotiation/Review oder Proposal/Price Quote ist.

Salesforce Formelfeld

Das Formelfeld wird also aktiviert (ist wahr), wenn die Opportunity in einer der einen oder der anderen Phase ist.

Dieses Formelfeld können wir in unserer Validierungsregel verwenden, anstatt die gleiche Abfrage auch in der Validierungsregel zu schreiben. Anbei die Validierungsregel vorher:

Salesforce Validierungsregel ohne Formelfeld

Und die gleiche Validierungsregel nachher mit dem Formelfeld:

Salesforce Validierungsregel mit Formelfeld

Mit dem Formelfeld ist die Validierungsregel schlanker. In diesem Beispiel haben wir eine OR Funktion durch ein Formelfeld ersetzt. Es kann aber durchaus vorkommen, dass du auch mehrere verschachtelte AND und OR Funktionen durch ein Formelfeld ersetzen kannst, wenn du diese Logik in mehreren Validierungsregeln verwendest. Dies hat den Vorteil, dass die Validierungsregel leichter zu lesen ist und du die Logik nur einmal an einer Stelle anpassen musst (im Formelfeld), wenn sich etwas in der Logik ändern soll.

Du solltest dir allerdings immer vorher überlegen, ob du ein Custom Field anlegen möchtest, um Logik auszulagern.

Achte außerdem darauf, dass du klare Namen für Custom Fields vergibst. In unserem Beispiel heißt das Custom Field HotPhase__c. Es ist wahr, wenn die Opportunity in einer der beiden letzten Phasen ist (heiße Phase). In diesem Fall ist es relativ klar was das Feld bedeutet.

&&/|| oder AND/OR

Du hast die Möglichkeit Operatoren wie && oder || oder Funktionen wie AND oder OR in deiner Validierungsregel zu verwenden. Grundsätzlich kannst du beides verwenden. Du solltest aber darauf achten, dass du entweder Operatoren oder Funktionen verwendest, da es ansonsten unübersichtlich werden könnte.

Mit den Operatoren kannst du zwei Argumente einfach miteinander verknüpfen. Anbei ein Beispiel bei dem geprüft wird, ob die Stage “Negotiation/Review” ist und der Amount leer ist:

ISPICKVAL(StageName, "Negotiation/Review") && ISBLANK(Amount)

Mit Funktionen kannst du mehrere Argumente miteinander verknüpfen oder auch Funktionen ineinander verschachteln. Die Funktion wird immer mit einer Klammer geöffnet und mit einer Klammer geschlossen. Die einzelnen Argumente werden mit einem Komma voneinander getrennt. Anbei das gleiche Beispiel wie mit dem Operator als Funktion:

AND(

ISPICKVAL(StageName, "Negotiation/Review"),

ISBLANK(Amount)

)

Wenn du noch mehr über Operatoren und Funktionen erfahren möchtest, habe ich dir hier einen Blogbeitrag zu diesem Thema verlinkt.

Validierungsregeln für den Datenimport deaktivieren

Wenn du Daten in Salesforce importieren oder ändern willst, kann es sein, dass Validierungsregeln getriggert werden. Das kann beim importieren der Daten zu Fehlern führen, die verhindern, dass diese Datensätze gespeichert werden.

Um dies zu verhindern, kannst du natürlich alle Validierungsregeln manuell erst deaktivieren und später wieder aktivieren. Diesen hohen Aufwand kannst du mit einem Trick umgehen. Du brauchst hierzu eine Custom Permission, die du mit Hilfe eines Permission Sets an Benutzer vergeben kannst. Wenn du die Custom Permission in der Validierungsregel abfragst, wird diese deaktiviert, wenn der Benutzer das Permission Set zugewiesen hat. Ich habe dir hier einen Blogbeitrag mit einer Klick-zu-Klick Anleitung verlinkt.

Immer einen Schritt voraus

Die nächsten Kurstermine

ADX201
13.05.2024
ANC201
13.05.2024
DEX403
13.05.2024

Noch nicht im Verteiler?

Salesforce Profis

Bei Fragen sind wir da

Ähnliche Beiträge

Anfrage

Salesforce News

verveforce-icon-grau