Loading
보험
InsCensusServiceStd:addMembers

InsCensusServiceStd:addMembers

이 서비스를 사용하여 입력 JSON을 사용하여 그룹 인구 조사 구성원을 그룹 인구 조사에 추가합니다.

클래스: InsCensusServiceStd​​

방법: addMembers

작동 방법

이 서비스는 인구 조사 입력 JSON의 구성원을 가져와 주어진 censusId​​에 추가합니다. 추가된 구성원의 ID(censusMemberIds) 목록을 반환합니다.

  1. 서비스가 구성원 데이터를 구문 분석합니다.

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

    2. RelationshipToPrimaryMember를 기반으로 기본 구성원과 종속 구성원을 구분합니다. 구성원 목록에 기본 구성원 및 종속인이 포함된 경우 입력에 모든 구성원에 대한 SourceSystemIdentifier가 있어야 합니다. 모든 구성원에게 고유한 SourceSystemIdentifier가 있어야 합니다. 또한 모든 종속인에게는 PrimaryMemberSource 또는 PrimaryGroupCensusMemberId(기본 구성원이 인구 조사에 이미 존재하는 경우)가 있어야 합니다.

    3. MemberKey를 생성합니다.

    4. 새 GroupClass를 처리합니다. GroupClassId 대신 서비스에 GroupClass.Name가 지정된 경우 서비스에서 이름이 포함된 GroupClass를 가져오고 찾을 수 없는 경우 같은 이름의 새 GroupClass을 만듭니다. GroupClass.Name의 머리글은 {"type":"STRING","label":"Group Class Name","fieldId":"","name":"GroupClass.Name"}입니다. 주어진 GroupClass.Name가 잘못된 경우 오류가 반환됩니다. 서비스는 새 매개 변수 quoteEffectiveDate를 사용하여 GroupClass를 확인합니다. 다음 경우 GroupClass이 유효하다고 여겨집니다.

      노트
      노트 GroupClass.Name가 제공된 경우 구성원의 데이터에 AccountId도 포함합니다.
      • GroupClass가 구성원의 그룹 계정에 연결됩니다.

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

    5. PrimaryGroupCensusMemberId가 있는 부양분을 위한 PrimaryMemberSource 처리 구성원 데이터에 PrimaryMemberSource 및 PrimaryGroupCensusMemberId가 모두 제공된 경우 서비스에서 PrimaryGroupCensusMemberId를 소스로 사용하고 종속의 PrimaryMemberSource을 업데이트하여 기본의 SourceSystemIdentifier을 포함합니다.

  2. 모든 기본 구성원을 저장합니다. 이 서비스는 MemberKey을 사용하여 중복 항목을 식별합니다. 중복 구성원이 있는 경우 서비스가 기존 구성원의 필드를 업데이트합니다. MemberKey는 문자열의 고유한 조합이어야 합니다.

  3. 고아 부양자(PrimaryMemberSource가 없는 부양자)를 파악하기 위해 부양자를 구문 분석합니다.

  4. 유효한 모든 종속자를 저장합니다. 이 서비스는 MemberKey을 사용하여 중복 항목을 식별합니다. 중복 구성원 레코드가 있는 경우 서비스가 새 레코드를 만드는 대신 기존 구성원의 필드를 업데이트합니다.

  5. 구성원 목록의 모든 기본 구성원의 DependentCount를 업데이트합니다.

서비스 동작

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

입력 서비스 출력
censusId 없음 서비스에서 오류를 반환합니다. Specify a censusId.
인구 조사 입력 JSON 없음 서비스에서 오류를 반환합니다. The census input is missing.
기본 구성원에게 제공되는 PrimaryMemberSource 값 서비스에서 오류를 반환합니다. The PrimaryMemberSource must be null for primary members.
headers가 입력 인구 조사에서 누락됨 서비스에서 오류를 반환합니다. The header node is missing in the census input.
members가 입력 인구 조사에서 누락됨 서비스에서 오류를 반환합니다. The members node is missing in the census input.
고아 유부녀(PrimaryMemberSource 또는 PrimaryGroupCensusMemberId가 없는 유부녀) 서비스에서 오류를 반환합니다. Dependent has no primary member.

원격 옵션

옵션

설명

censusId

(필수)

구성원을 추가할 그룹 인구 조사의 ID입니다.

census

(필수)

추가할 구성원의 입력 JSON입니다.

인구 조사 JSON은 머리글 및 구성원과 같은 두 개의 목록으로 구성됩니다. headers는 fieldId, type, label, name으로 구성된 필드의 메타데이터 목록입니다. 여기에서 이름은 필드의 API 이름입니다(관리 패키지 및 사용자 정의 필드에 대한 네임스페이스 포함). members는 인구 조사에 추가할 구성원의 목록입니다.

duplicateKey

(선택 사항)

MemberKey를 생성하고 중복 항목을 식별하는 필드 목록 값이 제공되지 않은 경우 목록에 포함된 기본 필드는 다음과 같습니다. FirstName, Lastname, Email, GroupCensusId.

