Hi,
We have to design solution for integration scenario as desribed below.
Background:
We have an upgrade project from AX2009 to D365 F&O.
Client has 3rd party invoicing system, where big subset off all company purchase invoices are created and at the end of whole process invoices are sent to D365 F&O SOAP custom service endpoint.
So far nothing special, but there are complex workflows and validations in that external invoicing system and one of key features, from users perspective, are restricted lookups for financial dimensions based on possible financial dimensions values combinations provided from D365 f&o.
In previous version of AX possible financial dimensions values were inserted into intermediate database and then that external invoicing system pulled needed data from that database.
It was easier to fetch possible financial dimensions values in AX2009, becuase of less complex data structure in terms of financial dimensions.
We have designed whole architecture in terms of integration and I'm quite confident that it meets our goals with reasonable level of compromises
One part, which I'm not sure enough, is fetching financial dimension combination values from D365 f&o.
Requirement:
Find good enough approach to list all possible financial dimension values based on general ledger advanced rule structures.
Current solution:
In our current thought we want to develop something like parser engine for advanced rule structures criteria values, transale that values into SQL understandable ranges (by this I mean splitting merged values stored in advanced rule structures criteria record into separate fields to enable filtering records by relation) and store them in additional D365 f&o table, then based on relation to standard d365 f&o financial dimension attribute value table we would fetch proper values.
Problem / Question:
We had some uncertainty regarding that solution - Are there any out of the box parser, which transaltes x++ ranges into that SQL uderstandable ranges? I think there should be, becuase Dynamics translates x++ select statements into SQL select statements somehow under the hood. I couldn't find any concreet docs or code regarding this. I found some AOT objects called like DimensionExpressionCriteria*, but I have to investigate that further.
Maybe somebody has more knowledge on that field, any suggestion or alternative solution would be appreciated