Sie befinden sich hier:
InsPolicyService:invokeRules
Verwenden Sie diesen Service, um Statusumstellungsregeln aufzurufen, die einer Zielstatustransaktion für eine Zielrichtlinie zugeordnet sind. Wenn die Regeln die Umstellungskriterien erfüllen, führt dieser Service Aktionen aus, die mit der Umstellung verknüpft sind, protokolliert optional die Ergebnisse der Regelausführungen und versetzt die Zielrichtlinie in den neuen Zustand.
Funktionsweise
-
Dieser Service ruft das durch die Option policyId angegebene Objekt ab.
-
Basierend auf dem Objekttyp, dem aktuellen Status des Objekts und der Option toState wird der Zielzustandsübergang bestimmt.
-
Bei der Statusumstellung, bei den Statusumstellungsregeln und bei den Aktionen für die Statusumstellungsregel werden Produktregeln abgerufen und ausgeführt.
-
Wenn die Regeln für die Zustandsumstellung die Kriterien für den Abschluss der Umstellung erfüllen, die bei der Zustandsumstellung angegeben sind, wird das Objekt in den Status übergeführt.
Wenn dem Zustandsübergang eine Aktion zugeordnet ist, wird diese Aktion ausgeführt.
Wenn die Kriterien für den Abschluss der Umstellung nicht erfüllt sind, wird das Objekt in den Status Alternate (alternativ) versetzt, der in der Statusumstellung angegeben ist, sofern vorhanden. Wenn der Zustandsübergang keinen alternativen Status aufweist, behält das Objekt seinen aktuellen Status bei.
-
Wenn die Option logResults angegeben ist, werden die Ergebnisse aus jeder Regel und das Ergebnis der Objekttransaktion (Erfolg oder Fehler) protokolliert.
Remote-Optionen
Option |
Beschreibung |
|---|---|
policyID |
Pflichtangabe. ID der Zielrichtlinie, auf die Regeln angewendet werden sollen |
toState |
Erforderlich Bundesstaat, in den das Zielobjekt anhand von Kriterien für die Bundesstaatsumstellung verschoben werden soll |
lastDefaultState |
Optional Name des letzten Standardstatus des Zielobjekts |
invokeStateTransitionRules |
Optional true Verwenden Sie diese Option, um Statusumstellungsregeln aufzurufen. Dies ist die Standardeinstellung. false Verwenden Sie diese Option, wenn Sie keine Regeln für die Statusumstellung aufrufen möchten. |
invokeProductRules |
Optional true Verwenden Sie diese Option, um Produktregeln aufzurufen. Dies ist die Standardeinstellung. false Verwenden, wenn Sie keine Produktregeln aufrufen möchten. |
invokeActionType |
Optional Wenn angegeben, wird der Typ der Aktionen angegeben, die aufgerufen werden sollen, wenn die Kriterien erfüllt sind. Die Standardeinstellung lautet Standardeinstellung. Standard: Nur Standardaktionen ausführen, die der Statusumstellung zugeordnet sind alle Alle Aktionen ausführen, die mit der Statusumstellung verknüpft sind keine Aufrufen von Aktionen im Zusammenhang mit der Zustandsumstellung |
actionScope |
Optional Wenn angegeben, wird angegeben, ob aufgerufene Aktionen in der aktuellen Statusmodellversion oder in beliebigen Statusmodellversionen definiert werden müssen. Die Standardeinstellung lautet Version. Version Nur Aktionen ausführen, die der aktuellen Statusmodellversion zugeordnet sind alle Aktionen ausführen, die einer beliebigen Statusmodellversion zugeordnet sind |
logResults |
Optional true Verwenden Sie diese Option, um Ergebnisse protokollieren zu lassen. Dies ist die Standardeinstellung. false Verwenden, wenn Sie keine Ergebnisse protokollieren möchten. |
fromNoneState |
Optional Das Objekt true wechselt vom Status Keine. "false Object" geht nicht vom Status "Keine" über. Dies ist die Standardeinstellung. |
Input JSON
Im folgenden Beispiel wird die Beispiel-Eingabe-JSON gezeigt.
{
"objectId": "02i3h0000009OqCAAU",
"toState": "Review",
"lastDefaultState": "Draft",
"invokeActionType": "draft",
"actionScope": "version",
"logResults": true,
"fromNoneState": false
}Ausgabe-JSON
Das folgende Beispiel zeigt die JSON-Beispielausgabe.
{
"transition": true,
"transitedState": "Review",
"stateTransitionRules": {
"result": true,
"ruleDetails": [{
"result": true,
"conditions": "Asset.Status == 'Draft'",
"name": "Status is Draft",
"ruleId": "a5Q6g0000005vSPEAY",
"transitionName": "Draft > Review",
"objId": "02i3h0000009OqCAAU"
}, {
"result": false,
"conditions": "Asset.Name == 'Test'",
"name": "Name is Test",
"ruleId": "a5Q6g0000005vSPEAZ",
"transitionName": "Draft > Review",
"objId": "02i3h0000009OqCAAU"
}]
},
"productRules": {
"allFalse": false,
"trueRules": {
"Asset": [{
"ruleDetails": {
"ruleId": "a5Q6g0000005vSPEBX",
"objectId": "02i3h0000009OqCAAU",
"transitionName": "Draft > Review",
"productId": "01t6g000000RzFAAA0",
"action class": null,
"action method": null,
"message": "Name is not blank",
"conditions": "Asset.Name != ''",
"requirement name": "Name is not blank"
}
}]
},
"falseRules": {
"Asset": [{
"ruleDetails": {
"ruleId": "a5Q6g0000005vSPEBX",
"objectId": "02i3h0000009OqCAAU",
"transitionName": "Draft > Review",
"productId": "01t6g000000RzFAAA0",
"action class": null,
"action method": null,
"message": "Name is blank",
"conditions": "Asset.Name == ''",
"requirement name": "Name is blank"
}
}]
}
}
}Ergebnisbeschreibung
Ergebnis
ruleDetails
Diese JSON enthält die folgenden Schlüssel/Wert-Paare.
Schlüssel |
Wert |
|---|---|
Ergebnis |
Ergebnis der Regelbedingungsauswertung für das Zielobjekt |
Bedingungen |
Regelbedingung |
Name |
Name der Regel |
ruleId |
Regel-ID |
transitionName |
Name der der Regel zugeordneten Umstellung |
objId |
Objekt-ID, für die Regeln ausgeführt wurden |

