Loading
보험
InsClaimService:invokeProductRules

InsClaimService:invokeProductRules

청구 플로에서 이 서비스를 사용하여 제품에 추가한 보험 규칙을 호출합니다.

예를 들어, 승인을 위해 특정 달러 금액을 초과하는 청구를 보험사에 보내는 규칙을 추가한 경우 이 서비스는 해당 규칙을 호출합니다.

클래스: InsClaimService

방법: invokeProductRules

작동 방법

  1. 서비스는 objectID를 기반으로 청구 객체를 찾고 해당 objectID를 기반으로 해당 객체에 대한 제품을 추출합니다.
  2. 지정된 transitionName를 찾습니다.
  3. 제품과 연결되어 있으며 transitionName에 적용되는 규칙을 실행합니다.

    각 청구 제품 규칙에 대해 각 관련 당사자 인스턴스 및/또는 관련 속성 인스턴스를 별도로 평가합니다.

  4. 규칙이 true로 평가될 경우 서비스가 해당 규칙에 지정된 Vlocity 작업을 실행합니다.

    예를 들어 작업에서 과업을 만들도록 지정하는 경우 서비스에서 과업을 만듭니다.

  5. includeStateTransition 옵션의 값을 찾습니다. 값이 true인 경우 서비스는 이 객체에 대한 상태 모델을 찾고, fieldAPIName 값을 찾고, 전환을 기반으로 해당 값을 변경합니다.
  6. 각 관련 당사자 및/또는 관련 속성 인스턴스의 각 규칙에 대한 평가 결과를 출력합니다.

원격 옵션

옵션

설명

includeStateTransition

true인 경우 서비스는 상태 모델의 fieldAPIName에 지정된 상태 필드를 전환 시 지정된 상태로 변경합니다.

false인 경우 서비스에서 상태 전환을 수행하지 않습니다.

objectId

조회할 청구 ID 또는 청구 보장 ID입니다.

transitionName

실행할 규칙과 연결된 시/도 전환 이름입니다.

서비스는 사용자가 지정한 transitionName와 연결된 규칙만 실행합니다.

전환 이름을 찾으려면 이 개체의 시/도 모델로 이동합니다.

mode

objectId이 클레임 ID인 경우 두 가지 mode 값(ItemMode 또는 CoverageMode)이 있습니다. mode 매개 변수는 해당 클레임 ID에 대해 평가되는 객체를 지정합니다.

  • ItemMode(기본값)를 사용하여 클레임으로 정의된 해당 유형이 있는 제품 규칙을 평가합니다. 서비스는 청구 ID와 연결된 모든 ClaimItem 레코드에 해당 규칙을 적용합니다. ItemMode를 사용하면 규칙 엔진에 사용할 수 있는 개체가 ClaimItem 및 Claim 개체입니다.

    ItemMode는 첫 번째 손실 통지를 끝낼 때(예: 초안에서 진행 중으로 전환) 청구 보장 범위를 열 때 유용합니다. 차량 2대와 사람 3명과 관련된 사고를 가정해 보겠습니다. true로 평가되는 규칙을 사용하여 통합 절차를 호출하는 작업을 호출하여 각 청구 항목에 대한 올바른 청구 보장 범위 열기와 같은 작업을 수행할 수 있습니다. 청구 보장 범위에는 자사 차량의 충돌, 타사 차량의 부동산 손상, 운전자 중 한 명의 신체 손상 등이 포함될 수 있습니다.

  • CoverageMode를 사용하여 청구 보장 범위로 정의된 해당 유형의 제품 규칙을 평가합니다. 서비스는 ClaimId와 연결된 모든 청구 보장 범위 레코드에 해당 규칙을 적용합니다. CoverageMode를 사용하면 규칙 엔진에 사용할 수 있는 개체가 ClaimCoverage, InsurancePolicyCoverage, Claim 개체입니다.

    CoverageMode는 청구의 모든 청구 보장 범위에 대한 규칙을 실행하는 경우 유용합니다. 예를 들어, 대기 기간 규칙이 적용되는지 결정할 때 CoverageMode를 사용합니다. 이러한 규칙은 진행 중에서 거부됨으로 전환을 트리거할 수 있습니다.

objectId가 청구 보장 ID인 경우 규칙 엔진이 적용 가능한 유형이 ClaimCoverage로 정의된 제품 규칙을 평가합니다. 서비스는 단일 ClaimCoverageId에 해당 규칙을 적용합니다. 이 경우 서비스가 여러 하위 수준 개체가 아닌 하나의 개체만 평가하므로 mode가 사용되지 않습니다.

falseTransitionState

(선택 사항)

서비스에서 실행하는 모든 규칙이 false로 평가될 때 서비스가 개체를 전환하는 상태입니다.

서비스는 includeStateTransition = true인 경우에만 개체를 이 상태로 전환합니다.

입력 JSON

이 서비스는 입력 JSON에 아무것도 사용하지 않습니다.

출력 JSON

서비스는 관련 속성 및/또는 관련 당사자의 각 인스턴스에 대한 규칙 평가를 반환합니다.

이 예의 입력이 다음과 같습니다.

  • objectId = claimId

  • transitionName = 규칙 전환 이름

{
    "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"
                }
            }
        ]
    }
}

이 JSON에는 다음 키/값 쌍이 포함됩니다.

키

값

stateTransit

청구 개체의 상태 필드에서 서비스가 변경된 내용을 설명합니다.

canTransitState

true 또는 false

서비스가 개체를 새 상태로 전환할지 여부를 알려줍니다.

allFalse

서비스에서 실행하는 모든 규칙이 false로 평가되는 경우 allFalse = true입니다.

서비스에서 실행하는 규칙 중 하나가 true로 평가되는 경우 allFalse = false입니다.

falseRules

하나 이상의 ruleDetails의 배열입니다.

false로 평가되는 서비스에서 실행되는 모든 규칙을 포함합니다.

trueRules

하나 이상의 actionResults 및 ruleDetails의 배열입니다.

true로 평가되는 서비스에서 실행되는 모든 규칙을 포함합니다.

allFalse = false인 경우에만 나타납니다. 즉, 서비스에서 실행되는 규칙 중 하나 이상이 true로 평가됩니다.

error

서비스에서 발생한 오류입니다.

값이 OK인 경우 UI에 오류 메시지가 표시되지 않습니다.

falseRules 및 trueRules 배열에는 모두 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 배열에는 하나 이상의 actionResults, 추가 키/값 쌍, rulesDetails이 포함되어 있습니다.

actionResults은 서비스에서 호출한 Vlocity 작업 클래스 및 작업 방법의 출력입니다.

 "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"
                }
            }
        ]
    }

예

일반적으로 청구를 자동으로 승인할 수 있는지 여부를 결정하는 규칙을 지정하거나 추가 고려를 위해 보험사에게 이동하려는 경우 서비스가 사용됩니다.

 
로드 중
Salesforce Help | Article