Sunday, October 11, 2020

Tips and Tricks on how to validate your dual-write integration field-by-field level - its easy believe me 😊

After you are done with your entity field mappings for a required entity map e.g. for Vendor Groups, we started to look at in previous post to get the payload for dual-write integration, two records get created in the following tables.

1. DualWriteProjectConfiguration

2. DualWriteProjectFieldConfiguration

Records only get created when you Run the entity map and get deleted once you stopped it.

DualWriteProjectConfiguration table does not hold data for Vendor groups when the entity map is stopped.

DualWriteProjectFieldConfiguration table does not hold data for Vendor groups when the entity map is stopped.

Run the entity map and check data in these tables,


1. Both tables link each other using Name field

2. For each entity map (e.g. Vendor groups) there are two records; one for Insert and Update and the other one is for delete which ends with _end

Import information about DualWriteProjectConfiguration table:

1. External URL field holds the CDS environment's URL which is linked with FO in this format https://<CDS environment URL>/api/data/v9.0/msdyn_vendorgroups. This API URL can be browsed to see available data in CDS environment

2. Project partition map field holds list of legal entities linked for dual-write, you can copy this list in notepad++ (or any where) and check all legal entities from there too - this may help you in troubleshooting

3. IsDebugMod field if marked then failure records are stored in DualWriteErrorLog table

4. Filter query expression field if you have defined Finance and Operations apps filter for entity maps it stores here

Import information about DualWriteProjectFieldConfiguration table:

Filter records from this table based on the project name you have retrieved from DualWriteProjectConfiguration table as shown below as an example

1. External lookup urls field holds information how different lookups from CDS tables are linked for this integration.

Trick and Tip: Copy data from this field and paste into Notepad ++, data looks like this

Format JSON and you can review all data easily in JSON viewer

2. Field mapping field holds information on how fields are mapped between both apps (Finance Operations app and Common Data Service)

Trick and Tip: Copy data from this field and paste into Notepad ++, Format JSON and it shows like this

DualWriteProjectConfigurationEntity data entity is the triggering point to sync data across based on pre-defined sync direction as discussed above.

In case you want to debug outbound call for vendor groups this will be the stack trace.

I hope this may have helped you to understand the tables and classed behind dual-write and troubleshoot your issue at some point. If you still have any question please reach out to me via comments section.

1 comment:

  1. Investment plansPROMO PACKAGE ?? BASIC Invest $70 earn $600 Invest $100 earn $1000  Invest $200 earn $2,000  Invest $300 earn $3,500  Invest $400 earn $4,500  Invest $500 earn $6,000 
    ?? PRO  Invest $1,000 earn $15,000  Invest $2,000 earn $25,000  Invest $3,000 earn $35,000  Invest $4,000 earn $45,000  Invest $5,000 earn $60,000  Invest $10,000 earn $100,000. 
    ?? PREMIUM  1BTC earn 5BTC  2BTC earn 10BTC  3BTC earn 16BTC  4BTC earn 22BTC  5BTC earn 30BTC. 
    MODE OF PAYMENT. Any, Suitable For Investors, But Terms and Conditions Apply.
    ??HURRY NOW!!! Refer a Friend or Family member to invest same time, and Receive an instant $50 Reward. 
    To set up an INVESTMENT PLAN, Contact Admin:
    WhatsApp: +1(929)390-8581


I will appreciate your comments !

Download large bacpac (sandbox database) to DEV environment much faster

As the LCS website gets slower and slower and the database backups get bigger and bigger.  Use AZCopy to download objects out of LCS asset l...