Loading
Försäkring
InsClaimService:invokeProductRules

InsClaimService:invokeProductRules

Använd denna tjänst i anspråksflöden för att åberopa garantiregler som du har lagt till i en produkt.

Till exempel, om du har lagt till regler som skickar anspråk över ett visst belopp till en garant för godkännande åberopar denna tjänst dessa regler.

Klass: InsClaimService

Metod: invokeProductRules

Så här fungerar det

  1. Tjänsten 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åk.

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

    Till exempel, om åtgärden specificerar att en uppgift ska skapas skapar tjänsten en uppgift.

  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.

objectId

ID för anspråk eller anspråkstäckning 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.

mode

Om objectId är ett anspråks-ID finns två möjliga mode: ItemMode eller CoverageMode. Parametern mode specificerar vilka objekt som utvärderas för detta anspråks-ID.

  • Använd ItemMode (standard) för att utvärdera produktregler med Tillämplig typ definierad som Anspråk. Tjänsten tillämpar dessa regler för varje ClaimItem-post som är associerad med ClaimId. Med ItemMode är objekten som är tillgängliga för regelmotorn objekten ClaimItem och Claim.

    ItemMode är användbart för att öppna anspråkstäckningar i slutet av ett första meddelande om förlust (till exempel för övergången från Utkast till Öppna). Tänk dig en bilolycka som involverar två fordon och tre personer. Alla regler som utvärderas som sanna kan användas för att anropa åtgärder som anropar integreringsprocesser för att göra saker som att öppna rätt anspråkstäckning för varje anspråksobjekt. Anspråksomfattningar kan inkludera kollision för förstapartsfordonet, Egendomsskada för tredjepartfordonet, Kroppsskada för en av förarna och så vidare.

  • Använd CoverageMode för att utvärdera produktregler med Tillämplig typ definierad som Anspråkstäckning. Tjänsten tillämpar dessa regler för varje post för Anspråkstäckning som är associerad med ClaimId. Med CoverageMode är objekten som är tillgängliga för regelmotorn objekten ClaimCoverage, InsurancePolicyCoverage och Claim.

    CoverageMode är användbart när du kör regler mot alla anspråksomfattningar för ett anspråk. Använd till exempel CoverageMode när du avgör om några karenstidsregler gäller. Sådana regler kan utlösa övergången från Öppen till Nekad.

Om objectId är ett ID för anspråkstäckning utvärderar regelmotorn produktregler med Tillämplig typ definierad som ClaimCoverage. Tjänsten tillämpar dessa regler för ett enskilt ClaimCoverageId. I detta fall används inte mode eftersom tjänsten endast utvärderar ett objekt, inte flera objekt på lägre nivå.

falseTransitionState

Valfritt.

Delstaten som tjänsten överför objektet till när alla regler som körs av tjänsten utvärderas till falskt.

Tjänsten överför objektet till detta läge endast om includeStateTransition = true.

Indata-JSON

Denna tjänst använder ingenting i indata-JSON.

JSON för utdata

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

För detta exempel är indata:

  • objectId = claimId

  • transitionName = regelövergångsnamn

{
    "stateTransit": " updated ClaimStatus__c from Open to Closed",
    "canTransitState": true,
    "allFalse": false,
    "falseRules": {
        "Involved Property_a3lf4000000pcFUAAY": [
            {
                "ruleDetails": {
                    "instanceKey": "Involved Property_a3lf4000000pcFUAAY",
                    "involvedItemId": "a3lf4000000pcFUAAY",
                    "requirement name": "Maximum Aggregation Rule",
                    "conditions": "Pet.petType == 'dog' AND Pet.petBreed == 'Alaskan Husky' AND ptandev2__InsuranceClaim__c.ptandev2__ClaimStatus__c == 'Open'",
                    "message": "TestMessage",
                    "action method": "Product_Rule",
                    "action class": "IntegrationProcedureService",
                    "productId": "01tf4000004mGyhAAE",
                    "transitionName": "OpenToClosed",
                    "objectId": "a3qf4000000KtfKAAS"
                }
            }
        ],
        "Involved Injury Cat Husky_a3kf4000000pLEuAAM": [
            {
                "ruleDetails": {
                    "instanceKey": "Involved Injury Cat Husky_a3kf4000000pLEuAAM",
                    "involvedItemId": "a3kf4000000pLEuAAM",
                    "requirement name": "Maximum Aggregation Rule",
                    "conditions": "Pet.petType == 'dog' AND Pet.petBreed == 'Alaskan Husky' AND ptandev2__InsuranceClaim__c.ptandev2__ClaimStatus__c == 'Open'",
                    "message": "TestMessage",
                    "action method": "Product_Rule",
                    "action class": "IntegrationProcedureService",
                    "productId": "01tf4000004mGyhAAE",
                    "transitionName": "OpenToClosed",
                    "objectId": "a3qf4000000KtfKAAS"
                }
            }
        ]
    },
    "trueRules": {
        "Involved Injury Dog Husky_a3kf4000000pLEtAAM": [
            {
                "actionResults": {
                    "IPResult": {
                        "output": "TestOutput"
                    }
                },
                "ruleDetails": {
                    "instanceKey": "Involved Injury Dog Husky_a3kf4000000pLEtAAM",
                    "involvedItemId": "a3kf4000000pLEtAAM",
                    "requirement name": "Maximum Aggregation Rule",
                    "conditions": "Pet.petType == 'dog' AND Pet.petBreed == 'Alaskan Husky' AND ptandev2__InsuranceClaim__c.ptandev2__ClaimStatus__c == 'Open'",
                    "message": "TestMessage",
                    "action method": "Product_Rule",
                    "action class": "IntegrationProcedureService",
                    "productId": "01tf4000004mGyhAAE",
                    "transitionName": "OpenToClosed",
                    "objectId": "a3qf4000000KtfKAAS"
                }
            }
        ]
    }
}

