Loading
Insurance
InsQuoteService:invokeRules

InsQuoteService:invokeRules

Utilisez ce service pour invoquer des règles de transition d'état associées à une transition d'état cible dans un devis 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 passe le devis cible au nouvel état.

Remarque
Remarque

Avant l'exécution de ce service, le système exécute une vérification de l'utilisateur invité.

Ce service peut être utilisé par des utilisateurs invités. Un utilisateur invité qui exécute une tâche OmniScript, Procédure d'intégration ou Interface utilisateur peut continuer. Ce service est exécuté. Cependant, les quoteId et les opportunityId sont cryptés dans ces cas. Par conséquent, les utilisateurs invités ne peuvent pas afficher ces ID.

Classe: InsQuoteService

Méthode : invokeRules

Fonctionnement

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

  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

quoteID

Obligatoire.

Le QuoteId, ou le QuoteId crypté si la requête concerne un client ou un utilisateur invité.

toState

Obligatoire

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

lastDefaultState

Facultatif

Nom du dernier état par défaut du devis 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.

{ 
    "quoteId": "02i3h0000009OqCAAU",
    "toState": "Review",
    "lastDefaultState": "Draft",
    "invokeStateTransitionRules": true,
    "invokeProductRules": true,
    "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": "Quote.Status == 'Draft'",
            "name": "Status is Draft",
            "ruleId": "a5Q6g0000005vSPEAY",
            "transitionName": "Draft > Review",
            "objId": "02i3h0000009OqCAAU"
        }, {
            "result": false,
            "conditions": "Quote.Name == 'Test'",
            "name": "Name is Test",
            "ruleId": "a5Q6g0000005vSPEAZ",
            "transitionName": "Draft > Review",
            "objId": "02i3h0000009OqCAAU"
        }]
    },
    "productRules": {
        "allFalse": false,
        "trueRules": {
            "Quote": [{
                "ruleDetails": {
                    "ruleId": "a5Q6g0000005vSPEBX",
                    "objectId": "02i3h0000009OqCAAU",
                    "transitionName": "Draft > Review",
                    "productId": "01t6g000000RzFAAA0",
                    "action class": null,
                    "action method": null,
                    "message": "Name is not blank",
                    "conditions": "Quote.Name != ''",
                    "requirement name": "Name is not blank"
                } 
            }]
        },
        "falseRules": {
            "Quote": [{
                "ruleDetails": {
                    "ruleId": "a5Q6g0000005vSPEBX",
                    "objectId": "02i3h0000009OqCAAU",
                    "transitionName": "Draft > Review",
                    "productId": "01t6g000000RzFAAA0",
                    "action class": null,
                    "action method": null,
                    "message": "Name is blank",
                    "conditions": "Quote.Name == ''",
                    "requirement name": "Name is blank"
                } 
            }]
        }
    }
}

Description du résultat

Résultat Résultat global des règles exécutées. Si true, l'objet cible est transféré vers toState. Si false, l'état cible reste le même ou passe à l'état Alternatif défini dans la transition d'état.

ruleDetails Liste des règles exécutées et leurs résultats

Ce JSON inclut les paires clé/valeur suivantes :

Clé

Valeur

conditions

Condition de règle

nom

Nom de la règle

objId

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

result

Résultat de l'évaluation de la condition de règle par rapport au devis cible

ruleId

ID de règle

transitionName

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

 
Chargement
Salesforce Help | Article