입력 JSON

입력 JSON은 머리글 및 구성원과 같은 두 개의 목록으로 구성됩니다. 머리글은 fieldId, type, label, name으로 구성된 필드의 메타데이터 목록입니다. 여기에서 이름은 필드의 API 이름입니다(관리 패키지 및 사용자 정의 필드에 대한 네임스페이스 포함). 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": [
            {
                "Lastname": "Koffins",
                "FirstName": "Raj",
                "FullTimeEquivalent": 1,
                "Gender": "Male",
                "Birthdate": "1985-10-13",
                "SourceSystemIdentifier": "1.primary",
                "PrimaryMemberSource": null,
                "Email": "testraj@mail.com",
                "AccountId":"001B000001QOqJHIA1",
                "IsOptOutAllPlans":true,
                "OptOutPlanTypes":"Medical;Dental"
            },
            {
                "Lastname": "Koffins",
                "FirstName": "Rita",
                "Gender": "Female",
                "Birthdate": "1987-07-13",               
                "RelationshipToPrimaryMember": "Spouse",
                "SourceSystemIdentifier": "1.spouse",
                "PrimaryMemberSource": null,
                "Email": "testrita@mail.com",
                "AccountId":"001B000001QOqJHIA1",
                "IsOptOutAllPlans":true,
                "OptOutPlanTypes":"Medical;Dental"
            },
            {
                "Lastname": "Koffins",
                "FirstName": "Kris",
                "Gender": "Male",
                "Birthdate": "2016-05-13",
                "RelationshipToPrimaryMember": "Child",
                "SourceSystemIdentifier": "1.child",
                "PrimaryMemberSource": "1.primary",
                "Email": "testkris@mail.com",
                "AccountId":"001B000001QOqJHIA1",
                "IsOptOutAllPlans":true,
                "OptOutPlanTypes":"Medical;Dental"
            },
            {
                "Lastname": "Warner",
                "FirstName": "Christopher",
                "FullTimeEquivalent": 0.5,
                "Gender": "Male",
                "Birthdate": "1985-10-13",
                "SourceSystemIdentifier": "2.primary",
                "PrimaryMemberSource": null,
                "Email": "testchristopher@mail.com",
                "AccountId":"001B000001QOqJHIA1",
                "IsOptOutAllPlans":false,
                "OptOutPlanTypes":"Medical"
            },
            {
                "Lastname": "Warner",
                "FirstName": "Steph",
                "Gender": "Male",
                "Birthdate": "1985-10-13",
                "RelationshipToPrimaryMember": "Spouse",
                "SourceSystemIdentifier": "2.spouse",
                "PrimaryMemberSource": "2.primary",
                "Email": "teststeph@mail.com",
                "AccountId":"001B000001QOqJHIA1",
                "IsOptOutAllPlans":false,
                "OptOutPlanTypes":"Medical"
            },
            {
                "Lastname": "Jose",
                "FirstName": "Steve",
                "Gender": "Male",
                "Birthdate": "1989-10-13",
                "FullTimeEquivalent":10,
                "SourceSystemIdentifier": "3.primary",
                "Email": "teststeve@mail.com",
                "AccountId":"001B000001QOqJHIA1",
                "IsOptOutAllPlans":false,
                "OptOutPlanTypes":"Medical"
            }
        ]
    }
}
  

출력 JSON

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

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

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

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

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

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

{
  "result": "success",
  "relatedFieldsUpdateErrors": [],
  "relatedFieldsUpdateErrorCount": 0,
  "relatedFieldsUpdateSuccessCount": 2,
  "errors": [
    {
      "error": "[FullTimeEquivalent]: NUMBER_OUTSIDE_VALID_RANGE - Full Time Equivalent: value outside of valid range on numeric field: 10",
      "Birthdate": "1989-10-13",
      "Gender": "Male",
      "IsOptOutAllPlans": false,
      "Lastname": "Jose",
      "SourceSystemIdentifier": "3.primary",
      "FullTimeEquivalent": 10,
      "FirstName": "Steve",
      "AccountId": "001B000001QOqJHIA1",
      "Email": "teststeve@mail.com",
      "OptOutPlanTypes": "Medical"
    },
    {
      "RelationshipToPrimaryMember": "Spouse",
      "SourceSystemIdentifier": "1.spouse",
      "OptOutPlanTypes": "Medical;Dental",
      "PrimaryMemberSource": null,
      "error": "Dependent has no primary member.",
      "Birthdate": "1987-07-13",
      "Gender": "Female",
      "IsOptOutAllPlans": true,
      "Lastname": "Koffins",
      "FirstName": "Rita",
      "AccountId": "001B000001QOqJHIA1",
      "Email": "testrita@mail.com"
    }
  ],
  "censusMemberIds": [
    "0r6B00000000ANcIAM",
    "0r6B00000000ANdIAM",
    "0r6B00000000ANeIAM",
    "0r6B00000000ANfIAM"
  ],
  "errorCode": "INVOKE-200",
  "error": "OK"
}
 
로드 중
Salesforce Help | Article