Überblick

Der Process Builder in Salesforce ist ein grafisches Point-and-Click-Tool, mit dem Sie Aktionen basierend auf dem Auslösen von Ereignissen in Ihrer Salesforce-Umgebung automatisieren können.

Prozesse basieren auf einem If/Then-Typ des Logikflusses und enthalten ein -Trigger-Ereignis, mindestens eine Bedingung und mindestens eine Aktion. Dies kann in Echtzeit und/oder als geplantes Ereignis geschehen.

Adobe Sign unterstützt zwei Aktionstypen: Aktualisieren von Datensätzen und Apex

Jeder Aktionstyp verfügt über mehrere aufrufbare Aktionen:

  • Send
  • Cancel
  • Delete
  • Remind
  • Update
  • Laden (Vorlage) ist nur bei Verwendung des Apex-Aktionstyps verfügbar.

Der Process Builder ist ein sehr leistungsfähiges Tool und die vollständige Beschreibung seiner Funktionsweise würde den Rahmen dieses Dokuments sprengen.

In diesem Dokument werden die Aktionen aufgeführt, die in Version 20 des Adobe Sign für Salesforce-Pakets verfügbar sind.

Wenn Sie mehr über den Process Builder im Allgemeinen erfahren möchten, stehen in Salesforce die Dokumentation und ein interaktiver Trailhead zur Verfügung.


Prozesse, die „Datensätze aktualisieren“ als Aktionstyp verwenden

Bei diesem Ansatz wird im Salesforce Process Builder der Aktionstyp „Datensätze aktualisieren“ verwendet, um das Auswahllistenfeld für Hintergrundaktionen im Vereinbarungsdatensatz festzulegen und eine Aktion aufzurufen.

Es kann ein neuer Prozess erstellt werden (basierend auf Datensatzänderungsereignissen), der dann eine Aktion für eine zugehörige Adobe Sign-Vereinbarung aufrufen kann. Benutzer können steuern, wann die Aktion ausgeführt wird (d. h. Nach welcher Feldaktualisierung im Stammsatz) und welche zugehörigen Vereinbarungen für die Aktion ausgewählt werden.

 

Derzeit werden folgende Aktionen unterstützt:

  • Send
  • Cancel
  • Delete
  • Remind
  • Update

Folgendes ist zu beachten:

  • Jeder während des Vorgangs erkannte Fehler wird im Feld Fehlermeldung gespeichert und kann auf der entsprechenden Seite der Vereinbarung angezeigt werden.
  • Geplante Aktionen werden unterstützt.
  • Adobe Sign-Bibliotheksdokumente werden unterstützt.
  • Es können ein oder mehrere über- oder untergeordnete Vereinbarungen ausgewählt werden.
  • Beim Aktualisieren eines Vereinbarungsdatensatzes ist der zugehörige Datensatz das Objekt echosign_dev1.
    • Das Objekt echosign_dev1 ist den allgemeinen Salesforce-Objekten (Konto, Opportunity, Kontakt usw.) zugeordnet. Wenn sich die Vereinbarungen auf ein benutzerdefiniertes Objekt beziehen, ist dieser Name für die Organisation eindeutig.
the_agreement_objectwhenupdatingrecords
  • Aktionen werden ausgelöst, indem das Auswahllistenfeld Hintergrundaktion im Vereinbarungsdatensatz mit dem entsprechenden Aktionswert aktualisiert wird.
background_action
Einschränkungen:
  • Der Vereinbarungsdatensatz muss bereits vorhanden sein. Er kann nicht mit einem Aktionstyp „Datensätze aktualisieren“ aus einer Vereinbarungsvorlage erstellt oder geladen werden.


Prozesse, die Apex als Aktionstyp verwenden

Bei diesem Ansatz wird der Apex-Aktionstyp im Salesforce Process Builder verwendet, um eine im verwalteten Paket enthaltene aufrufbare Methode aufzurufen und die entsprechende Aktion auszuführen. 

Es kann ein neuer Prozess erstellt werden (basierend auf Datensatzänderungsereignissen), der dann eine Aktion für eine zugehörige Adobe Sign-Vereinbarung aufrufen kann.

Die folgenden aufrufbaren Aktionen wurden definiert:

  • Aufrufbare Aktion zum Laden von Vereinbarungsvorlagen
    • AgreementTemplateLoadInvocableAction.load
      • Übergeben Sie die Vorlagen- und Master-IDs sowie alle Laufzeitvariablen.
      • Übergeben Sie einen optionalen Parameter, um zu steuern, ob die Vorlagengenerierung im asynchronen Modus ausgeführt wird.
        • Erforderlich, wenn die Vorlage ein Dokument aus der Adobe Sign-Bibliothek enthält
      • Geben Sie die ID des generierten Vereinbarungsdatensatzes oder eine Fehlermeldung zurück.
        • Der Fehler ist für die Benutzer, die die Trigger-Aktion ausführen, nicht sichtbar.

