Loading
Insurance
InsPolicyService:invokeRules

InsPolicyService:invokeRules

Utilisez ce service pour invoquer des règles de transition d'état associées à une transaction d'état cible dans une stratégie cible. Si les règles remplissent les critères de transition, ce service exécute les actions associées à la transition, consigne éventuellement les résultats des exécutions de règles et transfère la stratégie cible vers le nouvel état.

Classe: InsPolicyService

Méthode : invokeRules

Fonctionnement

  1. Ce service récupère l'objet spécifié par l'option policyId.

  2. Selon le type d'objet, l'état actuel de l'objet et l'option toState, la transition vers l'état cible est déterminée.

  3. À partir de la transition d'état, des règles de transition d'état et des actions de règle de transition d'état, les règles produit sont récupérées et exécutées.

  4. Si les règles de transition d'état remplissent les critères de réalisation de la transition spécifiés dans la transition d'état, l'objet est transféré vers toState.

    Si la transition d'état est associée à une action, cette action est exécutée.

    Si les critères de réalisation de la transition ne sont pas remplis, l'objet est transféré vers l'état Alternatif spécifié dans la transition d'état s'il existe. Si la transition d'état n'a pas d'état Alternatif, l'objet conserve son état actuel.

  5. Si l'option logResults est spécifiée, les résultats de chaque règle et le résultat de la transaction de l'objet (réussite ou échec) sont consignés.

Options distantes

Option

Description

policyID

Obligatoire.

ID de la stratégie cible à laquelle appliquer les règles

toState

Obligatoire

État vers lequel déplacer l'objet cible en fonction des critères de transition de l'état

lastDefaultState

Facultatif

Nom du dernier état par défaut de l'objet cible

invokeStateTransitionRules

Facultatif

true Utiliser pour invoquer des règles de transition d'état. C'est la valeur par défaut.

false Utiliser si vous ne souhaitez pas invoquer des règles de transition d'état.

invokeProductRules

Facultatif

true Utiliser pour invoquer des règles produit. C'est la valeur par défaut.

false Utiliser si vous ne souhaitez pas invoquer de règles produit.

invokeActionType

Facultatif

Si spécifié, indique le type d'action à invoquer si les critères sont remplis. Le paramètre par défaut est défini.

par défaut Exécuter uniquement les actions par défaut associées à la transition d'état

tous Exécuter toutes les actions associées à la transition d'état

aucun N'invoquez aucune action associée à la transition de l'État

actionScope

Facultatif

Si spécifié, indique si les actions invoquées doivent être définies dans la version actuelle du modèle d'état ou dans n'importe quelle version du modèle d'état. Le paramètre par défaut est version.

version Exécuter uniquement les actions associées à la version actuelle du modèle d'état

Toute action Exécuter associée à une version de modèle d'état

logResults

Facultatif

true Utiliser pour consigner les résultats. C'est la valeur par défaut.

false Utiliser si vous ne souhaitez pas consigner les résultats.

fromNoneState

Facultatif

true Object passe de l'état Aucun.

false Object ne passe pas de l'état Aucun. C'est la valeur par défaut.

JSON d'entrée

L'exemple suivant montre un exemple de JSON d'entrée.

{ 
	"objectId": "02i3h0000009OqCAAU",
	"toState": "Review",
	"lastDefaultState": "Draft",
	"invokeActionType": "draft",
	"actionScope": "version",
	"logResults": true,
	"fromNoneState": false
}

JSON de sortie

L'exemple suivant montre un exemple de JSON de sortie.

{  
    "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"
                } 
            }]
        }
    }
}

Description du résultat

result

ruleDetails

Ce JSON inclut les paires clé/valeur suivantes.

Clé

Valeur

result

Résultat de l'évaluation de la condition de règle par rapport à l'objet cible

conditions

Condition de règle

nom

Nom de la règle

ruleId

ID de règle

transitionName

Nom de la transition associée à la règle

objId

ID d'objet avec lequel les règles ont été exécutées

 
Chargement
Salesforce Help | Article