Loading
Försäkring
InsClaimCoverageService:invokeProductRules

InsClaimCoverageService:invokeProductRules

Använd denna tjänst när du skapar anspråkstäckningar för att åberopa produktregler för delstatsövergångar.

Klass: InsClaimCoverageService

Metod: invokeProductRules

Så här fungerar det

  1. Hittar anspråksobjektet baserat på objectID och extraherar produkterna för det objektet baserat på det objectID.

  2. Letar efter den specificerade transitionName.

  3. Kör reglerna som är associerade med produkten och gäller för transitionName.

    Utvärderar varje instans av Inblandad part och/eller Inblandad egenskap separat för varje produktregel för anspråkstäckning.

  4. Om någon av reglerna utvärderas till sant utför tjänsten åtgärden Vlocity som specificeras i dessa regler.

  5. Leta efter värdet för alternativet includeStateTransition. Om värdet = true letar tjänsten efter statusmodellen för detta objekt, hittar fieldAPIName och ändrar detta värde baserat på övergången.

  6. Matar ut resultaten av utvärderingen för varje regel för varje instans av Inblandad part och/eller Inblandad egenskap.

Fjärralternativ

Alternativ

Beskrivning

includeStateTransition

Om sant ändrar tjänsten det lägesfält som specificeras i lägesmodellens fieldAPIName till det läge som specificeras i övergången.

Om det är falskt utför tjänsten ingen statusövergång.

mode

Om satt till CoverageMode körs endast InsuranceClaimCoverages__c.

objectId

Anspråks-ID som ska frågas.

transitionName

Namnet på delstatsövergången som är associerad med de regler du vill köra.

Tjänsten kör endast regler som är associerade med den transitionName du specificerar.

För att hitta ett övergångsnamn, gå till lägesmodellen för detta objekt.

Indata-JSON

Denna tjänst tar inte en JSON för indata.

JSON för utdata

Tjänsten returnerar regelutvärderingen för varje instans av en involverad egenskap och/eller involverad part.

Här är strukturen för JSON för utdata:

{
  "falseRules" : {
    "<String identifier>" : [
      {
        "ruleDetails": {
          "requirement name": <ProductRequirement__c.Name>,
          "conditions": <ProductRequirement__c.Conditions__c>,
          "message": <ProductRequirement__c.Message__c>,
          "action method": <ProductRequirement__c.VlocityActionId__r.InvokeMethodName__c>,
          "action class": <ProductRequirement__c.VlocityActionId__r.InvokeClassName__c>,
          "productId": <ProductRequirement__c.Product2Id__c>,
          "transitionName": <input transitionName>,
          "objectId": <input objectid>,
          "ruleId": <<ProductRequirement__c.Id>
        }
      }
    ]
  }
},  
  "trueRules": {
    "<String identifier>" : [
      {
        "ruleDetails": {
          "requirement name": <ProductRequirement__c.Name>,
          "conditions": <ProductRequirement__c.Conditions__c>,
          "message": <ProductRequirement__c.Message__c>,
          "action method": <ProductRequirement__c.VlocityActionId__r.InvokeMethodName__c>,
          "action class": <ProductRequirement__c.VlocityActionId__r.InvokeClassName__c>,
          "productId": <ProductRequirement__c.Product2Id__c>,
          "transitionName": <input transitionName>,
          "objectId": <input objectid>,
          "ruleId": <<ProductRequirement__c.Id>
        }
      }
    ]
  },
  "transitionSuccess": <Boolean, transition result>,
  "stateTransit": <message with the object's state field, the old state, and the new state.>,
  "canTransitState": <Boolean. determine if the object has fulfilled its transit criterria>,
  "allFalse": <Boolean, if no rule executed true.>
}

Här är ett exempel på en JSON för utdata med regler som har utvärderats till falskt och regler som har utvärderats till sant:

{
  "falseRules": {
    "PetBodilyInjury_BMW 735i_a4m5w000000p6DE": [
      {
        "ruleDetails": {
          "requirement name": "Maximum Aggregation Rule",
          "conditions": "TardisCoverage.EACHPERSON == 30800",
          "message": "TestMessage",
          "action method": "Product_Rule",
          "action class": "IntegrationProcedureService",
          "productId": "01t5w00000E0L8xAAF",
          "transitionName": "OpenToClosed",
          "objectId": "a4J5w000001Z3ElEAK",
          "ruleId": "a5L5w000003Tl7EEAS"
        }
      }
    ]
  },
  "trueRules": {
    "PetBodilyInjury_BMW 735i Owner_a4m5w000000p6DE": [
      {
        "actionResults": {
          "IPResult": {
            "output": "TestOutput"
          }
        },
        "ruleDetails": {
          "requirement name": "Maximum Aggregation Rule",
          "conditions": "TardisCoverage.EACHPERSON == 30800",
          "message": "TestMessage",
          "action method": "Product_Rule",
          "action class": "IntegrationProcedureService",
          "productId": "01t5w00000E0L8xAAF",
          "transitionName": "OpenToClosed",
          "objectId": "a4J5w000001Z3EmEAK",
          "ruleId": "a5L5w000003Tl7EEAS"
        }
      }
    ]
  },
  "transitionSuccess": true,
  "stateTransit": " updated ClaimStatus__c from Open to Closed",
  "canTransitState": true,
  "allFalse": false
}
 
Laddar
Salesforce Help | Article