Loading
Forsikring
InsProductService: runRules

InsProductService: runRules

Bruk denne tjenesten til å kjøre regler på et produkt uten å endre prisen på det produktet.

Klasse: InsProductService

Metode: runRules

Slik virker det

  1. Tjenesten søker i inndata-JSON-koden etter selectedProduct-nøkkelen.

  2. Kjører reglene i selectedProduct-noden.

    Hvilke sett regler som kjøres, avhenger av hvilke eksterne alternativer som er satt til sann.

  3. Returnerer JSON-koden med resultatene av reglene som er lagt til i selectedProduct-noden.

Eksterne alternativer

Alternativ

Beskrivelse

ruleAttributeSetValues

true eller false

Standardverdien er true.

Hvis true, kjører service attributtsettreglene.

evalOptionalCoverageRelationship

true eller false

Standardverdien er false.

Når dette alternativet er satt til true, evaluerer tjenesten den valgfrie dekningsrelasjonen mot de tilgjengelige reglene og oppdaterer isSelected i den berørte valgfrie dekningsposten.

runDefaultSelected

true eller false

Når det angis til sant, kjøres standardvalgte dekningsregler for det valgte produktet.

runEligibility

true eller false

Når det angis til true, kjøres berettigelsesregler for det valgte produktet.

Hvis reglene evalueres til false, setter tjenesten isEligible-noden i den valgfrie dekningen til false.

runRequiredCoverage

true eller false

Når det angis til true, kjøres valgfrie dekningsregler for nødvendig dekning.

validateCoverageSelection

true eller false

Standardverdien er false.

Når dette alternativet er satt til true, validerer tjenesten det valgfrie dekningsvalget mot tilgjengelige regler.

Tjenesten legger til en meldingsnode i den berørte valgfrie dekningsposten hvis regelen evalueres til usann.

Inndata-JSON

Denne tjenesten ser etter et produktobjekt i selectedProduct-nøkkelen i dens inndata-JSON. Dette objektet kan opprettes av andre tjenester som getRatedProducts. Den inkluderer rotproduktet, underordnede produkter og barnebarnprodukter.

Dette eksemplet inneholder bare én inndatanode før tjenesten kjører reglene.


"Name": "Accidental Death",
                    "Description": "An accidental death benefit rider also known as a double indemnity clause provides a higher death benefit to the beneficiaries of the policy in case the insured dies because of an accident. The death benefit is generally a multiple of the face value of the base coverage.",
                    "Family": "Individual Life",
                    "ProductCode": "ADDCOV",
                    "LineOfBusiness__c": "Individual Health",
                    "Type__c": "Coverages",
                    "IsRecommended__c": false,
                    "PricingSource__c": "premiumADD",
                    "RecordTypeName__c": "CoverageSpec",
                    "IsConfigurable__c": true,
                    "productId": "01t1U000000OEamQAG",
                    "pciId": "a2w1U0000001G4YQAU",
                    "selectValidationCriteria": "[{\"expression\":\"WOP.isSelected == true\",\"code\":\"code_0\"}]",
                    "selectValidationMessage": "[{\"message\":\"WOP must be true\",\"severity\":\"INFO\",\"code\":\"code_0\"}]",
                    "isOptional": true,
                    "isSelected": true,
                    "parentInstanceKey": "Jack Kirkland",
                    "Price": 358,
                    "pathFromRoot": "[0].childProducts.records[2].childProducts.records[2]",
                    "formattedParentInstanceKey": "jack-kirkland",
                    "parentProductName": "Jack Kirkland",
                    "originalIndex": 2,
                    "numberCategories": 18,
                    "numberAttributes": 18,
                    "popoverOpen": false,
                    "isOriginalOptional": true,
                    "isAddedOptional": true,
                    "showTypeHeader": true,
                    "displaySequence": 1                 

preTransformBundle-alternativ

Du kan også definere en Omnistudio Data Mapper-transformasjon som tilordner dataene som sendes til inndata-JSON-filen, til skjemaet tjenesten trenger. Denne datatilordnerens JSON-utdata er selectedProducts som kreves av runRules. Når du legger til denne tjenesten i et OmniScript, angir du preTransformBundle til navnet på Datatilordning slik at tjenesten bruker Datatilordning.

Utdata-JSON

Tjenesten returnerer samme JSON-struktur som i selectedProduct-noden med resultatet av regelkjøringen. Se Produkt-JSON-strukturmodell for å få detaljer om innholdet og strukturen til dette objektet.

Dette eksemplet inneholder bare én utdatanode etter at tjenesten har kjørt reglene med resultatet av regelkjøringen.

"messages": [
                    {
                      "code": "code_0",
                      "severity": "INFO",
                      "message": "WOP must be true"
                    }
                  ],
                  "displaySequence": 1,
                  "lastNonOptional": true,
                  "firstOptional": true,
                  "Id": "01t1U000000OEamQAG",
                  "Name": "Accidental Death",
                  "Description": "An accidental death benefit rider also known as a double indemnity clause provides a higher death benefit to the beneficiaries of the policy in case the insured dies because of an accident. The death benefit is generally a multiple of the face value of the base coverage.",
                  "Family": "Individual Life",
                  "ProductCode": "ADDCOV",
                  "LineOfBusiness__c": "Individual Health",
                  "Type__c": "Coverages",
                  "IsRecommended__c": false,
                  "PricingSource__c": "premiumADD",
                  "RecordTypeName__c": "CoverageSpec",
                  "IsConfigurable__c": true,
                  "productId": "01t1U000000OEamQAG",
                  "pciId": "a2w1U0000001G4YQAU",
                  "selectValidationCriteria": "[{\"expression\":\"WOP.isSelected == true\",\"code\":\"code_0\"}]",
                  "selectValidationMessage": "[{\"message\":\"WOP must be true\",\"severity\":\"INFO\",\"code\":\"code_0\"}]",
                  "isOptional": true,
                  "isSelected": true,
                  "parentInstanceKey": "Jack Kirkland",
                  "Price": 358,
                  "pathFromRoot": "[0].childProducts.records[2].childProducts.records[2]",
                  "formattedParentInstanceKey": "jack-kirkland",
                  "parentProductName": "Jack Kirkland",
                  "originalIndex": 2,
                  "numberCategories": 18,
                  "numberAttributes": 18,
                  "popoverOpen": false,
                  "isOriginalOptional": true,
                  "isAddedOptional": true,
                  "showTypeHeader": true,                                             
 
Laster
Salesforce Help | Article