Replacing User Exits in IDD Applications

Replacing User Exits in IDD Applications

Test the Merge Logic

Test the Merge Logic

Use the MergePreview API to test the merge logic that prevents telephone numbers from merging.
  1. Use the Create API to create two Person business entities.
    POST http://<host>:<port>/cmx/cs/<ors>/Person?systemName=Admin { firstName: "John", Addresses: { item: [ { cityName: "Toronto" } ] }, TelephoneNumbers: { item:[ { phoneNum: "111-11-11" } ] } }
    POST http://<host>:<port>/cmx/cs/<ors>/Person?systemName=Admin { firstName: "John", Addresses: { item: [ { cityName: "Ottawa" } ] }, TelephoneNumbers: { item:[ { phoneNum: "222-22-22" } ] } }
    The response contains the rowIDs, for example:
    • Person: 161923, 161924
    • Addresses: 2123, 2124
    • TelephoneNumbers: 101723, 101724
  2. Run the PreviewMerge API to preview the merged Person business entities.
    POST http://<host>:<port>/cmx/cs/<ors>/Person/161923?action=previewMerge&depth=2 { keys: [ { rowid: "161924" } ] }
    The response contains two addresses and two telephone numbers.
    { "Person": { "rowidObject": "161923 ", "creator": "admin", "createDate": "2016-10-20T09:50:35.878-04:00", "updatedBy": "admin", "lastUpdateDate": "2016-10-20T09:50:35.879-04:00", "consolidationInd": 4, "lastRowidSystem": "SYS0 ", "hubStateInd": 1, "label": "Person: , Bill", "partyType": "Person", "displayName": "Bill", "firstName": "Bill", "TelephoneNumbers": { "link": [], "firstRecord": 1, "recordCount": 2, "pageSize": 2, "item": [ { "rowidObject": "101723 ", "creator": "admin", "createDate": "2016-10-20T09:50:35.904-04:00", "updatedBy": "admin", "lastUpdateDate": "2016-10-20T09:50:35.905-04:00", "consolidationInd": 4, "lastRowidSystem": "SYS0 ", "hubStateInd": 1, "label": "PhoneNumbers", "phoneNum": "111-1111 ", "phoneCountryCd": "1" }, { "rowidObject": "101724 ", "creator": "admin", "createDate": "2016-10-20T09:50:54.768-04:00", "updatedBy": "admin", "lastUpdateDate": "2016-10-20T09:50:54.769-04:00", "consolidationInd": 4, "lastRowidSystem": "SYS0 ", "hubStateInd": 1, "label": "PhoneNumbers", "phoneNum": "222-2222 ", "phoneCountryCd": "1" } ] }, "Addresses": { "link": [], "firstRecord": 1, "recordCount": 2, "pageSize": 2, "item": [ { "rowidObject": "2123 ", "creator": "admin", "createDate": "2016-10-20T09:50:37.956-04:00", "updatedBy": "admin", "lastUpdateDate": "2016-10-20T09:50:37.956-04:00", "consolidationInd": 4, "lastRowidSystem": "SYS0 ", "hubStateInd": 1, "label": "Addresses", "Address": { "rowidObject": "2121 ", "creator": "admin", "createDate": "2016-10-20T09:50:36.922-04:00", "updatedBy": "admin", "lastUpdateDate": "2016-10-20T09:50:37.923-04:00", "consolidationInd": 4, "lastRowidSystem": "SYS0 ", "hubStateInd": 1, "label": "Address", "cityName": "Toronto" } }, { "rowidObject": "2124 ", "creator": "admin", "createDate": "2016-10-20T09:50:54.790-04:00", "updatedBy": "admin", "lastUpdateDate": "2016-10-20T09:50:54.790-04:00", "consolidationInd": 4, "lastRowidSystem": "SYS0 ", "hubStateInd": 1, "label": "Addresses", "Address": { "rowidObject": "2122 ", "creator": "admin", "createDate": "2016-10-20T09:50:54.777-04:00", "updatedBy": "admin", "lastUpdateDate": "2016-10-20T09:50:54.777-04:00", "consolidationInd": 4, "lastRowidSystem": "SYS0 ", "hubStateInd": 1, "label": "Address", "cityName": "Ottawa" } } ] } } }
  3. Run the PreviewMerge API with the merge overrides. The overrides trigger the external call that prevents the telephone numbers from merging:
    POST http://<host>:<port>/cmx/cs/<ors>/Person/161923?action=previewMerge&depth=3 { keys: [ { rowid: "161923" } ], overrides: { Person: { Addresses: { item:[ { rowidObject: "2123", MERGE: { item:[{key:{rowid: "2124"}}], $original: { item:[null] } } } ] }, TelephoneNumbers: { item:[ { rowidObject: "101723", MERGE: { item:[{key:{rowid: "101724"}}], $original: { item:[null] } } } ] } } } }
    The response contains a single address and two telephone numbers:
    { "Person": { "rowidObject": "161923 ", "creator": "admin", "createDate": "2016-10-20T09:50:35.878-04:00", "updatedBy": "admin", "lastUpdateDate": "2016-10-20T09:50:35.879-04:00", "consolidationInd": 4, "lastRowidSystem": "SYS0 ", "hubStateInd": 1, "label": "Person: , Bill", "partyType": "Person", "displayName": "Bill", "firstName": "Bill", "TelephoneNumbers": { "link": [], "firstRecord": 1, "recordCount": 2, "pageSize": 2, "item": [ { "rowidObject": "101723 ", "creator": "admin", "createDate": "2016-10-20T09:50:35.904-04:00", "updatedBy": "admin", "lastUpdateDate": "2016-10-20T09:50:35.905-04:00", "consolidationInd": 4, "lastRowidSystem": "SYS0 ", "hubStateInd": 1, "label": "PhoneNumbers", "phoneNum": "111-1111 ", "phoneCountryCd": "1" }, { "rowidObject": "101724 ", "creator": "admin", "createDate": "2016-10-20T09:50:54.768-04:00", "updatedBy": "admin", "lastUpdateDate": "2016-10-20T09:50:54.769-04:00", "consolidationInd": 4, "lastRowidSystem": "SYS0 ", "hubStateInd": 1, "label": "PhoneNumbers", "phoneNum": "222-2222 ", "phoneCountryCd": "1" } ] }, "Addresses": { "link": [], "firstRecord": 1, "recordCount": 1, "pageSize": 1, "item": [ { "rowidObject": "2123 ", "creator": "admin", "createDate": "2016-10-20T09:50:37.956-04:00", "updatedBy": "admin", "lastUpdateDate": "2016-10-20T09:50:37.956-04:00", "consolidationInd": 4, "lastRowidSystem": "SYS0 ", "hubStateInd": 1, "label": "Addresses" } ] }, "PersonDetails": { "link": [], "recordCount": 0, "pageSize": 0, "item": [] } } }

0 COMMENTS

We’d like to hear from you!