We made a number of enhancements in the way the mapping process in To-Increase Connectivity Studio handles messages. Per-field mapping options are now available, so you can apply transformations, type conversions, and standard conversions.
These changes are designed to make your work easier because they help you avoid some issues that users of Connectivity Studio sometimes ran into when they performed complex data exports. In this blog post, we explain what the process sequences are like now, so you can take better advantage of them.
In some situations, when our customers worked with To-Increase Connectivity Studio, one of our Business Integration Solutions for Microsoft Dynamics AX, we discovered that the type conversions and transformations did not support all complex usage scenarios. For example, when you wanted to use a type conversion during a data export and were planning to use the result in a transformation, you could face an unexpected challenge.
To remove these obstacles and make your data management efforts in the Dynamics AX environment more effective, we redesigned the code used to perform the transformations. We also optimized it for all the different, complex scenarios we knew customers wanted to take place without any problems. You should be aware of the basic premises we assumed in our updates:
- Transformations are always used to transform values of the type string as input and output.
- Type conversions can be used in two directions, from the type string to any other, and from any other type to string.
- Thinking about your complex data exports in terms of import and export features in Connectivity Studio can set you out in the wrong solution direction. Instead, we recommend the data types in your source and target documents as a primary consideration.
Let’s take a look at several typical data management scenarios that our Dynamics AX and Connectivity Studio users run every day.
A. The source is undefined. Connectivity Studio initializes with the minimum value for the expected type.
B. Source value and target value type are the same, but not of the type string. If the source has a transformation, the Connectivity Studio field mapping transforms the value and applies the default value to arrive at the end value. If the source does not have a transformation, Connectivity Studio copies the value and applies the default value to arrive at the end value.
C. The source value and target value type are the same, both of the type string. If the source has a type conversion, Connectivity Studio converts the value before checking whether it has a transformation. If it does not have a type conversion, it does not need to convert the value. In the next step, if there is a transformation, Connectivity Studio transforms the value and applies the default value to get to the end value. If no transformation exists, Connectivity Studio copies the value and then applies the default value to arrive at the end value.
D. The source value type is string and the target value type is any other type. Connectivity Studio verifies whether the source has a transformation. If so, it transforms the value. If not, it immediately moves on to the next step and checks on the presence of a type conversion. If a type conversion exists, Connectivity Studio converts the value and then applies the default value to achieve the end value. If there is no type conversion, Connectivity Studio performs a standard conversion before applying the default value to get to the end value.
E. The source value type is any other type and the target value is string. Connectivity Studio checks whether the source has a type conversion. If that is the case, it converts the value to get to the next step. If there is no type conversion, it performs a standard conversion. In the following step, Connectivity Studio verifies whether a transformation is present. If there is, it transforms the value and applies the default value to get to the end value. If no transformation is present, it immediately applies the default value to arrive at the end value.
I hope this helps you understand what we changed in the Connectivity Studio code logic and your complex data exports are more straight-forward as a result. Please let us know if you have questions or feedback. .