Beim Aufrufen der Klasse Vereinbarungstyp laden können vier Feldoptionen konfiguriert werden:

  • Stammdatensatz-ID – Die Salesforce-Datensatz-ID des Objekts, auf das sich die Vereinbarung beziehen soll. 
    • Normalerweise wird Feldreferenz und der Wert „[Object].Id“ festgelegt, wobei Objekt Opportunity, Konto usw. ist.
  • Vereinbarungsvorlagen-ID – Die Salesforce-Datensatz-ID der zu ladenden Vereinbarungsvorlage. Setzen Sie den Typ auf „ID“ und den Wert auf die Datensatz-ID.
  • Laufzeitvariablen für Vereinbarungsvorlagen – Empfänger und/oder Dokumente aus einer Variablen. 
    • Eine Variable: myRecipient=auserguy@adobe.com
    • Zwei Variablen: myRecipient=auserguy@adobe.com,myAttachment=00Pf4000002df0q
  • Asynchrone Verarbeitung – Optional, nur bei Bedarf angeben. Standardmäßig ist dies false, sodass der Vorlagenaufruf im Synchronisationsmodus ausgeführt wird (d. h. mit derselben Transaktion/demselben Thread). 
    • Setzen Sie die Einstellung auf „True“, wenn Ihre Vereinbarungsvorlage ein Adobe Sign-Bibliotheksdokument lädt.
    • Stellen Sie sicher, dass der Wert „False“ ist, wenn AutoSend für das Template „True“ ist.
    • Sie können nicht gleichzeitig automatisch Dokumente aus der Adobe Sign-Bibliothek senden.
    • Beachten Sie die integrierten Salesforce-Einschränkungen, wenn der Prozess über einen Stapel oder einen anderen asynchronen Prozess aufgerufen wird.

 

load_template_variables
  • Vereinbarung Abbruch der aufrufbaren Aktion
    • AgreementCancelInvocableAction.cancelAgreement
      • Geben Sie die Vereinbarungs-ID ein.
      • Gibt eine Fehlermeldung zurück.
  • Vereinbarung Löschen der aufrufbaren Aktion
    • AgreementDeleteInvocableAction.deleteAgreement
      • Geben Sie die Vereinbarungs-ID ein.
      • Gibt eine Fehlermeldung zurück.
  • Vereinbarung Erinnerung an aufrufbare Aktion
    • AgreementRemindInvocableAction.sendReminder
      • Geben Sie die Vereinbarungs-ID ein.
      • Gibt eine Fehlermeldung zurück.
  • Vereinbarung Senden der aufrufbaren Aktion
    • AgreementSendInvocableAction.sendAgreement
      • Geben Sie die Vereinbarungs-ID ein.
      • Gibt eine Fehlermeldung zurück.
  • Vereinbarung Update der aufrufbaren Aktion
    • AgreementUpdateInvocableAction.updateAgreement
      • Geben Sie die Vereinbarungs-ID ein.
      • Gibt eine Fehlermeldung zurück.

Für die Aktionen Abbrechen, Löschen, Erinnern, Senden und Aktualisieren ist nur die Vereinbarungs-ID der Vereinbarung erforderlich, für die eine Aktion ausgeführt werden soll:

apex_variables


Folgendes sollten Sie beachten:

  • Geplante Aktionen werden unterstützt.
  • Vereinbarungsvorlagen mit automatischem Senden werden unterstützt (d. h. Generieren und Senden).
  • Alle Aktionen können mehrere Anforderungen in einem Aufruf akzeptieren.
  • Alle Ausnahmen werden abgefangen und im Ergebnisdatensatz gespeichert und als Fehler im Apex-Debugging-Protokoll protokolliert, um zu vermeiden, dass die Ausführung des Prozesses blockiert wird.
  • Der Parameter für die Funktion Vorlage laden (Asynchrone Verarbeitung) steuert, ob die Vorlagenverarbeitung im synchronen oder im asynchronen Modus erfolgt. Der Aufrufer muss angeben, ob das Laden der Vorlage im synchronen oder im asynchronen Modus ausgeführt werden soll.
    • Der Standardprozess wird im synchronen Modus ausgeführt. Der Großteil der Prozesse sollte synchron ablaufen.
    • Wenn Automatisch senden aktiviert ist, muss sich der Prozess im synchronen Modus befinden.
    • Ein nennenswerter asynchroner Prozess wäre das Laden eines Adobe Sign-Bibliotheksdokuments.

 

Einschränkungen:

  • Die Kombination von Vorlagen automatisch senden und Adobe Sign-Bibliotheksdokumenten wird nicht unterstützt, da in Salesforce ein Thread keinen anderen Thread auslösen kann.
  • Auf Parameter, die an die aufrufbare Aktion übergeben werden, kann nur auf übergeordnete Felder (nicht auf untergeordnete Felder) verwiesen werden. Sie können keine Aktionen für untergeordnete Vereinbarungen unter einem Stammsatz ausführen.
  • Rückgabewerte aus einem Apex-Aufruf können nicht in einem Process Builder verwendet werden. Es werden keine Aktionen unterstützt, die einen Wert zurückgeben (d. h. Dokumentinformationen abrufen oder Signatur-URL abrufen).


Queueable-Service

Es wurde eine neue Serviceebene implementiert, um die Vereinbarungsaktionen über die Salesforce-Warteschlangenschnittstelle aufzurufen. Weitere gute Informationen zu Queueable finden Sie hier. Die Aktionen rufen die Kerndienst-APIs auf, die dann die Adobe Sign-API aufrufen. 

Die folgenden Aktionen werden unterstützt:

  • Send
  • Cancel
  • Delete
  • Remind
  • Update

Der globale echosign_dev1.AdobeSignApiQueueableService ist die Service-Apex-Klasse, die einen Parameter vom Typ echosign_dev1.QueueableServiceParameter aufnimmt, der die aufzurufende Aktion und die ID des Vereinbarungsdatensatzes enthält:

 

echosign_dev1.AdobeSignApiQueueableService.QueueableServiceParameter param = new echosign_dev1.AdobeSignApiQueueableService.QueueableServiceParameter();

param.actionType = EchoSignApiService.ACTION_TYPE.AGREEMENT_REMIND;
param.agreementId = 'a0I0S000000KwkaUAC';

ID jobID = System.enqueueJob(new echosign_dev1.AdobeSignApiQueueableService(param));