...
For Integration from QuickBooks into Database
- If Quickbooks QuickBooks Customer has hierarchy structures enabled, then the following changes have to be implemented within your DBSync mappings to facilitate hierarchy mappings.
- Let's say Avankia & DBSync are the Parent Name & Child Name in Database then Avankia & DBSync are Customer & Job in QuickBooks respectively.
- Go to the location where pdl is present and open the workflow where Customer hierarchy mapping to be done
- Based on hierarchy level the number of sequences has to be created with in the workflow.
- Example: If hierarchy level is 2 then three sequences has to be created with in the workflow
- Mappings required in the first sequence
- The validate row should contain a condition to check ParentRef field which contains Customer name so that the mapping for the sequence works
Example : IF(ISEMPTY(VALUE("ParentRef/ListID")),"true","false") - Map Name field of QuickBooks to Parent Name column in Database for the first sequence
Example : Parent Name - VALUE("Name") - Map Sublevel field of QuickBooks to Hierarchy column in Database. If Sublevel value is 0 then it refers to Parent Name
Example: Hierarchy - VALUE("Sublevel")
- Mappings required in the second sequence
- The validate row should contain the condition to check for the hierarchy level as 1
Example : IF(ISEMPTY(VALUE("ParentRef/ListID")),"false",IF(EQUALS(VALUE("Sublevel"),"1"), "true","false")) - Map Name field of QuickBooks to Child Name column in Database
Example: Child Name - VALUE("Name") - Map QuickBooks Customer Name with the Parent Name column in Database
Example : Parent Name - LSPLIT(VALUE("ParentRef/FullName"),":") - Map Sublevel field of QuickBooks to Hierarchy column in Database. If Sublevel value is 1 then it refers to first Child Name
Example: Hierarchy - VALUE("Sublevel")
- Mappings required in the third sequence
- Third and other sequence depends upon the number of Sublevel ie the hierarchy level of the Child Name
- If the hierarchy level is 2 then configure the third sequence with the following trigger and so on
Example : IF(ISEMPTY(VALUE("ParentRef/ListID")),"false",IF(EQUALS(VALUE("Sublevel"),"2"), "true","false")) - Map Sublevel field of QuickBooks to Hierarchy column in Database. If Sublevel value is 2 then it refers to second Child Name
Example: Hierarchy - VALUE("Sublevel")
...
- Under DBCustomer2QBCustomer workflow, click Advanced Query Builder and add condition "ParentName equal to null" along with other condition
- Save and close the Advanced Query Builder page and save the DBCustomer2QBCustomer workflow
- Create a new workflow DBCustomer2QBCustomerHirearchy which is similar to DBCustomer2QBCustomer
- Select Datasource as Database
- Click switch to advanced view and add the same query as present in DBCustomer2QBCustomer
- Change query condition "ParentName not equal to null" along with other conditions from the above query
- Save and close the Advanced Query Builder page
- Create a new rule CustomerHirearchy
- Select target customer as QuickBooks, select operation as insert and select target object as customer
- Use similar properties as given in customer insert sequence under DBCustomer2QBCustomer workflow such as batch size and primary key
- Click map and provide the mappings as given in customer insert sequence under DBCustomer2QBCustomer workflow
- Once the mappings are completed, add following changes in the Mapping window
- Target == "CustomerAddRq/CustomerAdd/ParentRef/FullName"
- Source Field == "VALUE("ParentName")"
- Save and close the rule, later save the workflow
- Once done with all the above-mentioned changes, run the sync and data will be integrated into Quickbooks QuickBooks with their respective hierarchies in place
- This concludes Customer hierarchy mappings to insert data from Database into QuickbooksQuickBooks.
Limitation
- QuickBooks can support up to five hierarchy level
...
{"serverDuration": 75, "requestCorrelationId": "d4fb014231c7bd2e"}