SK SKYVVA Documentation

1. How to use IChain Interface with Init Operation ?

Learning Objectives:-

Introduction:-

SKYVVA provides different init-operation for the chained interface i,e None, Delete First, Delete specific child, Delete Anyway, and Delete + Upsert & Delete child not present in the payload. In this tutorial, we will learn how to configure these init-operations with Interface which has a hierarchical message type.

Pre-required:

Step 1: Upload a Hierarchical Message Type or create a Hierarchical Message Type.

Step 2: Create an Inbound Interface and Linked Message Type.

- Do mapping

How to configure Ichain?

To configure the IChain Interface we need to do mapping in hirachical and then go to Interface Related see the example below.

Which are different init-operations for the chained interface?

The feature with our inti operation for the chained interface is to handle the deletion of a child from the sending system. There are different init-operation for the chained interface as per the condition.

i.e. Existing accounts with contacts C1, C2, C3. if the system sends account with a contact C2, then C1, C3 will deleted from Account and insert/update C2, So Account has only 1 contact C2.

None:-

This is the default option when we create an IChained Interface. Nothing is deleted here but the new children added or existing children updated. It is not correlated with previous data So there may be different levels between order items in SAP and Salesforce.

Delete First:-

In this case, when the child record is inserted or updated the previous ones should be deleted. This ensures that the Salesforce page contains only the child, included in the latest payload. We have in the an option the set "Delete First" to delete first the existing children before adding new children. For example, the message comes with message A. If A contains a child record then the deletion works. In this case, we delete all existing children and create the new child coming with the new message. But if we send only the parent data only parent data get updated. No children get deleted. "Delete First" in Chain is that when we have a child record in the message e.g. Parent + Child then it delete first all existing children and then adds the new children that come with the current message. The sender needs always to send all children. The sender cannot send only children which have been changed at the sender system. If he only sends a changed record which has been changed at the sender system the situation on both systems. e.g. sender and Salesforce are not consistent anymore. This mode does not support that the sender sent deltas. This mode works only correctly when the sender always sends in full mode e.g. all children every time! How to use "Delete First"? Follow the given steps:-

Delete specific child:-

How to use Delete specific child. Follow the given steps:- Step 1: Create a hierarchical interface Account, Contact where contact is a child interface. We use init Operation = None Step 2: Upload the following data. We have account parent fields Account (Parent fields):-

Contact child fields:-

Here are the records account and contact after processed:-

Step3: Now We use init Operation = Delete Specific Child in IChained Interfaces to delete some values in child interface data but it is not an External ID value. Now we want to change only email value I,e  jonh@test.com to jen@test.com where,

So the user just pushes the above data again the data will be created again with the last change email= jen@test.com

Here is the result of contact data on message monitoring change email value:-

Delete Child Anyway:-

Delete Child Anyway means that it will delete all children even have one or more and it will create a new child as the payload we sent.

Delete + Upsert :-

Deleting children does not contain in the coming payload of their parent, which means deleting all not children based on the parent's external value, and children’s external values are not contained in the payload. How to use Delete+Upsert.  Follow the given steps:-  Step 1: Create a hierarchical interface Account, Contact where contact is a child interface. We use init Operation = Delete + Upsert Step 2: Upload the following data. We have Account (Parent Field):-

Contact1 (Child Field):-

Contact2 (Child Field):-

Here are the records account and contact after processed:-

In this case, we have a Records Account that contains 2 Contacts whose external IDs are COLA_1 and COLA_2, so when we push the same Account name and 2 contacts whose external IDs are COLA_2 and COLA_3. The processing Upsert + Delete will work like to Update the COLA_2, Delete COLA_1, and add COLA_3. Contact2 (Child Field):-

Here is the result of contact data on message monitoring change Contact FirstName & LastName  value updated:-

Delete Child not present in the payload :-

The SKYVVA integration application supports a combined Delete + Upsert operation, designed to manage hierarchical data efficiently. This operation ensures that child records not included with their parent are deleted. Additionally, if only the parent record is imported, all associated child records are deleted. This functionality simplifies data management, automatically removing obsolete child records, and ensuring the database remains accurate and up-to-date. The integration application enhances user control over data integrity, providing a streamlined approach to handle complex data structures within the SKYVVA environment.

Deleting children does not contain in the coming payload of their parent, which means deleting all not children based on the parent's external value, and children’s external values are not contained in the payload.

Follow the given steps:-  Step 1: Create a hierarchical interface Account, Contact where contact is a child interface. We use init Operation = Delete Child not present in the payload

Step 2: Upload the following data. We have Account (Parent Field):-

Contact1 (Child Field):-

Contact2 (Child Field):-

Here are the records account and contact after processed:-

In this case, we have a Records Account that contains 2 Contacts whose external IDs are Coca021, so when we push the same Account name and 2 contacts whose external IDs are Coca. The processing Delete Child not present in the payload will delete. Contact2 (Child Field):-

Here is the second screenshot send data to Salesforce and then the child is deleted.

Summary

Now users understand that operations -- None, Delete First, Delete specific child, Delete Anyway, and Delete + Upsert & Delete child not present in the payload within the SKYVVA integration application provide robust data management capabilities, allowing users to maintain data integrity and streamline integration workflows.

Open this article in the interactive viewer →