Loading
보험
InsCensusServiceStd:updateMembers

InsCensusServiceStd:updateMembers

이 서비스를 사용하여 인구 조사에서 기존 구성원의 값을 업데이트합니다.

클래스: InsCensusServiceStd​​

방법: updateMembers

작동 방법

  1. 이 서비스는 입력 JSON에서 구성원을 가져와 주어진 censusId에 따라 새로운 데이터로 인구 조사를 업데이트합니다.

  2. 인구 조사 JSON은 두 개의 목록으로 구성됩니다 - headers 및 members.

    1. headers은 fieldId, type, label 및 name로 구성된 필드의 메타데이터 목록입니다. 여기에서 이름은 관리 패키지 및 사용자 정의 필드의 네임스페이스와 함께 필드의 API 이름입니다.

    2. members는 인구 조사에서 업데이트할 회원 목록입니다.

  3. 서비스에서 updateById 필드를 찾습니다. 이는 서비스에 대한 작업 경로를 결정하는 부울 필드입니다. 다음 두 가지 방법으로 구성원을 업데이트할 수 있습니다.

    1. updateMembers by MemberKey

      이 옵션은 updateById가 false인 경우에 적용됩니다. 구성원 데이터에 구성원 키가 있어야 합니다.

    2. updateMembers GroupCensusMemberID별

      이 옵션은 updateById가 true인 경우에 적용됩니다. 구성원 데이터에 그룹 인구 조사 구성원 ID가 있어야 합니다.

MemberKey별 updateMembers

  1. 서비스에서 구성원의 데이터를 headers에 제공된 필드로 구문 분석합니다. headers에는 구성원 목록에 사용된 모든 필드의 메타데이터가 포함되어야 합니다.

  2. 서비스는 RelationshipToPrimaryMember에 따라 기본 구성원과 종속 구성원을 구분합니다.

    1. 구성원 목록에 기본 구성원 및 자녀가 포함된 경우 입력에 모든 구성원에 대한 SourceSystemIdentifier가 있어야 합니다. 모든 구성원에게 고유한 SourceSystemIdentifier가 있어야 합니다. 또한 모든 가구는 PrimaryMemberSource 또는 PrimaryGroupCensusMemberId가 있어야 합니다(기본 구성원이 이미 인구 조사에 있는 경우).

    2. 목록이 기본 구성원과 종속 구성원의 조합인 경우 구성원 목록에 모든 종속 구성원과 기본 구성원이 있는지 확인합니다.

  3. 서비스에서 새 GroupClass를 처리합니다. 서비스에 GroupClassId 대신 GroupClass.Name가 있는 경우 이름이 있는 GroupClass를 가져오고 찾을 수 없는 경우 동일한 이름의 새 GroupClass을 만듭니다.

    1. 서비스에 GroupClass.Name가 있는 경우 구성원의 데이터에 AccountId도 포함합니다.
    2. GroupClass.Name의 header: {"type":"STRING","label":"Group Class Name","fieldId":"","name":"GroupClass.Name"}를 참조하세요.

    3. 주어진 GroupClass.Name가 잘못된 경우 오류가 반환됩니다. 서비스는 새 매개 변수 quoteEffectiveDate를 사용하여 GroupClass를 확인합니다. 다음 경우 GroupClass이 유효하다고 여겨집니다.

      • GroupClass가 구성원의 그룹 계정에 연결됩니다.

      • quoteEffectiveDate는 GroupClass StartDate와 EndDate 사이에 있습니다. quoteEffectiveDate가 서비스에 대한 매개 변수로 제공되지 않은 경우 이 확인이 건너뛰어집니다.

  4. 이 서비스는 PrimaryGroupCensusMemberId를 가진 자녀를 위한 PrimaryMemberSource을 처리합니다.

    1. 서비스에 PrimaryMemberSource와 PrimaryGroupCensusMemberId이 모두 있는 경우 서비스는 PrimaryGroupCensusMemberId를 소스로 고려하고 종속의 PrimaryMemberSource을 업데이트하여 기본의 SourceSystemIdentifier을 포함합니다.

  5. 서비스는 모든 기본 구성원을 먼저 저장합니다.

  6. 자녀를 분석하여 고아(PrimaryMemberSource가 없는 자녀)를 파악합니다.

  7. 모든 유효한 종속자를 저장합니다.

  8. 이 서비스는 구성원 목록에 있는 모든 기본 구성원의 DependentCount를 업데이트합니다.

