What is SAP ABAP?
SAP ABAP stands for Advanced Business Application Programming. It is a high-level
programming language created by SAP SE for developing applications on the SAP platform. ABAP is
used primarily for developing applications and customizations within the SAP environment.
Key Features of ABAP:
1. Integration with SAP: ABAP is designed to work seamlessly with SAP’s ERP (Enterprise
Resource Planning) systems. It is integral to customizing SAP applications and building new
functionalities on top of the standard SAP software.
2. Data Dictionary: ABAP uses a data dictionary for managing and accessing database
objects. This ensures that data definitions and access are consistent across applications.
3. Modularity: ABAP supports modular programming, which means that you can develop
reusable code in the form of function modules, classes, and methods. This modularity helps
in managing complex applications more efficiently.
4. Event-Driven Programming: ABAP supports event-driven programming, particularly in the
context of SAP’s graphical user interface (GUI). This allows developers to create responsive
and interactive user interfaces.
5. Performance Optimization: ABAP includes features for performance optimization, such as
efficient database access, internal tables, and various performance tuning techniques.
2. Scope of work
• Shipment Visibility project aims to implement a 3rd party real time shipment visibility
platform at Chemours, integrated with Chemours SAP and customer e-Commerce Portal to
enable higher service levels for customers and efficiency gains for Chemours CSRs, Supply
Chain and logistics teams.
• Provider for shipment visibility platform is project44. Shipment Visibility platform will send
the following information that must be recorded at delivery level: information on event
planned/actual dates and times. This information needs to be updated into tab "Dates" at
delivery header in SAP tracking link. This link must be updated in such a way that it can be
used to navigate to the real-time tracking web page. In addition, it needs to be updated in a
dedicated text element, so it is available at a later stage of the process to be sent out to
Hybris Tracking ID, which is the internal ID project44 uses to identify the object to be
tracked.
• Shipment Visibility platform, project44, pushes shipment tracking information to SAP. This
information is received into SAP using SHPCON iDocs and updated into the corresponding
deliveries.
The volume of tracking information updates triggered by project44 is high. In the three
first weeks of April 2022, more than 100000 Docs with tracking updates were received into
SAP per week.
This leads to high processing times and high consumption of system resources.
3. Application Architecture SAP (Systems, Applications & Products) is an ERP (Enterprise Resource
Planning) software used for effective business operations. SAP software is used for below
operations: Supply Chain Management. Product lifecycle management. SAP ERP system is commonly
structured in a three-tier client/server architecture. The three-tier architecture is the recommended
one because it enables high scalability and flexibility but SAP can also be deployed on two- and one-
tier architectures.
4. Business Requirement
• We need to build custom logic to the inbound processing of SHPCON/TRK iDocs, so the
tracking information is updated into delivery records:
1. In addition, the tracking link is recorded in a dedicated text element 4. Tracking
ID is recorded in a dedicated text element.
2. Events are updated into delivery header, tab "Dates" and “time”.
4.2 Technical Overview.
We are developing a custom logic to keep the tracking information is updated into delivery records.
To avoid the use of manual error and interventions.
Step 1: What is IDoc and its structures.?
IDOC, or Intermediate Document, is a standard format used in SAP for data exchange
between systems. It provides a method for transmitting information within the SAP
environment or between SAP and external systems. IDOCs facilitate seamless integration and
communication, making them essential for data consistency and process automation.
Structure and Components
1. Control Record: This section contains metadata about the IDOC, including identifiers for
the sender and receiver, the type of IDOC, and relevant timestamps. It essentially provides
the framework for how the IDOC should be processed.
2. Data Records: These records carry the core data being transferred. They are organized
into segments, each representing a specific part of the data structure. The segments are
defined by the IDOC type and contain fields relevant to the business process.
3. Status Records: These records track the processing status of the IDOC through various
stages. They indicate whether the IDOC was processed successfully, encountered errors, or
requires additional actions.
Steps 2 : Configration and Creating an IDoc.
Creating an IDoc in SAP ABAP involves several steps to ensure that data is accurately structured and
transmitted. Listed below is a brief overview of the process:
1. Define the IDoc Type
Objective: Create or select an IDoc type that determines the structure and format of the IDoc
data.
Transaction Code: WE30
Steps:
1. Go to transaction WE30 to define a new IDoc type.
2. Choose to create a new IDoc type or modify an existing one.
3. Define segments and their fields that will make up the data records in the
IDoc.
4. Save and activate the IDoc type.
2. Define Segments
Objective: Specify the segments that make up the IDoc data structure.
Transaction Code: WE31
Steps:
1. Navigate to transaction WE31 to define segment types.
2. Create or modify segment types, detailing the fields and their attributes.
3. Assign segment types to the IDoc type created in the previous step.
4.
3. Crating Message type
Objective: Creating a new message type
Transaction Code: WE81
Steps:
1. Access transaction WE81 to create or modify message type.
2. Enter a name for your message type (eg, ZMY_Message_TYPE).
3. Link it to the IDOC type we created in Step1.
4. Create a Partner Profile
Objective: Configure the parameters for communication between systems.
Transaction Code: WE20
Steps:
1. Access transaction WE20 to create or modify partner profiles.
2. Define partner types (e.g., Logical System, External System).
3. Configure inbound and outbound parameters, specifying how IDocs should be
handled.
7. Assign Function Module to Message Type
You need to link your function module to the message type so that the system knows which
function module to call for processing.
Transaction Code: WE82
Steps:
1. Go to transaction WE82.
2. Assign the function module to the message type.
3. Save your changes.
Creation of Function Module..
6. Creation of Function Module for IDoc Processing
You need a function module to handle the processing of IDocs. This is typically done in the
form of a customer function module.
Transaction Code: SE37
Steps:
1. Go to transaction SE37.
2. Create or modify a function module that will process the IDoc data.
3. Implement the logic to handle the IDoc data and update the relevant tables or
systems.
4. Save and activate your function module.
ABAP Logic.
Once the configuration is done, so for the first requiment we need to update tracking link id and
tracking url to the corresponding delivery tab.
Analysis & Approach