SAP Module Implementation & Enhancement
What is an Module Implementation & Enhancement?
Let’s start with very basics.
Module Implementation means that any SAP Customer need to add module looking into Business Need or Expansion or Not implemented in time of implementation. This can be any module like COPA, PM, QM etc.
Our Expertise in SAP Module Implementation as below:
Ø SAP-FI – Financial Accounting
Ø FI-GL: General Ledger
Ø FI-AP: Accounts Payable
Ø FI-AR: Accounts Receivable
Ø FI-AA: Asset Accounting
Ø FI-BL: Bank Ledger
Ø FI-SL: Special Purpose Ledger
Ø FI-TV: Travel Management
Ø SAP-CO – Controlling
Ø CO-OM: Overhead Cost
Ø CO-PC: Product Cost
Ø CO-PA: Profitability Analysis
Ø EC-PCA: Profit Center Accounting
Ø SAP-TR – Treasury
Ø SAP-EC – Enterprise Controlling
Ø SAP-IM – Investment Management
Ø SAP-PS – Project System
Ø SAP-SCM – Supply Chain Management
Ø SAP-APO – Advanced Planning & Optimization
Ø SAP-HCM – Human Capital Management (formerly: HR – Human Resources)
Ø ESS – Employee Self-Services · MSS – Manager Self-Services
Ø SAP-MM – Materials Management
Ø SAP-SD – Sales & Distribution
Ø SAP-PP – Production Planning & Control
Ø SAP-QM – Quality Management
Ø SAP-LO – Logistics General
Ø SAP-PM – Plant Maintenance
Ø SAP-LE – Logistics Execution
Ø SAP-CS – Customer Service
Ø SAP-EHS – Environment, Health & Safety
Ø SAP-SRM – Supplier Relationship Management.
Ø SAP-PLM – Product Lifecycle Management
Cross Application Modules
Ø SAP-WF – Workflow
Ø SAP-BW – Business Warehousing; DWH
Ø SAP-CRM – Customer Relationship Management.
Ø SAP-ECM – Enterprise Content Management
Ø SAP-MII – SAP Manufacturing Integration & Intelligence
Ø SAP DMS – Document Management System
Enhancement is used when you need to enhance the any standard SAP delivered functionality by introduced new code. There are certain ways to achieve the enhancements:
Core Modification –
You obtain the access key by registering the object with SAP and make the necessary changes. This is more dangerous and thus least preferable among other techniques. What makes it more dangerous is when SAP provides any OSS note, or while upgrade, there is a great chance of losing the functionality if you don’t perform proper SPAU activities.
User Exits –
You find SAP delivered Subroutines (PERFORM) which begins with USEREXIT_ in the std SAP programs. Those Subroutines would be collected in a program. To implement the user exit, you would need to also register the object once. They are little bit safer from upgrade point of view as they are in a separate include.
Customer Exits –
You find SAP provided function exits with CALL CUSTOMER FUNCTION ‘001’. This would be a FM with an include. This include would not be delivered by SAP. If you need your new functionality, you need to create the include and implement your code. You would need to create Customer Enhancement Project in CMOD using the Enhancement which houses the Exit function SMOD.
BADI (Business Add Ins) –
are the based on Object Oriented Concept. Similarly Std SAP would provide you the BADI calls. You would need to Create the BADI implementation based on the BADI definition. Then you can add your code in the implementation which is essentially a method in the class. You can implement the same BADI multiple times, if the BADI is multiple implementation.
New Enhancements Technique
- Easy maintenance
- SAP can deliver more than one business processes in the same code
- Customer can activate the business processes
- Upgrade Support
Various Types of Enhancements
There are these new enhancement concepts:
Explicit enhancements are similarly provided by SAP at various point of the code. They are provided with ENHANCEMENT-POINT and ENHANCEMENT-SECTION. We will learn more about both of them in upcoming articles, but the basic is ENHANCEMENT-POINT is the empty placeholder for the code where as ENHANCEMENT-SECTION is the placeholder with default code.
Implicit enhancements are not delivered by SAP in the code, but SAP has given flexibility to implement them at various locations
- Beginning of the Subroutine/Method/FM/Include
- End of the subroutine/Method/FM/Include
- Class Enhancements – Pre/Post/Overwrite method
- FM Enhancements – Additional Parameters
In order to put your code in to any of the enhancement, you would need to create an implementation for that. If you found an explicit point, you can create the implementation for that point. You implement the logic in your implementation. At run time, system determines how many active implementations exist in the system for that point and executes them.