Payment formats requirements can vary across different banks. In order to meet these requirements, customers are generally expected to either customize an existing SAP pre-delivered format mapping template or create a new format mapping from scratch.
When an error arises in the output file, identifying the cause of the error can be challenging. However, a solution is now available. With the launch of SAP S/4HANA Cloud 2302, we are introducing a new application called “Trace Outgoing Format Mappings.”
Trace Outgoing Format Mappings
“Trace Outgoing Format Mappings” is designed to assist you in analyzing common issues encountered during format mapping creation or modification. Are you puzzled about missing nodes or levels in the output file? Perplexed by mapped values being in an unexpected format? Curious to understand the internal processing of conditions? “Trace Outgoing Format Mappings” is the solution that can provide you with the answers you seek.
How It Works in a Nutshell
As you may be aware, the inner workings of the output file generation process in “Map Format Data” engine remain hidden from the user’s view. Users are only aware of the inputs (structures) and outputs (files). However, we opened the process with the “Trace Outgoing Format Mappings”
With this tool, users now have the ability to designate specific nodes or the entire format mapping for tracing. By doing so, an extensive XML-formatted “Trace Log” is generated alongside the output file. Once the file generation process ends, the “Trace Log” is stored in the database. But we didn’t stop there.
“Trace Outgoing Format Mappings” app interprets the XML “Trace Log”, presenting it to the user in an interactive and user-friendly manner.
1. Set – Enabling Tracing for Your Format Mapping
To enable tracing functionality:
- Go to Map Format Data for Payments* via CBC or Manage Your Solution.
- In the list, select a format mapping you want to trace.
- In the detail, right click the “Format Mapping Properties” to enable tracing for whole format mapping or the certain node (predecessors or the node are selected automatically) and click on “Set Tracepoint” button in the context menu.
*Tracing is also available in Map Format Data for Treasury Correspondence and Map Format Data for Advanced Payment Management
Tracepoint will be active for 5 days for the user who set it.
You can set Tracepoint (left) for entire format mapping or a single node (right).
2. Run – Execution
Tracing is a user specific feature. Next time the same user executes the payment run (or generally speaking – when the format mapping is used to generate a file) the “Trace Log” is generated alongside the output file.
3. Analyze – Use the “Trace Outgoing Format Mappings” app
In this part of the article, you will learn how to access the application and how to can use it to analyze the file generation process of Map Format Data.
Accessing the App
You can access the application via Map Format Data either from the list or detail.
To access the app from the list select the format mapping and click the “Trace” button above the table.
To access the app from the detail, use the “Trace” button in the top right corner.
The Initial Screen of “Trace Outgoing Format Mappings”
The initial screen of the app contains all the logs that were generated for the selected format mapping and on behalf of the logged in user.
User can display certain log by selecting it and using the “Display” button above the table. You can also perform deletion of “Trace Logs” as well as import “Trace Log” from other system/client.
Table records themselves contain general data about stored “Trace Logs” like Mapping Type ID, Format Mapping Name, when the log was generated, etc.
The initial screen of Trace Outgoing Format Mappings.
Once a specific “Trace Log” is opened, the user is presented with its detail. This view closely resembles the layout of the Map Format Data, but instead of displaying the format mapping definition, it showcases a comprehensive log of the mapping performed within the “Map Format Data” engine.
The left side of the screen presents a tree structure that showcases all the nodes marked with tracepoints, precisely reflecting the order in which they were processed by the engine. Additionally, it displays any repeated occurrences (loops) in the format mapping processing.
On the right side of the screen, you can access the captured data from the engine run. The content displayed on the right side varies depending on the specific node type being selected, providing tailored information.
The Main Node
In addition to providing essential details such as Mapping Type ID and Format Mapping Name, users can access the “Statistics” section to evaluate the efficiency of file generation using “Map Format Data” engine.
Below the statistics, a table is available, presenting the skipped keys of input data. In Map Format Data, users can define key fields for specific levels, enabling the generation of iterations over these levels. The number of unique keys corresponds to the number of repetitions of the level in the output file.
Based on customer feedback, we have observed instances where certain iterations are missing from the output file. In the majority of cases, this issue stems from incorrectly defined key fields, often associated with length and offset configurations. When the “Map Format Data” engine iterates more that once over the same key, the extra occurrence is skipped. This event is reflected in the “Trace Outgoing Format” by the red highlight of the “Trace General Data” node and in the respective “Skipped Data” table as you can see on the screenshot below.
The engine processes conditions in a recursive manner, and the application provides visibility into this process through a condition evaluation tree. Each line in the tree begins with a green or red icon, signifying the result of the partial expression. Logical operators such as AND or OR evaluate two expressions beneath them in the hierarchy.
Continuing along each line, the sources of data being compared are displayed, for example, “Constant = Structure Field.” Finally, the line concludes with the actual values of the data sources being compared, such as “1 = 2.” This detailed breakdown allows you to analyze the condition evaluation in a clear and informative manner.
Let’s use SAP delivered template DE_CGI_XML_CT as an example. On node Othr (N_8655981910) there is following condition:
Let’s assume that in our payment run we won’t provide Additional Company code parameter – CGIIR (FPAYHX-REF12+030(10)), but we will provide “Customer ID at House Bank” (FPAYHX-DTKID). In such case the condition will be evaluated as “true”. You can see the breakdown in the picture bellow.
Example of condition evaluation that was successful.
Another case might be that we provide “SWIFT” constant in Additional Company code parameter – CGIIR (FPAYHX-REF12+030(10)). As you can see in the picture below, the first part of the condition fails, because it accepts everything, but SWIFT, hence the whole condition is evaluated as “false”.
The mapping section is located on all nodes that perform mapping – element, technical node, XML attribute, and atom. It provides you an insight into how the value was processed internally. It all starts with the value of the source field. Then, as you can see from the screenshot below, Trace Outgoing Format Mappings app provides you with all important values from the value conversion perspective – length, target offset, and conversion function. Also, it can show you the internal type in which the value was processed.
The last field in this section is “Output value”, which is the input value after applying all conversions (length, target offset, conversion function).
From the standpoint of the Map Format Data engine, aggregations are calculated on the node where the value is mapped from the input data (source node for aggregation) and then the value is referred to the node where the user selected the aggregation to be outputted (target node for aggregation). In Trace Outgoing Format Mappings you can find how the aggregation was calculated on every so-called source node for aggregation.
Configuration of the format mapping in Map Format Data can be tricky and Trace Outgoing Format Mappings app is here to help you with the analysis of the format mapping behavior. As we learned above it can be used for the analysis of conditions, aggregations, mapping procedures, and the overall process of file generation (loops, missing data, etc.).
If you have any questions about the new tool for Map Format Data, you can use the Q&A area. You are welcome to provide feedback in the comment section below.