Loading
Szenarien für die Objektstatusumstellung in Salesforce Contracts

Szenarien für die Objektstatusumstellung in Salesforce Contracts

Diese Szenarien enthalten wichtige Informationen, die Sie beim Konfigurieren von Aktionen für einen Vertrag berücksichtigen sollten.

Szenario 1

Der Vertragsstatus wird nicht geändert, da die Zuordnung von Apex-Klassenlogik und Statusumstellung nicht übereinstimmt. Beispiel:

  1. Vertrag befindet sich im Status "Entwurf".

  2. Sie konfigurieren Folgendes:

    • Eine Objektstatusaktionsdefinition mit Apex Type DraftToInApproval.

    • Eine Objektstatusumstellungsaktion von "Entwurf" zu "Genehmigung erfolgt" für die Aktion "Entwurf zu Genehmigung".

    • Eine Apex-Klasse namens ChangeStatus.apxc mit Logik, die den Vertrag von "Entwurf" in "Abgebrochen" verschiebt.

  3. Wenn Sie auf DraftToInApproval klicken, wird der Vertrag nicht von "Entwurf" zu "Genehmigung erfolgt" verschoben. Die Apex-Klasse führt die definierte Logik aus und verschiebt den Vertrag als Zwischenzustand von "Entwurf" in "Abgebrochen".

  4. Wenn der Objektstatusübergang einen Übergang enthält, der den Vertrag von "Abgebrochen" in "Genehmigt" versetzt, wird der Vertrag in den ursprünglichen Entwurfsstatus zurückversetzt.

    Hinweis
    Hinweis Wenn Sie den Vertrag vom Status "Entwurf" in "Genehmigung in" überführen möchten, müssen Sie einen Objektstatusübergang von "Abgebrochen" in "Genehmigung in" erstellen.
  5. Der endgültige Status des Vertrags lautet Entwurf.

Szenario 2

Der Vertragsstatus ändert sich, obwohl die Apex-Klassenlogik und die Zustandsumstellungszuordnung nicht übereinstimmen, da die Objektstatusumstellung alle erforderlichen Übergänge enthält. Beispiel:

  1. Vertrag befindet sich im Status "Entwurf".

  2. Sie konfigurieren Folgendes:

    • Eine Objektstatusaktionsdefinition mit Apex Type DraftToCanceled.

    • Eine Objektstatusumstellungsaktion von "Entwurf" zu "Abgebrochen" für die Aktion "Entwurf zu abgebrochen".

    • Eine Apex-Klasse namens StatusChange.apxc mit Logik, die den Vertrag von "Entwurf" in "Genehmigung in Bearbeitung" verschiebt.

  3. Wenn Sie auf DraftToCanceled klicken, wird der Vertrag von "Entwurf" zu "In Genehmigung" zu "Abgebrochen", da eine standardmäßige Umstellung von "InApproval_To_Canceled" vorliegt.

  4. Der endgültige Status des Vertrags lautet "Abgebrochen".

Szenario 3

Der Vertragsstatus wird nicht geändert, wenn Sie auf die Aktionsschaltfläche "Objektstatus" klicken, da der Vertragsstatus bereits durch die Ausführung der Apex-Klasse aktualisiert wurde. Beispiel:

  1. Vertrag befindet sich im Status "Entwurf".

  2. Sie konfigurieren Folgendes:

    • Eine Objektstatusaktionsdefinition mit Apex Type DraftToInApproval.

    • Eine Objektstatusumstellungsaktion von "Entwurf" zu "Genehmigung erfolgt" für die Aktion "Entwurf zu Genehmigung".

    • Eine Apex-Klasse namens ChangeStatus.apxc mit Logik, die den Vertrag von "Entwurf" in "Genehmigung in Bearbeitung" verschiebt.

  3. Wenn Sie auf DraftToInApproval klicken, da sich der Vertrag bereits im Genehmigungsprozess befindet, da die Apex-Klasse bereits die in der Klasse definierte Logik ausgeführt hat, die den Vertrag als Zwischenzustand vom Entwurf in die Genehmigung versetzt. Daher bleibt der Vertragsstatus In Genehmigung, da er einen gültigen Status aufweist.

  4. Der endgültige Status des Vertrags lautet "In Genehmigung".

Szenario 4

Einer Objektstatusdefinition sind mehrere Objektstatusumstellungsaktionen zugeordnet. Die Aktionen für die Objektstatusumstellung weisen denselben Status "Von" und unterschiedliche Status "An" auf. Die Anwendung Salesforce Contracts aktualisiert den Status von Verträgen anhand der definierten Übergänge und Aktionen. Wenn Unterschiede zwischen Apex-Klassenlogik und definierten Übergängen bestehen, versucht die Anwendung, die definierten Übergänge zu befolgen. Beispiel:

  1. Vertrag befindet sich im Status "Entwurf".

  2. Sie konfigurieren Folgendes:

    • Eine Objektstatusaktionsdefinition mit Apex Type DraftToFinalStatus.

    • Eine Objektstatusumstellungsaktion von "Entwurf" auf "Genehmigung erfolgt" für die Aktion "DraftToFinalStatus".

    • Eine Objektstatusumstellungsaktion von "Entwurf" auf "Aktiviert" für die Aktion "EntwurfToFinalStatus".

  3. Im Folgenden finden Sie zwei Optionen zum Konfigurieren einer Apex-Klasse und ihrer resultierenden Ergebnisse.

    Hinweis
    Hinweis Damit die Apex-Aufrufe in diesem Szenario erfolgreich sind, ist der Parameter finalStatusValue obligatorisch.
    Option Szenarien
    Erstellen Sie eine Apex-Klasse namens ChangeStatus.apxc mit Logik, die den Vertrag von "Entwurf" in "Genehmigung in Bearbeitung" verschiebt.
    • Wenn finalStatusValue auf "Genehmigungsprozess im Gange" festgelegt ist, wird der Vertrag von "Entwurf" zu "Genehmigungsprozess im Gange" verschoben.

    • Wenn finalStatusValue auf "Aktiviert" festgelegt ist, schlägt die Umstellung fehl, da der Pfad nicht von "Genehmigungsprozess im Gange" zu "Aktiviert" definiert ist. Der Vertrag befindet sich weiterhin im Status "Entwurf".

    Erstellen Sie eine Apex-Klasse namens ChangeStatus.apxc mit Logik, die den Vertrag von "Entwurf" in "Aktiviert" verschiebt.
    • Wenn finalStatusValue auf "Aktiviert" festgelegt ist, wird der Vertrag von "Entwurf" zu "Aktiviert" verschoben.

    • Wenn finalStatusValue auf In Approval Process (Genehmigungsprozess) festgelegt ist, schlägt die Umstellung fehl, da der Pfad nicht von Activated (Aktiviert) zu In Approval Process (Genehmigungsprozess) definiert ist. Der Vertrag befindet sich weiterhin im Status "Entwurf".

 
Laden
Salesforce Help | Article