ID별 updateMembers

  1. 서비스에서 구성원 데이터를 headers에 제공된 필드로 구문 분석합니다. headers에는 구성원 목록에 사용된 모든 필드의 메타데이터가 포함되어야 합니다.

  2. members 데이터에 Id가 있어야 합니다. 구성원 데이터에서 ID를 찾을 수 없는 경우 서비스에서 오류가 발생합니다.

  3. 서비스에서 새 GroupClass를 처리합니다. 서비스에 GroupClassId 대신 GroupClass.Name가 있는 경우 이름이 있는 GroupClass를 가져오고 찾을 수 없는 경우 동일한 이름의 새 GroupClass을 만듭니다.

    1. 서비스에 GroupClass.Name가 있는 경우 구성원의 데이터에 AccountId도 포함합니다.
    2. GroupClass.Name의 header: {"type":"STRING","label":"Group Class Name","fieldId":"","name":"GroupClass.Name"}를 참조하세요.

  4. 서비스는 PrimaryMemberSource를 가진 부양분을 위한 PrimaryGroupCensusMemberId을 처리합니다.

    1. PrimaryMemberSource를 제공하는 경우 서비스에서 PrimaryGroupCensusMemberId도 업데이트합니다.
  5. 이 서비스는 PrimaryGroupCensusMemberId를 가진 자녀를 위한 PrimaryMemberSource을 처리합니다.

    1. 서비스에 PrimaryMemberSource와 PrimaryGroupCensusMemberId이 모두 있는 경우 서비스는 PrimaryGroupCensusMemberId를 소스로 고려하고 종속의 PrimaryMemberSource을 업데이트하여 기본의 SourceSystemIdentifier을 포함합니다.

  6. 서비스는 종속인을 포함한 모든 구성원을 저장합니다.

  7. 서비스에서 종속된 고아를 식별하지 않습니다.

  8. 이 서비스는 구성원 목록에 있는 모든 기본 구성원의 DependentCount를 업데이트합니다.

원격 옵션

옵션

설명

censusId

(필수)

업데이트할 구성원이 있는 인구 조사 ID입니다.

census

(필수)

업데이트할 구성원에 대한 세부 사항이 포함된 JSON을 입력합니다.

updateById

선택 사항

true로 설정하면 서비스가 Id 플로를 기준으로 updateMembers을 따릅니다.

기본값은 false입니다.

서비스 동작

다양한 입력이 서비스 출력에 미치는 영향을 이해합니다.

입력 updateById 서비스 출력
censusId 없음 true 또는 false

서비스에서 오류를 반환합니다. Specify a censusId.

인구 조사 입력 JSON 없음 true 또는 false 서비스에서 오류를 반환합니다. The census input is missing.
기본 구성원에게 제공된 PrimaryMemberSource의 값 false 서비스에서 오류를 반환합니다. The PrimaryMemberSource must be null for primary members.
headers가 입력 인구 조사에서 누락됨 true 또는 false 서비스에서 오류를 반환합니다. The header node is missing in the census input.
members가 입력 인구 조사에서 누락됨 true 또는 false 서비스에서 오류를 반환합니다. The members node is missing in the census input.
고아 종속자(PrimaryMemberSource 또는 PrimaryGroupCensusMemberId가 없는 종속자) false 서비스에서 오류를 반환합니다. Dependent has no primary member.
구성원의 데이터에 ID 누락 true 서비스에서 오류를 반환합니다. Specify Id of the census member.

입력 JSON

입력 JSON에는 업데이트할 필드를 나열하는 headers 및 해당하는 필드-값 쌍(fieldId 포함)을 포함하는 구성원을 나열하는 members이 포함됩니다.

샘플 입력 JSON(MemberKey별 업데이트Members)

