Hello,
I was hoping to get some clarification on this particular subject as we've been attempting to see what we can customize to bring over more CRM field data into our BC environment. As for quick reference, as I'm sure there will be questions of our setup:
CRM Environment: Latest version, cloud-based, D365 Customer Service Hub (this appears to behave the same as the D365 Sales Hub in terms of connectivity)
BC Environment: Latest version, cloud-based, some AL extensions to the Invoice Report Layout selection process and Line-Item Tracking to Sales Order Confirmation process, nothing major that would alter the OOB processes completely
My colleague and I have been attempting to pull over the Owner from a Quote (I have tested this in Sales Hub from Order as well) into the converted BC Quote that resides in the Sales Quotes - Microsoft Dynamics 365 Sales conversion queue that populates the Salesperson Code field within the BC Quote. OOB this already seems to be mapped with the Legacy Sales Order Integration Enabled boolean setting within the Dynamics 365 Sales Integration Setup settings.
Which if we look at our Int. Table Mapping, we see this:
We have made copies of the environment to attempt to blow away this OOB mapping and try Custom Mapping, however, we find that most fields just error out because they are "already associated with another table and cannot be associated again" which begs to question why we can even customize mapping when most of the fields can't even be re-mapped. But that's another concern for another time. It seems that even with the newer Bidirectional Sales Order Integration, you still cannot bring over certain fields we want into BC from CRM, based on these SALESORDER-ORDER Int. Table Mappings. Whether through the CS Hub or Sales Hub, Quote or Order, it doesn't seem to work. It's almost as if there's something in-between that isn't there that needs to be.
For the next round of questions, I'm sure some will ask what we have coupled/sync'd, please see below for the respective tables:
BC / CRM
Customers > Accounts
Items > Products
Unit of Measure > Unit Groups
Salespeople > Users
Users > AAD Users (pushed down through CRM via Entra)
Serial Numbers > Serial Numbers (custom table in both)
Entitlements > Entitlements (custom table in BC, OOB Entitlements for CRM)
The only thing I can think of is that this conversion process is part of the coupling of environments themselves and has almost nothing to do with the Int. Table Mappings, or so it appears. The reason I mention this is when we had Legacy Sales Order Integration enabled in a copy of one of our environments, we blew away the SALESORDER-ORDER mapping all together, and didn't replace it. We were still able to pull over CRM Quotes/Orders into BC Quotes/Orders. Is this normal functionality?
I'd imagine if you don't have the Int. Table Mapping that BC wouldn't know which fields to bring over, which leads me to believe there's something else going on here. I don't believe it's being interfered with on an AL code level by customizations through extensions because we haven't built anything along those lines, and we do have a 3rd party which has built a few of the extensions for the Invoice table mentioned above. I have already taken the liberty of sitting down and going through any extensions they've done and confirming this doesn't (or shouldn't) affect this process I'm describing. If anyone could help clarify perhaps what it is we're missing that is causing the Int. Table Mapping to seemingly be ignored, it would be greatly appreciated. Please let me know if you have further questions, I will attempt to answer them as best I can.
Thank you,