Usted está aquí:
InsProductService: runRules
Utilice este servicio para ejecutar reglas en un producto sin cambiar el precio de ese producto.
Método: runRules
Funcionamiento
-
El servicio busca en el JSON de entrada la clave de
selectedProduct. -
Ejecuta las reglas en el nodo
selectedProduct.Los conjuntos de reglas que se ejecutan dependen de las opciones remotas establecidas como true.
-
Devuelve el JSON con los resultados de las reglas agregadas al nodo
selectedProduct.
Opciones remotas
Opción |
Descripción |
|---|---|
|
Toma como valor predeterminado Si es true, el servicio ejecuta las reglas de valor de conjunto de atributos. |
|
Toma como valor predeterminado Cuando esta opción está establecida como |
|
Cuando se establece en true, ejecuta reglas de cobertura seleccionadas predeterminadas para el producto seleccionado. |
|
Cuando se establece en true, ejecuta reglas de aptitud para el producto seleccionado. Si las reglas se evalúan como |
|
Cuando se establece en true, ejecuta reglas de cobertura requeridas de cobertura opcionales. |
|
El valor predeterminado es falso. Cuando esta opción está establecida como El servicio agrega un nodo de mensaje al registro de cobertura opcional afectado si la regla se evalúa como falsa. |
JSON de entrada
Este servicio busca un objeto de producto en la clave de selectedProduct en su JSON de entrada. Este objeto se puede crear por otros servicios como getRatedProducts. Incluye el producto raíz, los productos secundarios y los productos nietos.
Este ejemplo contiene solo un nodo de entrada antes de que el servicio ejecute las reglas.
"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 Alternative
También puede definir una transformación de Asignador de datos de OmniStudio que asigne los datos que se pasaron al JSON de entrada en la forma que necesita el servicio. El JSON de salida de este Asignador de datos es el nodo de selectedProducts requerido por runRules. Cuando agrega este servicio a un OmniScript, establezca preTransformBundle en el nombre del Asignador de datos para que el servicio utilice el Asignador de datos.
JSON de salida
El servicio devuelve la misma estructura JSON que en el nodo selectedProduct con los resultados de la ejecución de las reglas. Consulte Modelo de estructura JSON de producto para obtener detalles acerca del contenido y la estructura de este objeto.
Este ejemplo contiene solo un nodo de salida después de que el servicio ejecute las reglas con los resultados de la ejecución de las reglas.
"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, 