Skip to main content

Q&A: The Dual Write Questions


Recently conducted webinars, summits, and D365 FinOps Saturday sessions on Dual Write. 

Interested to watch the replay? Here are the recordings. (do subscribe for upcoming events!!!)




Dual Write is an out-of-box infrastructure that provides near-real-time interaction between model-driven apps in Microsoft Dynamics 365 and Finance and Operations apps. When data about customers, products, people, and operations flow beyond application boundaries, all departments in an organization are empowered.

Dual-write provides tightly coupled, bidirectional integration between Finance and Operations apps and Common Data Service. Any data change in Finance and Operations apps causes writes to Common Data Service, and any data change in Common Data Service causes writes to Finance and Operations apps. This automated data flow provides an integrated user experience across the apps.

Q&A part of any discussion/presentation benefits you to understand the topic from your viewpoint. The following are the questions I have received in all my online sessions. I will keep adding all future questions as part of this blog series.


Q: How to transfer this setup(mapping, JSON, etc..) to other env. (like DEV to SAT and SAT to PROD)
A: Dual-Write is solution aware which enables basic ALM (Application Lifecycle Management) abilities such as transportation and backup/restore of Dual Write maps across environments.

Q: Does it work well for entities that have composite keys
A: Composite keys are fine and Dual-Write automatically adds legal entity/company to the keys for entities that aren't global to make them effectively composite. 

Q: Do these apps (Dual write solutions) are Microsoft Owned or Customer-owned? Can it be possible to replace it with Customer-owned? 
A: The apps are Microsoft-owned and automatically added to AAD so they'd be difficult to replace. 

Q: OData isn't known for great performance, how long does the initial sync take?
A: True on OData performance, initial sync depends on the volume of the data. Dual Write syncs record-by-record.

Q: You mentioned there are still some features coming in the future. Can you estimate how much of F&O has been already mapped to  CDS and how much still to come?
A: Think of it as 2 parts.
1. The technology that allows the two systems to integrate in real-time. This I feel is pretty solid and improving.
2. Mapping scenarios that are developed by Microsoft.
Look here to look at concepts Microsoft has done and documented.

https://docs.microsoft.com/en-us/dynamics365/fin-ops-core/dev-itpro/data-entities/dual-write/customer-mapping

Q: Does it support multi-lines documents? something like Purch order with several lines 
A: Yes. because it is in real-time.

Q: How errors are processed?
A: It will appear in real-time to the user

Q: so saving will not be allowed in CE?
A: correct. it will rollback. It is part of the transaction ttsbegin/ttscommit

Q: Is there a way at the moment to handle cross-company shared scenarios using the Dual Write?
A: Not supported with dual write at this moment.

Q: How Pricing sync works between CE and FO

Q: Question about licensing costs that might need to be taken into consideration when using CDS?
A: Licensing model that dual write is a service bring added to the product, but you do not need an additional license for it, so it's included in your FinOps subscription so that allows you to get the data written into the CDS. However, as soon you need to have the data to use the data on sales you have to have to subscription for the sales or for marketing. 

For whatever customer engagement apps you would like to use so that's not included. So take care in this area.

Dynamics 365 Licensing and Pricing https://dynamics.microsoft.com/en-us/pricing/

Q: How do you handle situations where address fields on CE are 50 chars wide but 25 on FO?
A: Truncate, but the best to keep it equal size to avoid data lost

Q: Performance (speed) of CDS?
A: For performance, the recommendation is to sync 1000s of records with initial sync.

Q: Do unlinking environments have any impact on data already synched between FO and CDS?
A: There will be no impact already synced data with unlinking the environments, the data will remain in each environment and you need to delete from each environment before linking the environments again if needed 

Q: Will we able to create a model-driven app with D365FO data rather than a canvas app?
A: Yes, dual write makes it possible to have FO data in CDS which can be used for any app.

Q: If we create the custom entity map, do we also have to add the integration key, or will it be added automatically?
A: Integration key comes from CDS which is an alternate key there (if defined otherwise company field) and this comes automatically to Dual Write.

Q: Is this restricted to a single tenant? Can it be used between tenants which are located in different datacenters?
A: Yes, both environments have to be on a single tenant. FO and CDS instances can be located on different datacenters but to avoid latency it is recommended to have both in the same datacenters.

Q: How to deploy dual write entity mapping from DEV to UAT to PROD?
A: Dual-Write is solution aware which enables basic ALM (Application Lifecycle Management) abilities such as transportation and backup/restore of Dual Write maps across environments. This is through solutions in PowerPlatform.

Comments

Popular posts from this blog

The Dual Write implementation - Part 1 - Understand and Setup

What is Dual-write? Tightly couples – complete at one transaction level Near real time Bi-directional Master data and business documents – Customer records you are creating and modifying and at this document we are talking about sales orders or quotes and invoice. Master data could be reference data e.g. customer groups and tax information Why Dual-write and why not Data Integrator? Data Integrator is Manual or Scheduled One directional Now, Let's deep dive and understand what is required for Dual-write setup and from where to start. First thing first, check you have access to https://make.powerapps.com/ Choose right environment of CDS (CE) Make sure you have access to the environment too, click on gear icon and Admin Center  Look for required environment and Open it, you must have access as going forward you are going to configure dual write steps in the environment user the same user you are logged in now. Now, go back to power platform admin center and...

D365O - How to add financial dimension in grid

This post outlines the steps; how to add financial dimensions (segmented control) in a grid in D365O. Let's assume we are adding new table and form for below explanation; New table contains two fields  AccountType and  LedgerDimension with relation to DimensionAttributeValueCombination table  Form looks like this; Set properties for segmented control under form design; - Auto declaration = Yes - Account type field = AccountType - Controller class = DimensionDynamicAccountController - Filter expression = %1 1. Override modified method for LedgerDimension field under form's datasource 2. Override lookup and checkUserCustomLookup method on ledger dimension segmented control in form desgin Datasource | D365O_FinancialDimension | LedgerDimension | modified [DataSource]     class D365O_FinancialDimension     { ...

D365FO: Entity cannot be deleted while dependent Entities for a processing group exist. Delete dependent Entities for a processing group and try again.

Scenario: There are times when you want to delete an entity from target entity list and when you do so, you face an error message which does not tell you where exactly the entity has been used.  "Entity cannot be deleted while dependent Entities for the processing group exist. Delete dependent Entities for a processing group and try again. " Solution: Browse the environment by appending this part  /?mi=SysTableBrowser&TableName=DMFDefinitionGroupEntity&cmp=USMF   at the end.  For example; if the environment URL is  https://daxture.sandbox.operations.dynamics.com then the complete URL will be https://daxture.sandbox.operations.dynamics.com/?mi=SysTableBrowser&TableName=DMFDefinitionGroupEntity&cmp=USMF Filter for Entity and it will give you the DefinitionGroup where the entity has been added or used in data management import/export projects. Get the DefinitionGroup name and search in the export/import projects under data management and either del...