Skip to Content
Author's profile photo Marcus Zahn

Monday Knowledge Snippet (MKS) – 31 Optimizer Explanation Tool

Transportation Optimization can be a very complicated task. Checking the standard scenarios supported by SAP Transportation Management for automatic planning, you quickly get a glimpse of how much information is involved here to steer that powerful engine. Lots of master data coming from the transportation network is involved (locations, zones, schedules, resources, and so on). Lots of TM business documents like freight units, freight orders, bookings also. Profiles to tell the optimizer how to optimize. Constraints like incompatibilities. Well, and out of this massive input in the end you get a result. If its green and the stuff was planned – good. Maybe. But did it pick the best solution I had in mind? If its red – not so good. I need to find out why.

The challenge here was to have a tool available showing that complicated input and the results working for both the advanced user with technical skills analyzing errors on a very detailed level, and something for a planner needing to quickly check what was going on with that planning run. Before TM 8.0 this check had to be done on the optimizer input and output file in a text format. Not very handy… And so arised the optimizer explanation tool.

How to activate it? It can be activated per user as it stores a lot of data using the user parameter ‘/SCMTMS/EXP’.


How to access it? There are several direct ways after doing a optimization, but the central access point is transaction RCCF_LOG, where you can see all optimization runs. There is a column available ‘Ext.Column’, showing in case of activated Explanation Tool an icon. Click on it and it will start the tool. The status in the first column tells you if the run was successful or not.


You start with a overview screen having a tree with the input and result nodes:


Lets start with the input. Double click on it and all available tables are shown. As soon as you select a specific table, the content is shown in the detailed section on the right side. So now you have a chance to check for example if there are all vehicle resources passed to the optimizer fitting your selection. In case you miss one here, you might already have found the issue of a failed run.


Same for the result, but here you also see the detailed messages per freight unit / stage. Probably even more important to find the cause for a not planned freight unit.


Some advanced features:

For the experts it is possible to switch on the UUID display of the system internal, non-readable technical identifiers. This helps for example when debugging a scenario or checking corresponding database tables. In the menu under Extras select ‘UUID Conversion On’ or press F2. The tables are now enhanced with an additional column.


In addition, it is possible to switch on a technical view showing some more tables. These tables usually contain system internal information and require a deep understanding how the system collects the optimizer input. By default switched off to not overwhelm the user of the tool. Nevertheless sometimes helpful for the experts. Technical tables are indicated in the tree.


Here is an example, the Geocoding Level Coordinates used for distance determination.


A nice, but still not complete feature, is the option to display the transportation network on the standard SAP TM geo-map in the Transportation Network Cockpit. Under the input table Location select some or all, and press the button ‘Show on Map’. The TNC opens showing your locations. Now you can use the available functions to browse through the network, for example find all schedules for a specific location.



In the menu of the optimizer explanation tool you find some more functions like showing the application log. It is also possible to integrate customer specific functions here.

In general the tool is nice to analyze a planning scenario and figure out if a failed run is caused by missing input or erroneous settings, or if it is worth a CSS ticket.

Assigned Tags

      You must be Logged on to comment or reply to a post.
      Author's profile photo Primoz Vrecic
      Primoz Vrecic

      Hello Marcus,


      I know that this blog is Quite old, but it was still a good reading. I have 2 questions about it:

      1. We have TM 9.3 and I have techical view on in the explanation tool, but I don't see additional node "optimizer tables". Did something changed in new versions and releases or I'm missing something?
        I also have XLP parameter in my user ID.
      2. Result of optimizer is green, but FO still not created. You can see the reason in "Messages for FU". Unfortunatelly optimizer explanation description code is not always very exact in providing the reason for not creating the FO. That's why my question is, if there is any additional support available here (additonal tables with explanations, "error" guide......)?


      Best regards


      Author's profile photo Gurbhej Singh
      Gurbhej Singh

      Hi Marcus,

      Thanks for this blog post, but I would like to highlight few points here,

      1. White papers doc for Optimizer provided by SAP does not have any section for error messages This document should have a list of errors messages and their relevant information on when they are being issued.
      2. Error messages should be more descriptive to maximum extent possible , for ex error message : 601 "You have not entered a requested end date; lateness not penalized" does not explain which requested end date has been missed , source window or destination window one ?
      3. I have observed that on failure of more than one conditions , same error message is thrown , it would be better if each condition has its own message which will explain exactly whats missing. for ex : Message : 551 No valid route that fulfills all constraints.

      Many Thanks

      Author's profile photo Denis Yuzhakov
      Denis Yuzhakov

      Hi Marcus,

      the article seems to be very useful. I'm currently facing some issues with the optimizer I'd like to analyze with RCCF_LOG.

      As you have written I maintained the parameter /SCMTMS/EXP for my user but when I run the optimizer for some FU-Stages in combination with some resources to build the freight orders out from the transportation cockpit, I can't see anything in the RCCF_LOG.

      Would you have any Idea why?

      Thanks and BR.