{
  "census": {
    "headers": [
      {
        "type": "STRING",
        "label": "Last Name",
        "fieldId": "",
        "name": "Lastname"
      },
      {
        "type": "STRING",
        "label": "First Name",
        "fieldId": "",
        "name": "FirstName"
      },
      {
        "type": "DOUBLE",
        "label": "FTE",
        "fieldId": "",
        "name": "FullTimeEquivalent"
      },
      {
        "type": "PICKLIST",
        "label": "Gender",
        "fieldId": "",
        "name": "Gender"
      },
      {
        "type": "DATE",
        "label": "Birthday",
        "fieldId": "",
        "name": "Birthdate"
      },
      {
        "type": "PICKLIST",
        "label": "Relationship To Primary",
        "fieldId": "",
        "name": "RelationshipToPrimaryMember"
      },
      {
        "type": "BOOLEAN",
        "label": "Is Opt-out All Plans",
        "fieldId": "",
        "name": "IsOptOutAllPlans"
      },
      {
        "type": "MULTIPICKLIST",
        "label": "Opt-Out Plan Types",
        "fieldId": "",
        "name": "OptOutPlanTypes"
      },
      {
        "type": "ENTITYID",
        "label": "Account",
        "fieldId": "",
        "name": "AccountId"
      },
      {
        "type": "EMAIL",
        "label": "Email",
        "fieldId": "",
        "name": "Email"
      },
      {
        "type": "STRING",
        "label": "Primary Member Identifier",
        "fieldId": "",
        "name": "PrimaryMemberSource"
      },
      {
        "type": "STRING",
        "label": "Member Identifier",
        "fieldId": "",
        "name": "SourceSystemIdentifier"
      }
    ],
    "members": [
      {
        "MemberKey": "cd64a62573825ee11b87ce91110aa576",
        "Lastname": "KoffinsUpdated",
        "FirstName": "RajUpdated",
        "FullTimeEquivalent": 1,
        "Gender": "Male",
        "Birthdate": "1965-10-13",
        "SourceSystemIdentifier": "1.primary",
        "PrimaryMemberSource": null,
        "Email": "testrajUpdated@mail.com"
      },
      {
        "MemberKey": "f2f8735bbb66b3f7d7b2bae794c00650",
        "Lastname": "Koffins",
        "FirstName": "KrisUpdated",
        "Gender": "Male",
        "Birthdate": "2010-05-13",
        "RelationshipToPrimaryMember": "Child",
        "SourceSystemIdentifier": "1.child",
        "PrimaryMemberSource": "1.primary",
        "Email": "testkrisUpdated@mail.com"
      },
      {
        "Lastname": "WarnerUpdated",
        "MemberKey": "5a5bc4e3c05cf461a65a2d7fdc0ab8e0",
        "FirstName": "Christopher",
        "FullTimeEquivalent": 0.75,
        "Gender": "Male",
        "Birthdate": "1985-10-13",
        "SourceSystemIdentifier": "2.primary",
        "PrimaryMemberSource": null,
        "Email": "testchristopherUpdated@mail.com"
      },
      {
        "Lastname": "WarnerUpdated",
        "MemberKey": "157b2052fc732d8261984c2922a3261b",
        "FirstName": "Steph",
        "Gender": "Male",
        "Birthdate": "1985-10-13",
        "RelationshipToPrimaryMember": "Spouse",
        "SourceSystemIdentifier": "2.spouse",
        "PrimaryMemberSource": "2.primary",
        "Email": "teststephUpdated.com"
      }
    ]
  }
}

샘플 입력 JSON(ID별 업데이트 구성원)

