Question
Using the following setting
- enableNestedAttribute=true,
- partialOveride in POST
- matchFieldURI defined
- Aggregation survivorship defined for attribute
"label": "Individual Enrollments",
"name": "IndividualEnrollments",
"description": "Individual Enrollments",
"type": "Nested",
"hidden": false,
"important": false,
"system": false,
"faceted": true,
"searchable": true,
"uri": "configuration/entityTypes/Individual/attributes/IndividualEnrollments",
"dataLabelPattern": "{EnrollmentID}, {Type}, {Status}",
"matchFieldURIs": [
"configuration/entityTypes/Individual/attributes/IndividualEnrollments/attributes/EnrollmentID"
],
"matchFieldURIsExactOrNull": [
"configuration/entityTypes/Individual/attributes/IndividualEnrollments/attributes/Type"
],
- Create the entity
API call used:
POST https://<environment>.reltio.com/reltio/api/<tenantId>/entities?options=partialOverride,updateAttributeUpdateDates,ovOnly
Request body
[{
"type": "configuration/entityTypes/Individual",
"crosswalks": [
{
"value": "169081454756029752",
"updateDate": "2023-07-31T14:42:27.560306z",
"sourceTable": "Siebel_Individual",
"type": "configuration/sources/Siebel",
"dataProvider": true,
"contributorProvider": false
}
],
"attributes": {
"FirstName": [
{
"value": "Maliktest2"
}
],
"DQE_FirstName": [
{
"value": "N"
}
],
"DQE_LastName": [
{
"value": "Y"
}
],
"LastName": [
{
"value": "Albeiktest12311"
}
],
"IndividualEnrollments": [
{
"value": {
"Type": [
{
"value": "Spa_Club"
}
],
"Status": [
{
"value": "Active"
}
],
"StatusChangeDate": [
{
"value": "05/10/2023"
}
],
"StartDate": [
{
"value": "05/10/2023"
}
],
"IndividualEnrollmentsCustomFields": [
{
"value": {
"Type": [
{
"value": "pros_id"
}
],
"Value": [
{
"value": "19283409318203"
}
]
}
}
]
}
}
]
}
}
]
Result:
"Status": [
{
"type": "configuration/entityTypes/Individual/attributes/IndividualEnrollments/attributes/Status",
"ov": true,
"value": "Active",
"lookupCode": "ACTIVE",
"lookupValue": "Active",
"uri": "entities/00005bd/attributes/IndividualEnrollments/1msuH3/Status/1mt2nZ"
}
],
{
"uri": "entities/00005bd/crosswalks/1mtSN7",
"type": "configuration/sources/Siebel",
"sourceTable": "Siebel_Individual",
"value": "169081454756029752",
"reltioLoadDate": "2023-08-01T01:12:43.186Z",
"createDate": "2023-08-01T01:12:43.186Z",
"updateDate": "2023-07-31T14:42:27.560Z",
"attributes": [
"entities/00005bd/attributes/IndividualEnrollments/1msuH3/StatusChangeDate/1mt73p",
"entities/00005bd/attributes/IndividualEnrollments/1msuH3/IndividualEnrollmentsCustomFields/1mtFaL/Type/1mtJqb",
"entities/00005bd/attributes/DQE_LastName/1mslkX",
"entities/00005bd/attributes/IndividualEnrollments/1msuH3/Status/1mt2nZ",
"entities/00005bd/attributes/DQE_FirstName/1mshUH",
"entities/00005bd/attributes/IndividualEnrollments/1msuH3"
],
"singleAttributeUpdateDates": {}Update to Cancelled
API call used:
POST https://gus-training.reltio.com/reltio/api/ib0oLwKoe6wqj0P/entities?options=partialOverride,updateAttributeUpdateDates,ovOnly
Request body
[{ "type": "configuration/entityTypes/Individual",
"crosswalks": [
{
"value": "169081454756029752",
"updateDate": "2023-08-01T20:50:22.258074z",
"sourceTable": "Siebel_Individual",
"type": "configuration/sources/Siebel",
"dataProvider": true
}
],
"attributes": {
"IndividualEnrollments": [
{
"value": {
"EnrollmentID": [
{
"value": 6851414
}
],
"Type": [
{
"value": "Spa_Club"
}
],
"Status": [
{
"value": "Cancelled"
}
],
"IndividualEnrollmentsCustomFields": [
{
"value": {
"Type": [
{
"value": "wcs_id"
}
],
"Value": [
{
"value": "1239801283"
}
]
}
}
]
}
}
]
}
}]
Result:
"Status": [
{
"type": "configuration/entityTypes/Individual/attributes/IndividualEnrollments/attributes/Status",
"ov": true,
"value": "Cancelled",
"lookupCode": "CANCELLED",
"lookupValue": "Cancelled",
"uri": "entities/00005bd/attributes/IndividualEnrollments/1msuH3/Status/4PSbJXy"
},
{
"type": "configuration/entityTypes/Individual/attributes/IndividualEnrollments/attributes/Status",
"ov": false,
"value": "Active",
"lookupCode": "ACTIVE",
"lookupValue": "Active",
"uri": "entities/00005bd/attributes/IndividualEnrollments/1msuH3/Status/1mt2nZ"
}
]
{
"uri": "entities/00005bd/crosswalks/1mtSN7",
"type": "configuration/sources/Siebel",
"sourceTable": "Siebel_Individual",
"value": "169081454756029752",
"reltioLoadDate": "2023-08-01T01:37:10.133Z",
"createDate": "2023-08-01T01:12:43.186Z",
"updateDate": "2023-07-31T14:42:27.560Z",
"attributes": [
"entities/00005bd/attributes/IndividualEnrollments/1msuH3/IndividualEnrollmentsCustomFields/1mtFaL/Value/1mtO6r",
"entities/00005bd/attributes/IndividualEnrollments/1msuH3/Type/1msyXJ",
"entities/00005bd/attributes/IndividualEnrollments/1msuH3/Status/4PSbJXy",
"entities/00005bd/attributes/IndividualEnrollments/1msuH3/IndividualEnrollmentsCustomFields/4PSaHc6/Type/4PSaLsM"
],
"singleAttributeUpdateDates": {
"entities/00005bd/attributes/IndividualEnrollments/1msuH3/Status/4PSbJXy": "2023-08-01T20:50:22.258Z",
"entities/00005bd/attributes/IndividualEnrollments/1msuH3/IndividualEnrollmentsCustomFields/4PSaHc6/Value/4PSaQ8c": "2023-08-01T20:50:22.258Z",
"entities/00005bd/attributes/IndividualEnrollments/1msuH3/IndividualEnrollmentsCustomFields/4PSaHc6": "2023-08-02T00:50:22.000Z",
"entities/00005bd/attributes/IndividualEnrollments/1msuH3": "2023-08-02T00:50:22.000Z",
"entities/00005bd/attributes/IndividualEnrollments/1msuH3/IndividualEnrollmentsCustomFields/4PSaHc6/Type/4PSaLsM": "2023-08-01T20:50:22.258Z"
}Update to back to Active
API call used:
POST https://gus-training.reltio.com/reltio/api/ib0oLwKoe6wqj0P/entities?options=partialOverride,updateAttributeUpdateDates,ovOnly
Request body
[{ "type": "configuration/entityTypes/Individual",
"crosswalks": [
{
"value": "169081454756029752",
"updateDate": "2023-08-02T20:50:22.258074z",
"sourceTable": "Siebel_Individual",
"type": "configuration/sources/Siebel",
"dataProvider": true
}
],
"attributes": {
"IndividualEnrollments": [
{
"value": {
"EnrollmentID": [
{
"value": 6851414
}
],
"Type": [
{
"value": "Spa_Club"
}
],
"Status": [
{
"value": "Active"
}
],
"IndividualEnrollmentsCustomFields": [
{
"value": {
"Type": [
{
"value": "wcs_id"
}
],
"Value": [
{
"value": "1239801283"
}
]
}
}
]
}
}
]
}
}]
Result
"Status": [
{
"type": "configuration/entityTypes/Individual/attributes/IndividualEnrollments/attributes/Status",
"ov": true,
"value": "Cancelled",
"lookupCode": "CANCELLED",
"lookupValue": "Cancelled",
"uri": "entities/00005bd/attributes/IndividualEnrollments/1msuH3/Status/4PSbJXy"
},
{
"type": "configuration/entityTypes/Individual/attributes/IndividualEnrollments/attributes/Status",
"ov": false,
"value": "Active",
"lookupCode": "ACTIVE",
"lookupValue": "Active",
"uri": "entities/00005bd/attributes/IndividualEnrollments/1msuH3/Status/1mt2nZ"
}
],Answer:
This is expected behavior. If you look at the process, you see that Active is already a value present in the entity when you are trying to change from Cancelled to Active.
According to documentation Retrieve or modify an entity crosswalk updateDate in Reltio Documentation
If no entity attributes are changed in the request body. – The updateDate value in the response and singleAttributeUpdateDates values of the attributes do not change.
Possible alternatives
- Use cumulative update rather POST /entities&partialoverride.
- Use keyAttributeURIs and matchFieldsURIs in the L3 for IndividualEnrollment. Then the value will be replaced. However, this will impacted nested within nested attributes as well (deep nested)
{
"label": "Individual Enrollments",
"name": "IndividualEnrollments",
"description": "Individual Enrollments",
"type": "Nested",
"hidden": false,
"important": false,
"system": false,
"faceted": true,
"searchable": true,
"uri": "configuration/entityTypes/Individual/attributes/IndividualEnrollments",
"dataLabelPattern": "{EnrollmentID}, {Type}, {Status}",
"keyAttributeURIs": [
"configuration/entityTypes/Individual/attributes/IndividualEnrollments/attributes/Type"
],
"matchFieldURIs": [
"configuration/entityTypes/Individual/attributes/IndividualEnrollments/attributes/EnrollmentID"
],
"matchFieldURIsExactOrNull": [
"confi
Comments
Please sign in to leave a comment.