U bent hier:
InsPolicyService:invokeRules
Gebruik deze service voor het aanroepen van statusovergangsregels die zijn gekoppeld aan een doelstatustransactie voor een doelbeleid. Als de regels voldoen aan de overgangscriteria, voert deze service acties uit die zijn gekoppeld aan de overgang, legt optioneel de resultaten van de uitvoeringen van de regel vast en zet het doelbeleid over naar de nieuwe status.
De manier waarop het werkt...
-
Deze service haalt het object op dat is opgegeven door de optie policyId.
-
Op basis van het objecttype, de huidige status van het object en de optie toState wordt de doelstatusovergang bepaald.
-
Vanuit de statusovergang, statusovergangsregels en statusovergangsregelacties worden productregels opgehaald en uitgevoerd.
-
Als de overgangsregels voldoen aan de voltooiingscriteria voor de overgang die zijn opgegeven voor de overgang naar de staat/provincie, wordt het object overgezet naar de staat/provincie.
Als aan de statusovergang een actie is gekoppeld, wordt die actie uitgevoerd.
Als niet aan de voltooiingscriteria voor de overgang wordt voldaan, wordt het object overgezet naar de alternatieve status die is opgegeven voor de statusovergang, als deze bestaat. Als de statusovergang geen Alternatieve status heeft, behoudt het object de huidige status.
-
Als de optie logResults is opgegeven, worden de resultaten van elke regel en het resultaat van de objecttransactie (succes of mislukking) vastgelegd.
Externe opties
Optie |
Beschrijving |
|---|---|
policyID |
Verplicht. ID van doelbeleid waarop regels moeten worden toegepast |
toState |
Verplicht Status waarnaar doelobject moet worden verplaatst op basis van statusovergangscriteria |
lastDefaultState |
Optioneel Naam van laatste standaardstatus van doelobject |
invokeStateTransitionRules |
Optioneel true Gebruik dit om overgangsregels voor staat/provincie te laten aanroepen. Dit is de standaard. false Use (onwaar) als u geen statusovergangsregels wilt aanroepen. |
invokeProductRules |
Optioneel true Gebruik dit om productregels te laten aanroepen. Dit is de standaard. false Use (onwaar) als u geen productregels wilt aanroepen. |
invokeActionType |
Optioneel Geeft, indien opgegeven, het type acties aan dat moet worden aangeroepen als aan criteria wordt voldaan. De standaardinstelling is standaard. standaard Alleen standaardacties uitvoeren die zijn gekoppeld aan de overgang naar de status alle acties uitvoeren die zijn gekoppeld aan de statusovergang none Roep geen acties aan die zijn gekoppeld aan de statusovergang |
actionScope |
Optioneel Geeft aan of aangeroepen acties moeten worden gedefinieerd voor de huidige versie van het statusmodel of voor alle versies van het statusmodel. De standaardinstelling is versie. versie Voer alleen acties uit die zijn gekoppeld aan de huidige statusmodelversie alle acties uitvoeren die zijn gekoppeld aan een statusmodelversie |
logResults |
Optioneel true Gebruik dit om resultaten vast te leggen. Dit is de standaard. false Gebruik dit als u geen resultaten wilt vastleggen. |
fromNoneState |
Optioneel true Object gaat over van de status Geen. false Object gaat niet over van de status Geen. Dit is de standaard. |
Invoer-JSON
Het volgende voorbeeld toont voorbeeldinvoer-JSON.
{
"objectId": "02i3h0000009OqCAAU",
"toState": "Review",
"lastDefaultState": "Draft",
"invokeActionType": "draft",
"actionScope": "version",
"logResults": true,
"fromNoneState": false
}Uitvoer-JSON
Het volgende voorbeeld toont voorbeelduitvoer-JSON.
{
"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"
}
}]
}
}
}Resultaatbeschrijving
result
ruleDetails
Deze JSON omvat de volgende sleutel-/waardeparen.
Sleutel |
Waarde |
|---|---|
result |
Resultaat van evaluatie van regelvoorwaarde op basis van doelobject |
voorwaarden |
Regelvoorwaarde |
name |
Naam van regel |
ruleId |
Regel-ID |
transitionName |
Naam van overgang die is gekoppeld aan regel |
objId |
Object-ID op basis waarvan regels zijn uitgevoerd |