{
  "census": {
    "headers": [
      {
        "type": "STRING",
        "label": "Last Name",
        "fieldId": "",
        "name": "Lastname"
      },
      {
        "type": "STRING",
        "label": "First Name",
        "fieldId": "",
        "name": "FirstName"
      },
      {
        "type": "DOUBLE",
        "label": "FTE",
        "fieldId": "",
        "name": "FullTimeEquivalent"
      },
      {
        "type": "PICKLIST",
        "label": "Gender",
        "fieldId": "",
        "name": "Gender"
      },
      {
        "type": "DATE",
        "label": "Birthday",
        "fieldId": "",
        "name": "Birthdate"
      },
      {
        "type": "PICKLIST",
        "label": "Relationship To Primary",
        "fieldId": "",
        "name": "RelationshipToPrimaryMember"
      },
      {
        "type": "BOOLEAN",
        "label": "Is Opt-out All Plans",
        "fieldId": "",
        "name": "IsOptOutAllPlans"
      },
      {
        "type": "MULTIPICKLIST",
        "label": "Opt-Out Plan Types",
        "fieldId": "",
        "name": "OptOutPlanTypes"
      },
      {
        "type": "ENTITYID",
        "label": "Account",
        "fieldId": "",
        "name": "AccountId"
      },
      {
        "type": "EMAIL",
        "label": "Email",
        "fieldId": "",
        "name": "Email"
      },
      {
        "type": "STRING",
        "label": "Primary Member Identifier",
        "fieldId": "",
        "name": "PrimaryMemberSource"
      },
      {
        "type": "STRING",
        "label": "Member Identifier",
        "fieldId": "",
        "name": "SourceSystemIdentifier"
      }
    ],
    "members": [
      {
        "Id":"0r6RO00000005pZYAQ",
        "Lastname": "KoffinsUpdatedById",
        "FirstName": "RajUpdatedById",
        "Birthdate": "1965-10-13",
        "Email": "testrajUpdated@mail.com"
      },
      {
        "Id":"0r6RO00000005pbYAA",
        "Lastname": "Koffins",
        "FirstName": "KrisUpdatedById",
        "Gender": "Male",
        "Birthdate": "2010-05-13",
        "RelationshipToPrimaryMember": "Child",
        "Email": "testkrisUpdatedById@mail.com"
      },
      {
        "Id":"0r6RO00000005paYAA",
        "Lastname": "WarnerUpdatedById",
        "FirstName": "Christopher",
        "FullTimeEquivalent": 0.75,
        "Gender": "Male",
        "Birthdate": "1985-10-13",
        "Email": "testchristopherUpdatedById@mail.com"
      },
      {
        "Lastname": "WarnerUpdatedById",
        "FirstName": "Steph",
        "Birthdate": "1985-10-13",
        "Email": "teststephUpdated.com"
      }
    ]
  }
}

출력 JSON

플로가 완료되면 서비스가 성공 메시지를 반환합니다. 그렇지 않으면 예외가 발생할 경우 오류가 반환됩니다.

  • censusMemberIds: 저장된 구성원의 GroupCensusMemberIds 목록입니다.

  • 오류: 오류가 있는 구성원의 목록입니다. 각 목록 항목은 입력 구성원 데이터 및 오류로 구성됩니다.

  • ​ ​ ​ relatedFieldsUpdateSuccessCount: 서비스별로 DependentCount가 업데이트되는 주 구성원 수

  • ​ ​ ​ relatedFieldsUpdateErrorCount: DependentCount 업데이트가 오류를 반환하는 기본 구성원 수

  • relatedFieldsUpdateErrors: 기본 구성원의 DependentCount를 업데이트하는 동안 반환된 오류 목록입니다.

샘플 출력 JSON(MemberKey별 업데이트Members)

{
  "result": "success",
  "relatedFieldsUpdateErrors": [],
  "relatedFieldsUpdateErrorCount": 0,
  "relatedFieldsUpdateSuccessCount": 2,
  "errors": [
    {
      "error": "[Email]: INVALID_EMAIL_ADDRESS - Email: invalid email address: teststephUpdated.com",
      "Birthdate": "1985-10-13",
      "Gender": "Male",
      "Lastname": "WarnerUpdated",
      "RelationshipToPrimaryMember": "Spouse",
      "MemberKey": "157b2052fc732d8261984c2922a3261b",
      "SourceSystemIdentifier": "2.spouse",
      "FirstName": "Steph",
      "Email": "teststephUpdated.com",
      "PrimaryMemberSource": "2.primary"
    }
  ],
  "censusMemberIds": [
    "0r6RO00000005pZYAQ",
    "0r6RO00000005paYAA",
    "0r6RO00000005pbYAA"
  ],
  "deletedCensusMemberIds": [],
  "errorCode": "INVOKE-200",
  "error": "OK"
}

샘플 출력 JSON - (updateMembers By Id)

{
  "result": "success",
  "relatedFieldsUpdateErrors": [],
  "relatedFieldsUpdateErrorCount": 0,
  "relatedFieldsUpdateSuccessCount": 2,
  "errors": [
    {
      "error": "Specify Id of the census member.",
      "Birthdate": "1985-10-13",
      "Lastname": "WarnerUpdatedById",
      "FirstName": "Steph",
      "Email": "teststephUpdated.com"
    }
  ],
  "censusMemberIds": [
    "0r6RO00000005pZYAQ",
    "0r6RO00000005pbYAA",
    "0r6RO00000005paYAA"
  ],
  "errorCode": "INVOKE-200",
  "error": "OK"
}
 
로드 중
Salesforce Help | Article