Applies to:
ERP 6 EhP5 – Master Data Governance for Supplier
Summary
SAP Master Data Governance provides an out-of-the box solution for the central management of various master data objects such as financial objects, supplier and material. But SAP Master Data Governance also provides the flexibility to customize the solution, in cases where the predelivered content does not fully match customer requirements. The article series will provide an introduction to extensibility for SAP Master Data Governance for Supplier. In this first article the focus will be on extending the data model. The following articles will build on the extended data model and explain enhancements to the SAP Master Data Governance UIs, processes, validations and derivations, data replication, Enterprise Search and print output.
Author(s):
Lars Rueter
Company : SAP AG, Germany
Created on: 4. March 2011
Author(s) Bio
Mr. Rüter works at SAP in the area of Master Data Management. In the past 11 years at SAP he has held different positions in Asia Pacific and EMEA. He has extensive experience in SAP's Master Data Management product portfolio, Java Development and SAP NetWeaver Portal. As a Consultant and Solution Architect Mr Rüter has been involved in a large number of SAP implementations worldwide.
Content
- Part 1: Data Modeling
- Part 2: UI Configuration
- Part 3: Process Modeling
- Part 4: Validation and Derivation
- Part 5: Data Replication
- Part 6: Enterprise Search (ES)
- Part 7: Print Output
This article covers part 2.
UI Configuration
The UI is configured with the Floorplan Manager. The Floorplan Manager (FPM) is a Web Dynpro ABAP application that provides a framework for developing new Web Dynpro ABAP application interfaces consistent with SAP UI guidelines.
An FPM application is composed of a number of different Web Dynpro components (most of which are instantiated dynamically at runtime). However, the following two components are always present:
- A floorplan-specific component (FPM_GAF_COMPONENT or FPM_OIF_COMPONENT)
- A component for the Header Area (FPM_IDR_COMPONENT)
In simple terms, the configuration of an FPM application is the configuration of these two components.
Floorplan Manager Configuration
It is recommended to make your changes only in the Floorplan Manager customizing layer of the SAP delivered UI-configuration. In this section you will find step-by-step instructions on how to do this.
In addition to the approach outlined below there are at least two other possibilities for making UI changes. You can either copy a SAP delivered UI-configuration and change the copied configuration or make your changes directly in the configuration layer of a SAP delivered UI-configuration. Both of these approaches are not recommended due to the following disadvantages:
If you make changes directly in the configuration layer of a SAP delivered UI-configuration these changes will always be overwritten if a new version from SAP is imported. Changes within this layer are treated as modifications. Therefore you should not make changes in the configuration layer of the SAP delivered UI-configuration.
If you copy a SAP delivered UI-configuration and change the copied configuration you will also have to copy the UI BAdI. The disadvantage of copying the UI BAdI is, that adjustments made by SAP do not run automatically into your coding.
Recommendation
Working with this example you should make your changes only in the customizing layer of a SAP delivered UI-configuration.
By making your changes in the customizing layer they will be client-dependent and the SAP delivered original will be unchanged. The customizing data will only contain the differences to the original configuration, so you are not disconnected from corrections or new features delivered by SAP in future Service Packs or releases. At runtime the changes of the customizing layer are added to the original configuration and the application will look like you customized it.
Activating administrator mode
You can launch the configuration editor in customizing mode by running the application in administrator mode. This can be achieved by simply adding URL parameter sap-config-mode=X or by launching the application from SE80 by navigating to the application (configuration) you want to start and then Shift+F8 (or via menu 'Web Dynpro Configuration' -> 'Test' -> 'Execute in Administration Mode'.
After starting the application in administrator mode you will see a link in the upper right corner of your application (Adapt Configuration), which will lead you to the configuration editor in customizing mode. The configuration editor in customizing mode will look identical as in the configuration mode, only your changes will not be stored within the original configuration file, but instead in the customer adaptation file.
Figure 1: Execute in Administration Mode
Figure 2: Adapt Configuration Link
Note
To call up administrator mode, you need the S_DEVELOP or S_WDR_P13N authorization profile.
If you do not see the Adapt Configuration link in the top right hand corner of the window after following the steps above you can also try to activate the administrator mode using the steps below.
ACTIVITY
Alternative method to activate administrator mode
- On the SAP Easy Access screen, choose System -> User Profile -> Own Data
- On the Maintain User Profile screen, select the Parameters tab.
- Enter FPM_CONFIG_EXPERT for the parameter ID and A for the parameter value.
- Choose Save
Adding custom fields
After starting the Floorplan Manager Editor via the Adapt Configuration link you can start adding additional fields to the UI.
ACTIVITY
For example to add the field ZLARS01 to the Organisational Data tab in the Address subview follow the steps below.
- In the main window make sure Organizational Data and Address items are selected (default)
- In the Address subview locate the top UI Building Block (Configuration Name: MDG_BS_BP_FORM_UIBB_ADMIN)
- In this UI Building Block click on Configure UUIB
Figure 3: Navigate to UIBB configuration
- You are now in the Component Configuration for MDG_BS_BP_FORM_UIBB_ADMIN
- Click the Add Group button
- Locate the Group Attributes section
- In the input field Text enter Extensibility as the group name and press return
- You have created a group Extensibility
- Press the Add Melting Group button
- To add fields to the Melting Group press the Configure Melting Group button
- In the new window move the fields you want to add from the Available Fields table to the Displayed Fields table
- When you have finished adding fields click the OK button
Figure 4: Configure Group Dialog
- You then assign the FPM event ID USMD_ENTER to the new field. Specifying this means that the system triggers a roundtrip when a value is selected from the dropdown list box, allowing dependent UIBB fields to be changed by means of a Business Add-In (USMD_UI_EVENT2).
- Click the Save button to save the configuration changes
Figure 5: UI Field Extension
(Optional) UI BAdI Implementation
You can override the standard processing of the UI configuration by means of the Business Add-In: Adjust User Interface for Single Processing (USMD_UI_EVENT2). This BAdI allows for extensive UI adjustments. You have options for making changes in the following areas:
- Adjust the definition of attributes or add new attributes
- Initialize the displayed data (when creating a new entity type, for example)
- Restrict the values displayed in a dropdown list field or selection field group
- Restrict the values displayed in the input help
- Dynamically control the visibility of fields on the user interface and of the property that determines if fields are required or display-only
- Define navigation destinations of UI elements of the type hyperlink (or pushbutton)
- Check if the lead selection of a table may be changed
Figure 6: BAdI Adjust User Interface for Single Processing
If you want to use fields or set default values that do not exist in the data model but that are instead calculated, derived, or defaulted on the UI, you must implement a User Interface BAdI (Business Add In).
Under UI Modeling -> Business Add-Ins -> BAdI: Adjust User Interface for Single Processing (BAdI USMD_UI_EVENT2), create your own implementation.
- In your implementation, allow the methods that you want to adjust to be inherited from the implementing class of a delivered standard implementation. If the implementing class does not allow inheritance because it is marked as FINAL, you need to create a copy of the class.
- Deactivate the existing BAdI implementation and activate your new BAdI implementation
Copying a UI BAdI
If you have copied a SAP delivered UI-configuration in a previous step you have to copy the corresponding UI BAdI as well and change the filter value to the new UI configuration ID.
Note
Note that the copy does not automatically contain corrections from Support Packages or SAP Notes. Therefore ensure you check the relevant SAP Notes for the implementing class and manually implement any corrections.
ACTIVITY
In this activity you
- Copy enhancement implementation MDG_UI_EVENT_SUPPLIER to Z_LR_ MDG_UI_EVENT_SUPPLIER
- Copy implementation class CL_MDG_BS_UI_EVENT_SUPPLIER to Z_LR_ CL_MDG_BS_UI_EVENT_SUPPLI
- In your enhancement implementation Z_LR_MDG_UI_EVENT_SUPPLIER change the implementing class from CL_MDG_BS_UI_EVENT_SUPPLIER to Z_LR_CL_MDG_BS_UI_EVENT_SUPPLI
- In your enhancement implementation Z_LR_MDG_UI_EVENT_SUPPLIER change the filter value to the previously copied UI configuration (for example MDG_BP_SUPPLIER_APPL_RT_1) and delete any obsolete filter entries.
- Activate your changes
In order to test if your custom UI configuration works together with your copy of the UI BAdI you have to create a new Change Request Type in customizing (activity Create Change Request Type) and set the UI configuration parameter to your previously copied UI configuration (for example MDG_BP_SUPPLIER_APPL_RT_1).
Launching the Create Supplier UI will now allow you to select your custom change request type. This in turn will invoke your custom UI Configuration and customized UI and BAdI.
Testing data model changes
To verify your changes are working create a change request for a new business partner and note the number of the change request from the table My Change Requests. When creating the business partner make sure you enter a value for our custom field ZSDN_CI. To activate the change request you can go through the approval workflow. As an alternative you can start the Business Object Builder transaction SWO1. Enter BUS2250 in the Object Typeinput field and press the_Test_ button. In the pop-up window enter your change request number. In the following screen execute the method ACTIVATE_2 to activate the business partner.
After the activation you should check tables LFA1 and BUT000 if the value of your custom field was correctly transferred to the active area.
Outlook
The flowing parts will be made available in the future.
- Part 3: Process Modeling
- Part 4: Validation and Derivation
- Part 5: Data Replication
- Part 6: Enterprise Search (ES)
- Part 7: Print Output
Related Content
- Embedded Master Data Management http://www.sdn.sap.com/irj/sdn/master-data-governance
- Innovations 2010 in SAP Master Data Management http://www.sdn.sap.com/irj/scn/weblogs?blog=/pub/wlg/19122