Loading
メールアドレスがデフォルトのログイン方式となります 続きを読む
Insurance
InsClaimCoverageService:invokeProductRules

InsClaimCoverageService:invokeProductRules

請求補償範囲を作成するときにこのサービスを使用して、状態遷移の商品ルールを呼び出します。

クラス: InsClaimCoverageService

方法: invokeProductRules

操作手順

  1. objectIDに基づいて請求オブジェクトを検索し、そのobjectIDに基づいてそのオブジェクトの商品を抽出します。

  2. 指定されたtransitionNameを検索します。

  3. 商品に関連付けられてtransitionNameに適用されるルールを実行します。

    請求補償範囲商品ルールごとに、各関係者インスタンスおよび/または関与プロパティインスタンスを個別に評価します。

  4. いずれかのルールが true と評価されると、サービスはそれらのルールで指定された Vlocity アクションを実行します。

  5. includeStateTransition オプションの値を検索します。value = true の場合、サービスはこのオブジェクトの状態モデルを検索し、fieldAPIName値を見つけて、遷移に基づいてその値を変更します。

  6. 各関係者または関与プロパティインスタンスのルールごとに評価の結果を出力します。

リモートオプション

オプション

説明

includeStateTransition

true の場合、サービスは状態モデルのfieldAPINameで指定された状態項目をトランジションで指定された状態に変更します。

false の場合、サービスは状態遷移を行いません。

mode

CoverageModeに設定されている場合、InsuranceClaimCoverages__cルールのみを実行する。

objectId

照会される請求 ID。

transitionName

実行するルールに関連付けられた状態遷移名。

サービスは、指定したtransitionNameに関連付けられたルールのみを実行します。

Transition Name を見つけるには、このオブジェクトの状態モデルに移動します。

Input JSON

このサービスは入力 JSON を取りません。

出力 JSON

このサービスは、関与プロパティまたは関係者 (あるいはその両方) の各インスタンスのルール評価を返します。

出力 JSON の構造を次に示します。

{
  "falseRules" : {
    "<String identifier>" : [
      {
        "ruleDetails": {
          "requirement name": <ProductRequirement__c.Name>,
          "conditions": <ProductRequirement__c.Conditions__c>,
          "message": <ProductRequirement__c.Message__c>,
          "action method": <ProductRequirement__c.VlocityActionId__r.InvokeMethodName__c>,
          "action class": <ProductRequirement__c.VlocityActionId__r.InvokeClassName__c>,
          "productId": <ProductRequirement__c.Product2Id__c>,
          "transitionName": <input transitionName>,
          "objectId": <input objectid>,
          "ruleId": <<ProductRequirement__c.Id>
        }
      }
    ]
  }
},  
  "trueRules": {
    "<String identifier>" : [
      {
        "ruleDetails": {
          "requirement name": <ProductRequirement__c.Name>,
          "conditions": <ProductRequirement__c.Conditions__c>,
          "message": <ProductRequirement__c.Message__c>,
          "action method": <ProductRequirement__c.VlocityActionId__r.InvokeMethodName__c>,
          "action class": <ProductRequirement__c.VlocityActionId__r.InvokeClassName__c>,
          "productId": <ProductRequirement__c.Product2Id__c>,
          "transitionName": <input transitionName>,
          "objectId": <input objectid>,
          "ruleId": <<ProductRequirement__c.Id>
        }
      }
    ]
  },
  "transitionSuccess": <Boolean, transition result>,
  "stateTransit": <message with the object's state field, the old state, and the new state.>,
  "canTransitState": <Boolean. determine if the object has fulfilled its transit criterria>,
  "allFalse": <Boolean, if no rule executed true.>
}

次に、false に評価されたルールと true に評価されたルールが含まれる出力 JSON の例を示します。

{
  "falseRules": {
    "PetBodilyInjury_BMW 735i_a4m5w000000p6DE": [
      {
        "ruleDetails": {
          "requirement name": "Maximum Aggregation Rule",
          "conditions": "TardisCoverage.EACHPERSON == 30800",
          "message": "TestMessage",
          "action method": "Product_Rule",
          "action class": "IntegrationProcedureService",
          "productId": "01t5w00000E0L8xAAF",
          "transitionName": "OpenToClosed",
          "objectId": "a4J5w000001Z3ElEAK",
          "ruleId": "a5L5w000003Tl7EEAS"
        }
      }
    ]
  },
  "trueRules": {
    "PetBodilyInjury_BMW 735i Owner_a4m5w000000p6DE": [
      {
        "actionResults": {
          "IPResult": {
            "output": "TestOutput"
          }
        },
        "ruleDetails": {
          "requirement name": "Maximum Aggregation Rule",
          "conditions": "TardisCoverage.EACHPERSON == 30800",
          "message": "TestMessage",
          "action method": "Product_Rule",
          "action class": "IntegrationProcedureService",
          "productId": "01t5w00000E0L8xAAF",
          "transitionName": "OpenToClosed",
          "objectId": "a4J5w000001Z3EmEAK",
          "ruleId": "a5L5w000003Tl7EEAS"
        }
      }
    ]
  },
  "transitionSuccess": true,
  "stateTransit": " updated ClaimStatus__c from Open to Closed",
  "canTransitState": true,
  "allFalse": false
}
 
読み込み中
Salesforce Help | Article