Technical Challenges In Business Logic Enhancement Of SAP TM
What is SAP Transportation Management?
SAP Transportation Management (SAP TM) is an autonomous application designed by SAP AG to cater to the requirements of transportation and logistics management software market. It can be used by any industry to cut down the costs of transportation while maintaining and improving logistics flexibility and efficiency. SAP TM offers inbound and outbound traceability for domestic as well as international freights. It also offers end-to-end transportation solutions to various industries involved in transporting goods.
This can be classified into two scenarios
- Shipper Scenarios
- Carrier Scenarios
Advantages of SAP TM:
- Improved on-time delivery performance through better multi modal planning and higher transparency.
- Reduced transportation costs by determining the most effective transportation modes and routes, including the sequence of pickups and deliveries.
- Efficient transport utilization through optimal planning and carrier collaboration.
- Control over the entire transport management process from quoting to execution.
- Monitoring and settlement through higher visibility and traceability.
Technical Challenges in SAP TM:
1 .Enhancing the Business Logic using BAdIs.
- BAdIs: Business Add-In (BAdI) concept is not new, it is SAP’s object-oriented Plug-in Concept for ABAP.
- Where and how to find BAdIs related to TM: In SAP TM more than 170 BAdIs are available in all application areas. They can be found in IMG (SPRO) in below path. SAP Transportation Management -> Transportation Management -> Business Add-Ins (BAdIs) for Transportation Management
BAdI Names start with /SCMTMS/*
2. Enhancing the Business Logic using Process Controller Strategies.
- This is accomplished by defining a process as sequence of methods which further represents the single process steps. Such a sequence of methods is called a strategy.
- The concept of Process Controller Framework (PCF) extends beyond BAdIs. While BAdIs can be used to manipulate specific functions, PCF enables combining SAP standard functions with customer specific modules in a generic way. This is achieved by defining strategies for a process.
- The basic idea is to pass all input and output data in a generic request object from one method to the other.
- This Process Controller Strategies configuration can be done in IMG (SPRO).
3. Enhancing the Business Logic using Conditions.
- Conditions can be defined and configured to influence the business logic. These conditions are used as filters and for automated decision making in many areas of the Transportation Management.
- Conditions use set of input values which can come from the attributes of the TM Business Objects. These input values map to output values and can consist of a single Boolean value that can be used to select the business object instance.
- Condition type defines possible input as well as output values of conditions of that type. These input values are defined by data access definitions.
- Data access definitions define how content of the input values is read during runtime. A condition type gets assigned to one or more such data access definitions. The output defined with condition type can be single values like Simple Boolean or a Product ID. It can also be a complete structure with multiple attributes as the output result. We can customize condition types and data access definitions from SPRO.
4. Enhancing the Business Logic using Change Controller.
- The Change Controller is a framework used in the context of SAP TM to dynamically react on the changes carried out on business documents like Freight Orders, Freight Bookings, Freight Units or Service Orders. They are all based on the technical BO /SCMTMS/TOR. The Change Controller always allows detection of changes on these business documents (objects) and defines how the system should react during these changes. It triggers functionality that reacts on the changes like executing updates or changes on other related business documents (objects) or checking tolerances for the changed data and so on.
- Change controller uses Process Controller Strategies as well as Conditions to realize its functionality.
5. Enhancing the Business Logic using Implicit Enhancements.
For ABAP programs, a number of so-called implicit enhancement options exist. For example:
- At the end of an include
- At the end of a structure definition (types, data, constants, statics).
- At the start and end of a method or function module.
- Replacing method implementations by overwrite-methods.
These options provide very powerful means to alter standard code. In some cases, there are no other ways for enhancement. For example, when adding a type or data definition. In other cases, SAP strongly recommends to use BAdIs instead, since they provide a defined interface. Nevertheless, some of the mentioned options shall be described here to be used for enhancements.
6. Helper Classes
- SAP TM standard implementation faces the situation that certain functions are needed repeatedly and in a variety of use cases. This kind of reuse functions are implemented in Helper Classes.
- We can find this classes for SAP TM in SE24 search with ‘/SCMTMS/*HELPER*’. The Helper Classes contain the term HELPER which makes it quite easy to find them.
- Reduction of development time by reusing existing functions and methods.
- Prevention of multiple approaches for the same functions.
- Preventing inconsistent data retrieval
We can use this option for the enhancement of business logic in SAP Transportation Management.
Now that the all options provided by SAP have been discussed, it is easy to choose the best option to enhance SAP TM as per Business logic.
Contact for further details
Kishore Babu Jetti
Team Lead – ERP SAP Technical