breadcrumbDescription
InsProductService:getRatedProducts
Brug denne tjeneste til at hente en matriks af et eller flere produkter, prissat ved brug af vurderingsprocedurer, der er knyttet til disse produkter. Denne tjeneste inkluderer også ekstra funktioner, f.eks. moms- og gebyrberegninger, filtrering og optimering af ydeevne.
Hvis du vil bruge denne tjeneste, skal du overføre det sæt input, som vurderingsproceduren har brug for for at prissætte produkter. Tjenesten returnerer en filtreret matriks af produkter og et resultat-JSON fra vurderingsproceduren.
Sådan fungerer det
-
Tjenesten søger i Salesforce for at hente et sæt af aktive produkter, der falder inden for de gældende start- og slutdatoer. Se effectiveDate nedenfor for at få flere oplysninger.
Som en del af forespørgslen bruger tjenesterne de kriterier, der er overført i filterindstillingen, til at få et indledende sæt af produkter. De data, der hentes fra Salesforce, inkluderer produktets berettigelsesregler og vurderingsprocedure, specifikationer for forsikrede elementer, specifikationer for forsikrede parter, dækningsspecifikationer, specifikationer for vurderingsfakta og alle dets attributter.
-
Evaluerer hvert produkt i det indledende sæt baseret på dets berettigelsesregler og reducerer produktsættet yderligere.
-
Søger i input-JSON efter
userInputsog henter nøglens værdi.userInputser det sæt inputdata, som vurderingsproceduren bruger til at få pris på produktet. Tjenesten evaluerer dette objekt baseret på inputtilknytninger for produktvurdering for at oprette den input-JSON, der er nødvendig for vurderingsproceduren.Du formaterer
userInputsforskelligt afhængigt af produktdefinitionen og vurderingskonfigurationen. For at undgå fejl skal du filtrere for produkter, der alle bruger den samme typeuserInputs. -
Vurderer hvert produkt i det sæt, der er oprettet i trin 2. Det kalder produktets tilknyttede vurderingsprocedure med input-JSON fra trin 3.
-
Returnerer en matriks af produktobjekter med hvert produkts samlede pris og det samlede forsikrede beløb.
Hvert returneret produktobjekt indeholder også output-JSON fra vurderingsproceduren som værdien af
CalculatedPriceData. Tjenesten angiver ogsåpriceogtotalSumInsured, hvis formlerne er angivet på produktet.Husk på, at:
-
Hvis der er opsat en enkelt attribut med både en Angiv værdi-attributregel og en Angiv standardværdi-attributregel, anvender
getRatedProductskun attributreglen Angiv standardværdi. -
Som en bedste fremgangsmåde skal du, når du opsætter attributregeludtryk, ikke henvise til attributværdier i strukturer på lavere niveau.
-
Fjernindstillinger
Indstilling |
Beskrivelse |
|---|---|
|
Når For eksempel kræver en bilforsikringspolice, hvor flere chauffører er forsikret for flere biler, at |
|
Indstil denne indstilling til Udelad denne indstilling for produkter, der ikke opfylder alle disse kriterier. Hvis du vil formatere |
|
En række kommaseparerede inputnøgler, der skal inkluderes i outputproduktobjektet i Det er kun inputnøgler, der bruges af beregningsproceduren, der har en værdi i resultaterne. |
|
Brug denne indstilling til vurdering af små grupper. |
|
PartOfAProductName Hvis denne indstilling bruges, får tjenesten kun produkter med navne, der indeholder den værdi, du angav. |
|
productField1, productField2. Sorterer de produkter, som tjenesten får i den rækkefølge, du angiver. Du kan bruge Hvis du ikke angiver en værdi for denne indstilling, sorterer tjenesten de returnerede produkter efter navn i stigende alfabetisk rækkefølge. |
Indstilling |
Beskrivelse |
|---|---|
|
Et kort over Returnerer kun produkter, der opfylder de attributværdier, der er angivet i filteret. |
|
Standard er dags dato. Service trækker produkter med en Tjenesten bruger også |
|
Brug API-navnet med et kolon efterfulgt af enten en værdi eller en variabel. I et OmniScript kan en variabel f.eks. være navnet på et element, f.eks. en inputplukliste. Adskil flere filterparametre med kommaer:
Filtre kan indeholde ethvert felt på |
|
Standard er I output-JSON sammen med en opstilling af produkter tilføjes Underordnede produktattributter er ikke inkluderet. |
|
Angiv enhver gyldig Salesforce SOQL-erklæring som værdien for denne indstilling. Brug dette, når du har brug for denne tjeneste til at se på felter med flere pluklister, når du søger efter produkter. F.eks. Vigtigt
Fjern alle referencer til felterne i Hvis du f.eks. har |
Indstilling |
Beskrivelse |
|---|---|
|
Standard er Indstil denne indstilling til Hvis produkter ikke bruger valgfri dækning, skal du bruge standardindstillingen for |
|
Standard er Indeholder hele resultaterne af beregningsproceduren i |
|
Når den er indstillet til Når den er indstillet til Denne indstilling er nyttig, når der ikke er nogen brugergrænseflade, der forbruger resultaterne af tjenesten. Hvis du f.eks. kører en integrationsprocedure i batchtilstand, der indeholder denne tjeneste. |
|
Standard er Optimerer vurderingsopkald ved at gruppere vurderingsprocedureopkald efter produkter ved brug af den samme vurderingsprocedure. Den foretager et vurderingskald med en opstilling af inputobjekter. Dette er nyttigt, når du henter en stor liste over produkter. Flere vurderingsopkald kan nå SQL-grænser. Vurderingsprocedurearkitekturen optimeres til at håndtere en række inputobjekter og minimere antallet af nødvendige SQL-forespørgsler. |
|
Indstil kun denne indstilling til true, hvis du også indstiller |
|
Hvis det er sandt, returnerer tjenesten produkter uden priser. |
|
“ProductClassName1,ProductClassName2” Kommasepareret liste over produktklassenavne. Begrænser listen over produkter til disse produktklasser. |
|
Standard er Denne indstilling forbedrer ydeevnen ved at reducere heap-størrelser. Hvis den vurderingsprocedure, du bruger, kun er defineret på rodproduktniveau, kan du indstille denne indstilling til |
Indstilling |
Beskrivelse |
|---|---|
|
|
|
Standard er Når den er indstillet til I stedet skal du angive et listeprodukt-id under nøgle- |
|
Når den er indstillet til Når den er indstillet til |
|
Indstil til |
Indstilling |
Beskrivelse |
|---|---|
|
Angiver det sidste produkt-id, som tjenesten hentede i brugergrænsefladen. Brug denne indstilling sammen med |
|
Bestem, hvor mange produkter tjenesten returnerer til brugergrænsefladen i et opkald. |
Input JSON
InsProductService: getRatedProducts søger efter en userInputs i input-JSON. Brug det relevante userInputs afhængigt af produktdefinitionen og vurderingskonfigurationen. Tjenesten accepterer kun en type af formatet userInputs ad gangen.
-
En vurderingsprocedure pr. produkt for getRatedProducts
Formater
userInputsfor produkter, der bruger en enkelt vurderingsprocedure pr. rodprodukt. -
Formater
userInputsfor produkter, der bruger flere vurderingsprocedurer i produkthierarkiet eller flere underordnede specifikationer på ethvert niveau af hierarkiet.
Output JSON
Tjenesten returnerer en matriks af et eller flere produktobjekter. Se Produkts JSON-strukturmodel for at få flere oplysninger om dette objekt.
Alle tilknyttede userInputs fra input-JSON føjes til produktobjektet som userValues nøglen for den enkelte forekomst af attributten, den blev tilknyttet.
For hvert produkt føjes output-JSON fra beregningen af vurderingsproceduren til produktet med CalculatedPriceData-nøglen. Hvis prissætningsformlen er angivet på produktet, indstilles værdien af Price til dens beregnede værdi. Hvis den samlede forsikrede formel er angivet på produktet, indstilles værdien af TotalInsured til dens beregnede værdi.
I dette eksempel angives prisformlen på produktet, men den samlede forsikrede formel er ikke. CalculatedPriceData føjes til resultaterne fra vurderingsproceduren, og derefter beregnes prisen på basis af formlen. Den samlede forsikrede formel vises ikke i dataene, og det gør TotalInsured heller ikke.
{
"totalSize": 2,
"records": [{
"displaySequence": -1,
"CalculatedPriceData": {
"ID": "1",
"basePremium": 719,
"premGenlLiab": "356"
},
"Id": "01t6A000000FshIQAS",
"Name": "Economy Business",
"Family": "Commercial Lines",
"ProductCode": "bop-ECON",
"LineOfBusiness__c": "Property & Casualty",
"Type__c": "BusinessOwners",
"IsRecommended__c": false,
"RecordTypeName__c": "Product",
"IsConfigurable__c": true,
"PricingFormula__c": "basePremium + premGenlLiab",
"Term__c": "Annual",
"productId": "01t6A000000FshIQAS",
"Price": 1075,
"childProducts": {
...
},
"attributeCategories": {
...
}
},
{
...
}
}filterAttrValues Key
Indstillingen includeFilterAttrValues placerer produktets matriks i en ratedProducts og tilføjer et filterAttrValues-resultat ved siden af.
{
"result": {
"filterAttrValues": {
"covType": {
"listOfValues": [
"Superior",
"Economy"
],
"valueDataType": "Text",
"attributeName": "Type",
"categoryName": "Policy Terms"
},
"covDeductible": {
"listOfValues": [
"1000",
"250"
],
"valueDataType": "Currency",
"attributeName": "Deductible",
"categoryName": "Policy Terms"
}
},
"ratedProducts": {
"totalSize": 2,
"records": [{
"displaySequence": -1,
"CalculatedPriceData": {
"ID": "1",
"basePremium": 719,
"premGenlLiab": "356"
},
"Id": "01t6A000000FshIQAS",
"Name": "Economy Business",
"Family": "Commercial Lines",
"ProductCode": "bop-ECON",
...,
"Price": 1075,
"childProducts": {
...
},
"attributeCategories": {
...
}
},
{
...
}
}
}
}Hver filterbar attribut føjes til objektet med nøglen indstillet til attributkoden. Værdien af hver filterattribut er et objekt, der indeholder følgende:
Nøgle |
Værdi |
|---|---|
|
Navnet på attributten. |
|
Navnet på kategorien. |
|
Listen over mulige værdier fra produktet i matrikset. |
|
Datatypen for attributten, f.eks. Tekst eller Valuta. |
Skatter og gebyrer
Hvis moms og gebyrer bruger tjenesten, vises beregnede moms og gebyrer på en JSON-registrering på tre forskellige måder:
-
Hvis registreringen har beregnet moms og gebyrer, gemmes de som en liste i feltet
taxesAndFees.{ "taxesAndFees": [{ "Id": 1, "calculatedAmount": 10, "Type__c": "Tax" }, { "Id": 2, "calculatedAmount": 15, "Type__c": "Fee" }] } -
Hvis registreringen har beregnet skatter på sig selv eller sine børn, gemmes summen af de beregnede skatter på sig selv og sine børn på
taxAmount.{ "taxAmount”: 25 // 10 from self, 15 from children} -
Hvis registreringen har beregnet gebyrer for sig selv eller sine børn, gemmes summen af de beregnede gebyrer for sig selv og sine børn i
feeAmount.{ "feeAmount”: 30 // 15 from self, 15 from children}
Et JSON-eksempeloutput med moms og gebyrer på de underordnede registreringer samt roden vil se sådan ud:
{
"Id": 1,
"productName": "Product",
"taxesAndFees": [{
"Id": 1,
"calculatedAmount": 10,
"Type__c": "Tax"
}, {
"Id": 2,
"calculatedAmount": 15,
"Type__c": "Fee"
}],
"taxAmount": 25
"feeAmount": 30
"childProducts": {
"records": [{
"Id": 2,
"productName": "Insured Item",
"taxesAndFees": [{
"Id": 3,
"calculatedAmount": 15,
"Type__c": "Tax"
}],
"taxAmount": 15
}, {
"Id": 3,
"productName": "Coverage",
"taxesAndFees": [{
"Id": 4,
"calculatedAmount": 15,
"Type__c": "Fee"
}],
"feeAmount": 15
}]
}
}
Stjernevurdering
Du kan bruge attributeFilters-inputtet til at filtrere produkter baseret på vurderinger, der er oprettet som attributter af en produktmodeler.
- En vurderingsprocedure pr. produkt for getRatedProducts
FormaterInsProductService:getRatedProducts userInputsfor produkter, der bruger en enkelt vurderingsprocedure pr. rodprodukt. - Flere vurderingsprocedurer pr. produkt eller flere specifikationer på ethvert niveau for getRatedProducts
FormaterInsProductService:getRatedProducts userInputsfor produkter, der bruger flere vurderingsprocedurer i produkthierarkiet eller flere underordnede specifikationer på ethvert niveau af hierarkiet.