Denna JSON innehåller följande nyckel/värdepar:

Nyckel

Värde

stateTransit

Beskriver vad tjänsten har ändrat i fältet Status i anspråksobjektet.

canTransitState

true eller false

Talar om huruvida tjänsten överför objektet till ett nytt läge eller inte.

allFalse

Om alla regler som körs av tjänsten utvärderas till falska blir allFalse = true.

Om någon av reglerna som körs av tjänsten utvärderas till sant är allFalse = false.

falseRules

En matris med en eller flera ruleDetails.

Inkluderar alla regler som körs av tjänsten som utvärderas till falskt.

trueRules

En matris med en eller flera actionResults och ruleDetails.

Inkluderar alla regler som körs av tjänsten som utvärderas till sant.

Visas endast om allFalse = false. Det vill säga en eller flera av reglerna som körs av tjänsten utvärderade till sant.

error

Eventuella fel som uppstått för tjänsten.

Om värdet är ok visas inga felmeddelanden i användargränssnittet.

Matriserna falseRules och trueRules inkluderar båda ruleDetails.

"ruleDetails": {
                    "instanceKey": "Involved Property_a3lf4000000pcFUAAY",
                    "involvedItemId": "a3lf4000000pcFUAAY",
                    "requirement name": "Maximum Aggregation Rule",
                    "conditions": "Pet.petType == 'dog' AND Pet.petBreed == 'Alaskan Husky' AND ptandev2__InsuranceClaim__c.ptandev2__ClaimStatus__c == 'Open'",
                    "message": "TestMessage",
                    "action method": "Product_Rule",
                    "action class": "IntegrationProcedureService",
                    "productId": "01tf4000004mGyhAAE",
                    "transitionName": "OpenToClosed",
                    "objectId": "a3qf4000000KtfKAAS"
                }"ruleDetails": {
	"requirement name": "Operator Points >4",
	"conditions": "wcOperator.opPoints > 4",
	"message": "The applicant's prior citations require underwriting review prior to issuance.",
	"action method": "ReferToUnderwriting",
	"action class": "DROpenImplementationClass",
	"productId": "01tf4000001lKNQAA2",
	"transitionName": "Submit>Underwrite",
	"objectId": "0Q0f4000000ADatCAG"
}

trueRules innehåller en eller flera actionResults, ytterligare nyckel-/värdepar och rulesDetails.

actionResults är utdata från åtgärdsklassen Vlocity och åtgärdsmetoden som åberopas av tjänsten.

 "trueRules": {
        "Involved Injury Dog Husky_a3kf4000000pLEtAAM": [
            {
                "actionResults": {
                    "IPResult": {
                        "output": "TestOutput"
                    }
                },
                "ruleDetails": {
                    "instanceKey": "Involved Injury Dog Husky_a3kf4000000pLEtAAM",
                    "involvedItemId": "a3kf4000000pLEtAAM",
                    "requirement name": "Maximum Aggregation Rule",
                    "conditions": "Pet.petType == 'dog' AND Pet.petBreed == 'Alaskan Husky' AND ptandev2__InsuranceClaim__c.ptandev2__ClaimStatus__c == 'Open'",
                    "message": "TestMessage",
                    "action method": "Product_Rule",
                    "action class": "IntegrationProcedureService",
                    "productId": "01tf4000004mGyhAAE",
                    "transitionName": "OpenToClosed",
                    "objectId": "a3qf4000000KtfKAAS"
                }
            }
        ]
    }

Exempel

Tjänsten används vanligtvis när du vill ha regler för att avgöra om ett anspråk kan godkännas automatiskt, eller gå till en försäkringsgivare för ytterligare övervägande.

 
Laddar
Salesforce Help | Article