您位於此處:
InsCensusServiceStd:updateMembersWithPlans
使用此服務可將主要成員、其下屬及其預先註冊的計畫填入群組普查。此服務會依 memberKey 更新現有 GroupCensusMember,並為現有 GroupCensusMember 記錄建立 GroupCensusMemberPlan 記錄。它會使用輸入 JSON 中指定的 ContractGroupPlans 來更新每個 GroupCensusMember 的計畫。
類別:InsCensusServiceStd
方法:updateMembersWithPlans
運作方式
-
服務會傳遞 censusId 和普查輸入 JSON,以使用計畫更新成員。
-
census JSON 包含兩個清單 -
headers與members。-
headers是包含fieldId、type、label和name的欄位中繼資料清單。此處的名稱是欄位的 API 名稱 (包含受管理封裝和自訂欄位的命名空間)。headers必須包含ContactGroupPlanId. -
members是要在普查中更新的成員清單。對於多個計畫,members必須包含以 semicolon(;) 分隔的ContactGroupPlanId。
-
-
服務會透過 MemberKey 呼叫
updateMembers來儲存成員的相關資料,並剖析 JSON 物件中的成員。 -
此服務會將所有新成員的
isNewMember新增為 true。它也會填入每個 GroupCensusMember 的識別碼。 -
接著服務會呼叫
InsCensusServiceStd: addPlanSelections為每個成員建立GroupCensusMemberPlan。它也接受每個成員的選擇性涵蓋範圍,以便主要成員和相依性在相同計畫下註冊不同的涵蓋範圍。
依 MemberKey 的 updateMembers
-
服務會使用在
headers中提供的欄位剖析成員的資料。headers必須包含成員清單中使用的所有欄位中繼資料。 -
此服務會根據
RelationshipToPrimaryMember將主要成員與相依成員分開。-
如果成員清單包含主要成員和下屬,則輸入必須有所有成員的
SourceSystemIdentifier。所有成員都必須有唯一的SourceSystemIdentifier。此外,所有相依人員都必須有PrimaryMemberSource或PrimaryGroupCensusMemberId(如果主要成員已出現在普查中)。 -
如果清單是主要和相依成員的組合,請確保每個相依成員和主要成員皆存在於成員清單中。
-
-
服務會處理新
GroupClass。如果服務具有GroupClass.Name而非GroupClassId,則會提取名稱的GroupClass,如果找不到相同名稱,則會建立新的GroupClass。- 如果服務有
GroupClass.Name,則也請在成員的資料中包含AccountId。 -
GroupClass.Name的header:{"type":"STRING","label":"Group Class Name","fieldId":"","name":"GroupClass.Name"}. -
如果提供的
GroupClass無效,則會傳回錯誤。以下情況會將GroupClass視為有效:-
GroupClass會連結至成員的群組帳戶。 -
契約的有效期間在
GroupClass的StartDate和EndDate之間。 -
使用作為服務輸入提供的
ContractId來提取契約的StartDate和EndDate
-
- 如果服務有
-
服務會處理具有
PrimaryGroupCensusMemberId之相依者的PrimaryMemberSource。-
如果服務具有
PrimaryMemberSource與PrimaryGroupCensusMemberId,則服務會將PrimaryGroupCensusMemberId視為來源,並將相依的PrimaryMemberSource更新為包含主要的SourceSystemIdentifier。
-
-
服務會先儲存所有主要成員。
-
它會剖析相依性以識別孤立相依性 (不含
PrimaryMemberSource的相依性)。 -
它會儲存所有有效的相依性。
-
服務會更新成員清單中所有主要成員的
DependentCount。
遠端選項
選項 |
描述 |
|---|---|
|
必要 要更新成員的普查識別碼。 驗證 |
|
必要。 輸入 JSON,其中包含要更新的成員詳細資料。 |
|
必要 帳戶目前契約的識別碼。 驗證每個成員的計畫為契約的一部分。 |
|
布林值 如果為 true,則會刪除沒有 |
|
選擇性 用於識別現有成員的 清單中的預設欄位: |
| 輸入 | 服務輸出 |
|---|---|
否 censusId |
服務傳回錯誤: Specify a censusId. |
無普查輸入 JSON |
服務傳回錯誤: |
提供給主要成員的 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. |
無 contractId 或無 contractId |
服務不會更新任何成員計畫。 |
指定契約的無效ContractGroupPlanId |
服務未建立成員計畫。 如果
|
成員的無效ContractGroupPlanId (由於選擇退出) |
未建立成員計畫 如果
|
| 主要成員選擇退出產品類型 |
如果主要成員選擇退出產品類型,則從屬也會選擇退出該產品類型。 |
| 從屬成員選擇退出產品類型 |
如果主要成員選擇退出產品類型,則從屬也會選擇退出該產品類型。 如果主要成員的 |
輸入 JSON
以下是輸入 JSON 的格式外觀:
{
"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"
},
{
"type": "ENTITYID",
"label": "Contract Group Plan",
"fieldId": "",
"name": "ContractGroupPlanId"
}
],
"members": [
{
"MemberKey": "cd64a62573825ee11b87ce91110aa576",
"Lastname": "KoffinsUpdated",
"FirstName": "RajUpdated",
"FullTimeEquivalent": 1,
"Gender": "Male",
"Birthdate": "1965-10-13",
"SourceSystemIdentifier": "1.primary",
"PrimaryMemberSource": null,
"Email": "testrajUpdated@mail.com",
"ContractGroupPlanId":"a4D4P000000hbjSUAQ;a4D4P000000hbjSUAQ"
},
{
"MemberKey": "f2f8735bbb66b3f7d7b2bae794c00650",
"Lastname": "Koffins",
"FirstName": "KrisUpdated",
"Gender": "Male",
"Birthdate": "2010-05-13",
"RelationshipToPrimaryMember": "Child",
"SourceSystemIdentifier": "1.child",
"PrimaryMemberSource": "1.primary",
"Email": "testkrisUpdated@mail.com",
"ContractGroupPlanId":"a4D4P000000hbjSUAQ;a4D4P000000hbjSUAQ"
},
{
"Lastname": "WarnerUpdated",
"MemberKey": "5a5bc4e3c05cf461a65a2d7fdc0ab8e0",
"FirstName": "Christopher",
"FullTimeEquivalent": 0.75,
"Gender": "Male",
"Birthdate": "1985-10-13",
"SourceSystemIdentifier": "2.primary",
"PrimaryMemberSource": null,
"Email": "testchristopherUpdated@mail.com",
"ContractGroupPlanId":"a4D4P000000hbjSUAQ;a4D4P000000hbjSUAQ"
},
{
"Lastname": "WarnerUpdated",
"MemberKey": "157b2052fc732d8261984c2922a3261b",
"FirstName": "Steph",
"Gender": "Male",
"Birthdate": "1985-10-13",
"RelationshipToPrimaryMember": "Spouse",
"SourceSystemIdentifier": "2.spouse",
"PrimaryMemberSource": "2.primary",
"Email": "teststephUpdated.com",
"ContractGroupPlanId":"a4D4P000000hbjSUAQ;a4D4P000000hbjSUAQ"
}
]
}
}輸出 JSON
如果流程完成,則服務會傳回成功訊息,否則會在發生任何例外狀況時傳回錯誤訊息。
-
censusMemberIds:已儲存成員的GroupCensusMemberIds清單。 -
錯誤:具有錯誤的成員清單。每個清單項目都包含輸入成員資料與錯誤。
-
relatedFieldsUpdateSuccessCount:依服務更新其DependentCount的主要成員數。 -
relatedFieldsUpdateErrorCount:DependentCount更新傳回錯誤的主要成員數。 -
relatedFieldsUpdateErrors:更新主要成員的DependentCount時傳回的錯誤清單。 -
memberPlanIds:成功插入的GroupCensusMemberPlanIds清單。
{
"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",
"ContractGroupPlanId":"a4D4P000000hbjSUAQ;a4D4P000000hbjSUAQ"
}
],
"censusMemberIds": [
"0r6RO00000005pZYAQ",
"0r6RO00000005paYAA",
"0r6RO00000005pbYAA"
],
"memberPlanIds":[
"a4B4P000006jKsMUAU",
"a4B4P000006jKsNUAU",
"a4B4P000006jKsOUAU",
"a4B4P000006jKsPUAU",
"a4B4P000006jKsQUAU",
"a4B4P000006jKsRUAU"
],
"errorCode": "INVOKE-200",
"error": "OK"
}