1 2 3 5 Previous Next

SAP ERP HCM Employee Self-Service

65 Posts

The Team View application has configurable event that allows you display short profile of your employees. Our requirement was to add another application (Emergency Contacts) to the context menu that would open in the side panel like the short profile.





First step would be maintaining an custom event. Configure the event name.





Next design your Custom WD Component. Here name/contact info from primary and secondary emergency contact as added.





In the component controller of HRMSS_TEAM_HIERARCHY, write a post exit of GENERAL_EVENT & CUSTOM_EVENT, CUSTOM_EVENTS_HANDLER.





For HRMSS_TEAM_HIERARCHY in the Layout of V_MAIN_FLASH, customize the panel.5.png



In WDDOMODIFYVIEW of V_MAIN_FLASH, do a post exit and enhance.




The emergency application opens in the side panel.



Special thanks to Sriranjani Chimakurthy.

Our customer (on EHP minus 1) decided on a multi country implementation of MSS Add-on 1.0 with a unique requirement that a single portal role has to be assigned to Managers (irrespective of country) and a single role for employees across the globe


In this scenario, we try to set visibility of fields available in MSS Short Profile based on parameters defined by the customer. For eg: Job Code of Blue collar workers should be not visible to managers in Nordics.


Standard Code hides fields with no values in it, we decided to leverage the existing functionality. First Step would be in enabling the Hide checkbox for the fields you require visibility control in V_T77TMCDRCNFFLD_GRP


In WD Component: HRTMC_SHORT_PROFILE, View: V_MAIN and Method: WDDOMODIFYVIEW, enhancements needs to done to standard source.


Placing a break as shown:


For any field, for eg: SAP_PA_BIRTHDATE, clear the value of the field from LS_FIELD_VALUE.


Field is hidden as shown in HRTMC_SHORT_PROFILE.


Our customer (on EHP minus 1) decided on a multi country implementation of MSS Add-on 1.0 with the requirement that all UIBBs in ESS should have visibility control based on attributes of employee like Company Code, PA/PSA or EG/ESG.



The standard approach would be to use define multiple screens with required fields, use HRESS_C_PERSINFO_CONFIG to replace per combination and implement BAdI HRESS_PER_CONFIG_KEY for additional attributes. This definitely meets the requirement, however has following maintenance issues from a customer perspective.


  1. Any changes to screen for a specific combination defined by business will have wait till the monthly release cycle to be reflected in the portal ( only emergency transports can be moved to production environment between cycles)
  2. Most importantly, all changes require support organization involvement (configuration/transport). This should be avoided and had to be maintained by a power user using a custom table directly in Production.



This can be achieved with a post exit in method: GET_UIBBS_FOR_EVENT in Component Controller of FPM_OVP_COMPONENT.




Key Steps:

  1. Get PERNR from Memory (PERNR_MEM_ID )
  2. Read all UIBBs.
  3. Remove UIBBs according to your customer requirements (used CONFIG_ID)

Our customer (on EHP minus 1) decided on a multi country implementation of MSS Add-on 1.0 with a unique requirement. A Single portal role has to be assigned to Managers (irrespective of country) and a single role for employees across the globe. This did create some unique challenges, this blogs describes approaches on how to address some of the scenarios.


MSS Reports are configured in LPD_CUST. However the same set of reports called for all Managers across the globe. This has to be avoided, certain reports needs to be set as invisible to certain countries. 


WD Application APB_LAUNCHPAD is used in MSS Reports. We need to do overwrite of GET_TREE_CONTENT method in the component controller.





Break at ITAB_READ_APPLICATIONS. Append this as per the requirement to set visibility of Reports.



This applicable to all reports using HRMSS_REPORTING_LAUNCHPAD

Special Thanks to Hitesh Batra.

Our customer (on EHP minus 1) decided on a multi country implementation of MSS Add-on 1.0 with the requirement that all fields in ESS should have visibility control based on attributes of employee like Company Code, PA/PSA or EG/ESG.


The standard approach would be to use define multiple screens with required fields, use HRESS_C_PERSINFO_CONFIG to replace per combination and implement BAdI HRESS_PER_CONFIG_KEY for additional attributes. This definitely meets the requirement, however has following maintenance issues from a customer perspective.


  • Introduction of new field in future will have to be added to multiple screens pre-defined across all countries.
  • Any changes to screen for a specific combination defined by business will have wait till the monthly release cycle to be reflected in the portal ( only emergency transports can be moved to production environment between cycles)
  • Most importantly, all changes require support organization involvement (configuration/transport). This should be avoided and had to be maintained by a power user directly in production using a custom table


Approach: Field visibility should be controlled both in Overview Screens and Detailed Screen. We will hide Date of Birth (GBDAT) in Personal Data in the blog.





CL_HRESS_PER_OVERVIEW is the default class used in these UIBBs. We need to enhance 2 methods to achieve the requirement.






Store value of VISIBILITY_REF. Export to memory for later use.



Now enhance Methods: IF_FPM_GUIBB_LIST~GET_DATA






Clear value of component (FPM_BOL_GUIBB_REF_XXXXXXXXXXX) stored for reference field VISIBILITY_REF to initial.





Now, the field GBDAT is hidden in Overview Screen






Detailed Screens:


CL_HRESS_PER_DETAIL is the default class used. We need to enhance 2 methods to achieve the requirement.









GBDAT is hidden in detailed screen also.



This approach can be used for standard overview/detailed screens. A custom table can be configured calling the Config IDs and visibility set based on the attributes as required.


Special Thanks to Sonu Krishna


Our customer (on EHP minus 2) decided on a multi country implementation of MSS Add-on 1.0 with a unique requirement:

One Role to Rule them all: A Single portal role has to be assigned to Managers (irrespective of country) and a single role for employees across the globe. This did create some unique challenges, this series of blogs describes approaches on how to address some of the scenarios.

Organizational Chart Visualization by Nakisa was used for the Hierarchical team representation for the Team View application as shown:



The context menu formed is static and not configurable. This was not supporting the business case as applications (for e.g.: Time Request on Behalf) were not used by all reporting employees of a manager.

Some other requirements were:

  • Compensation Profile should be hidden if a reporting employee belongs to Blue Collar group.
  • Leave Request on Behalf of employees should be hidden if the reporting employee is belongs to a particular PSA
  • Many more iterations of this nature.

WD Component HIER_VIS_UI_WRAPPER is used for hierarchy view. As overwrite of FILL_HIERARCHY_DATA Method of the Component Controller would be first step.


A break as shown below to understand how standard source builds the context menu.


In LS_HIER_DATA, BOX_DATA contains employee related info.


CONT_MENU gives you the Context Menu build. Append this on runtime based on your requirements and you have context menuy control in MSS. This can be appended in employee level as NAVBOX is bound per PERNR.5.jpg



This approach is used in Hierarchy view. For GRID or LIST View, NAVBOX is not readily editable. However FILL_MENU_LIST and UPDATE_DATA method in Component controller of HRMSS_TEAM_HIERARCHY could be enhanced to achieve the functionality.

Alternate approach would be building a wrapper to achieve the same functionality.

Special thanks to Kumarpal Jain and Sriranjani Chimakurthy.


SAP HCM ESS MSS Ui5 - Overview

Posted by G N May 19, 2015

Dear Friends,

Outlines of the document:

  • This document is intended to provide a brief summary of and an introduction of ESS/MSS Key functionalities in Ui5 technology
  • ESS / MSS Ui5 pre-requisite business components
  • Features and benefits of ESS MSS standard scenarios i.e Launchpad, My information, My services, My team, My team services and My reports etc.


Enjoy reading and welcome feedback.

What is ESS MSS - Ui5:

Employee Self-Service and Manager selfservice (SAPUI5) is an enhancement to the existing ESS and MSS solution based on Web Dynpro ABAP. With the release of ESS and MSS (SAPUI5), certain applications and functions are now available on SAPUI5, a new technological base.









I often hear back from customer when I ask “why do you want to implement the HCM Process and Forms”…....“I want my HR Process to move online and improve HR process” which is common answer I get from my customer’s.


So let us understand the real business objective of Implementing HCM Process and Forms.


The key factors which come’s to my mind is Increasing the Efficiency, Data Quality and Consistency.


Why Efficiency ?



Currently organizations are posing challenges especially who are still on paper based processes and as the usage of technology is changing rapidly, hence today Organizations are constantly looking for  increase in speed of data processing and improve their process efficiency ! For example getting an employee on-boarded or promotion’s completed in a timely manner is an obvious business imperative. The other aspect of process efficiency is the idea of taking less time from administrative staff, which ultimately results in labor cost savings.


Data Quality ?


Obviously improving data quality is a critical factor which will have direct impact on the HR administration cost’s. By configuring the business rules that are already configured for infotype processing within forms and process will ensure that quality of the data submitted would significantly enhanced. Data quality ensures driving accurate decision making and employee satisfaction.

This will also ensure that blame of missing paper work or human errors which can lead to legal actions for the employee’s.


Why Consistency?


Since the approval process is the part of the HCM Process and Forms framework, it helps organisations to adhere there policies are being followed with respect to the decisions made by the managers or HR administrations. Lack of consistency may lead to not meeting the legal standards especially in Public Sector or government organizations. Consistency will also ensure the tracking the progress over the course of time.

Corporate branding is very important and is visible all over the place across companies… Companies take pride in their brand and so their
corporate portal is no different.



With HR Renewal, SAP has revived the look and feel of the portal and to take one step further, we need to define the our own branded-background in the lanes.



Here is one quick and dirty way to brand your HR Renewal portal:



Transaction SE80 and click on MIME Repository. Then in the Name space area, navigate to the following location:


SAP > BC > BSP > SAP > ARSRVC_SUITE_PB > themes > bgimages




Under this location, you will find the images that are already provided by SAP. We will override these images. We need 2 images here- the thumbnail (*_thumbnail.jpg) and the background image (*.uxga.jpg)



Now before you upload any background and thumbnail image, make sure that the images are ready.


To Preparing the Image:


Thumbnail image should be 160 x 128 pixels and the background image should be 2600 x 1926 pixels. This is the same size as what is delivered
as standard by SAP.



Uploading images:


The easiest way would be to overwrite an existing image.



Right click on the *_thumbnail.jpg file and select Upload/Download > Upload and Replace






Select your image and click on Open button.



You have now uploaded the thumbnail image.



Repeat the same step for *_uxga.jpg file.


Go back to your browser and verify that the file is available for you to select as background. If you do not see the image at first time, go ahead and delete the cache, and restart your browser. You should see the newly uploaded image and set that as you background.



As an option, you can select this background as your personalization on the Page.



Good Luck.

Working with different clients, I noticed a common trend in ESS Requirements. Most of the clients I worked with, wanted to have some specific application visible for only a specific country or for a specific set of people such as store employees (for Retail organization), yardmasters (for railroads), executives (for banking organization) or certain services visible on specific conditions such as an ESS application link is visible only for employees above a specific band or level.


After doing a bit of research I found the use of SAP standard functionality - Dynamic rendering of Services.

This blog focuses on understanding this functionality given by SAP and its usability in different scenarios.


Let us understand this concept using an example.

Requirement - Enable one of the custom ESS applications only for store employees which can be mapped to organizational or personnel structure.


For a Retail Company, which has many frontline store employees, the requirement is to have the application Store Spending amount (Custom WD ABAP Application) enabled only for store employees. With this application, store employees can check the amounts they have spent at the store.  Here, the store employees are differentiated based on their specific organizational structure.

In standard configuration, ESS Application visibility access is controlled based on Country Grouping, but this requirement was to control based on personnel or organizational structure. So, for this scenario we considered the Organizational structure since the retail store employees were mapped to a personal sub area.  This should get determined dynamically based on user’s log in, his employee number and his organizational structure.

For such scenarios, Dynamic rendering of services functionality is being used.

This functionality makes use of standard BAdI’s given by SAP:


With the help of these BAdIs, the attributes of an application can be changed dynamically at runtime eg. Hide/show, enable/disable etc.

For the requirement stated above, I made use of the BAdI, HRESS_MENU.

When using this BAdI Implementation, Application Alias need to be defined in Launchpad Customizing under Advanced Parameters. The Application Aliases will control the dynamic processing of portal services. Application aliases are used as a key to control application attributes.




The step by step process to do this in system is described below:

Step 1 - Go to Launchpad Customization, LPD_CUST

pic 1.png

Step 2 - Select the specific Application and mention the Mandatory and option parameters.

pic 2.png

Step 3 - Provide the Application Alias as the personal sub area

For the eg taken above, personal sub areas ending with ‘06’ are for the retail store employees. This is used as a key to control the application attributes in the BAdI.

pic 3.png

Step 4 - Once you define the Application Alias as the personal sub area(06 – for store employees), the next step is to set the condition in the BAdI, HRESS_MENU such that, if the logged in employees personal sub area is not ending with ‘06’, then set the service attribute CV_ISVISIBLE to invisible for application where application alias = ‘06’


pic 4.png


pic 5.png

This will ensure that the employees, who are not from personal sub area ending with 06, do not see the custom application - Store Spending amounts.

The HRESS_COUNTRY_FILTER BAdI is active in standard SAP delivery and this implementation checks the COUNTRYGROPUNG parameter.

last pic.JPG

Few other scenarios where this functionality can be used is:



Enable Stock Options

Organizational Structure (Executives, VPs)

Enable Requisition related links

Role based (Recruiter, HR Admins)

Enable Tax related links

Country Grouping based (W4 for US, Form 16A for India)

Enable Time Card related links

Personnel Structure (for hourly employees, temporary employees)

The requirement was to filer the employees that manager could see in team view by criteria based on values in PA. Managers only wanted to see hourly paid employees.


Of course this would be problematic is an hourly paid employee was to hold a subordinate chief position as the whole structure below that employee would not be visible. In this case business rules wouldn’t allow that scenario to happen.




This blog hopefully guide though step by step of implementing a custom function module which drives the selection and configuring the team viewer to use it.


Step 1 – Create Copy of Function Module

At the lowest level, the selection is done by function module HRMSS_TARGET_EVAL_PATH. Take a copy of this function module and modify it to suit the business requirements.

Take a copy of the functional module used for selection by the object selection rule.

  • In the example of Object selection rule ‘MSS_BIZ_RULE5’, the function module is ‘HRMSS_TARGET_EVAL_PATH’
  • Change the function module to filter the selection as required


Step 2 – Create Copy of Object Selection Rule

     IMG: Personnel Management -> Manager Self-Service(WDA) -> Object and Data Provider -> Object Provider ->  Define Rules Object Selections

    • Change the Function Module to point at the copy created in the previous step


Step 3 – Create a Custom Object Selection


     IMG: Personnel Management -> Manager Self-Service(WDA) -> Object and Data Provider -> Object Provider ->  Define Object Selections

    • Make a copy of ‘MSS_BIZ_NOD’
    • Edit the rules for navigation objects to point at the custom rule


Step 4 – Create Custom Structure Rule(s)

     IMG: Personnel Management -> Manager Self-Service(WDA) -> Organisation Structure Views -> Define  Organisation Structure Views

    • Make a copy of  the rules being used in the Chart Config ’MSS_TMV_BIZ_xxx’
    • Edit the structure rules to point at the custom Object Selection


Step 5 - Customise Org Chart Visualisation

     IMG: Personnel Management -> Manager Self-Service(WDA) -> Team View -> Configure Organisational Chart visualisation.

    • If not already done so use the ‘Transfer Standard Organizational Configuration’ to Transfer ‘MSSBIZVIEW’
    • The use ‘Maintain Transferred Organizational Chart Configuration’ to activate the new Chart Config


    • Create a new Nav field view for the Structure which points at the custom Navigation Field Group:






Employee or job satisfaction plays a crucial role in the domain of employee retention. A happy worker is a productive worker. Or to put it the other way around, unhappiness among workers in the USA results in a whopping $300 billion loss in productivity per year. Some Western European countries do quite well, especially Denmark, Luxembourg, Finland and the Netherlands, but still, any improvement in this space brings significant business benefits.




This is clear for most HR managers, but what does it have to do with SAP and what is Fiori by the way?

Employee satisfaction is impacted by multiple factors including topics such as compensation, work-life balance, perceptions of management, flexibility, safety, etc. Considering how fast the amount of computer work is expanding in the work force, it is clear that the use of software has an increasing impact on employee satisfaction. This is where SAP Fiori comes into the picture.


Intro to SAP Fiori

One of the key priorities of SAP is to improve the user experience of their software. SAP Fiori is constantly growing collection of applications which have been created with the user experience enhancement in mind. They are simple, they don’t have all the possible buttons and functions on the screen only some users might need, but they focus on what is important for most customers. They are coherent, which makes jumping from one Fiori app to another a fluid experience. They are responsive, so they run on desktop, laptop, tablet and smartphone. They follow authentication and authorization principles you expect from SAP, so they can provide content based on user roles.




Investing into SAP Fiori is a smart move. It is estimated that $1 investment in user experience brings a return of $2 to $100. Employees become more productive by intuitive use of SAP anytime and anywhere, making less errors, they need less training and support, etc.

What can Fiori do?

SAP has created 300+ Fiori apps (as of today) across many lines of business and industries, you can find an overview here. Furthermore, the above mention design principles are applied to the whole SAP software portfolio, even to acquired cloud solutions such as SuccessFactors. Very important to know that SAP brings out new Fiori apps few times a year in so called Fiori waves.




Can Fiori be applied to specific business needs?

There many possibilities in this area. The out-of-the-box Fiori apps can be extended. SAP has released the Web IDE, which is a great tool available on the HANA Cloud Platform and soon on premise as well. This tool allows developers to make easy changes with drag&drop and deep and complex changes in a way which is future proof in terms of upgrades.


The Theme Designer tool makes it possible to adjust the look & feel including logos, images, colors, fonts, basically any element of the theme.


Even more important to know that SAP made the Fiori guidelines available and this opened up the possibility for customers to develop their own Fiori-style applications (using SAPUI5 and Gateway/OData) running on the Business Suite and/or on SAP HANA.


An important piece of the Fiori technology is the Fiori Launchpad, which can be seen as a shell around the Fiori apps. It provides navigation, personalization and configuration features. It is basically a central point of access for Fiori (and even some non-Fiori) apps combining transactional and analytical aspects.



Improving user experience of SAP solutions hasn’t been as easy as now. SAP has created Fiori applications for the most common scenarios, among them HR very prominently. In case the out-of-the-box applications are not sufficient, there are brand new web and cloud based tools available to make adjustments and even new developments possible in a future proof way.

Scenario:            Manager, able to Select or Search Position from Entire Organization Structure while creating requisition request. In Standard, Manager See only those Organizational units which Reports to his Organizational unit. If, requirement is Manager could be able to see Entire Organization Structure (from root Organization Structure) and select or search position from any org unit, we need to configure OADP ‘Organizational structure Views’.

Normally, in E-REC MSS Recruiter Raise requisition request and is able to see entire organizational structure. But Our requirement is Recruiter need not to raise requisition request. So HR Manager has to raise requisition request. So for HR manager system shows only reporting organizational units and thus not able to select position or search position from entire Organizational structure.


We have provided two custom View’s with which one can able to see entire Organizational Units and restrict these views for other managers through Web Dynpro application.


With below step by step OADP configuration we have added two custom Views i.e. for Position search and Select from Entire Organizational Units


  Position Selection.png


Go to: SIMG_SPORT Transaction


IMG PATH: Personnel Management --> Manager Self Service à Object and data provider --> Define Rules for Object Selection.

Rule: For Navigational Objects.

·        In this rule to get all the organizational units under root organizational unit in the Navigational area we need to use this Evaluation path with required Depth.





Rule: For Position Search

·        This rule we use in Object Selection that we need to passes to Parameter Group.




Rule: To fetch Root Organization Units

·        In standard process to get root object we use SAP_MANG evaluation path which returns current organizational unit. But our requirement is to display entire organizational structure so we can achieve this by using function module or custom evaluation path that returns Top most Root Organizational unit.


    This Function Module is copied from standard function module HRWPC_PATHROOTS and importing User name and returning Root Organization Unit for that Username.




Rule: (Target Objects) To fetch Positions against Organizational units.

·        Mainly we use this rule to get all the positions against the organizational unit and display the positions in Data Views.




IMG PATH: Personnel Management --> Manager Self Service --> Object and data provider --> Define Object Selection.

    Object Selection for ‘Select Position Search from Organizational Unit’.

·              In this Object selection we passes three rules i.e. SOHAR_ROOT, ZSOHAR_NAV, ZSOHAR_TGT.

SOHAR_ROOT- Returns the root organizational unit.

ZSOHAR_NAV- Returns the Organizational units under Root organizational unit.

ZSOHAR_TGT- Returns positions against organizational units.



Object Selection for ‘Position Search from Entire Organizational Unit’.

·        For position search we need to define two Object selection i.e. ZSOHAR_POS_SRCH and ZSOHAR_PS_PRM

ZSOHAR_POS_SRCH we pass to View (Position Search).

ZSOHAR_PS_PRM we pass to Parameter Group.


Object Selection for ‘Select Position Search from Organizational Unit’ passed to Parameters for Object search.

  • In this object selection we are using Rule: ZSOHAR_ROOT which returns the root organizational unit and ZSOHAR_POS_SRCH which returns staff assignments along with organizational structure (required for position search).
  • This Object Selection we pass to Parameter Group and that parameter group we will pass to Class that is defined in object selection for position search ZSOHAR_POS_SRCH.



IMG PATH: Personnel Management --> Manager Self Service --> Object and data provider --> Group Parameters for Object Search.

Here we have to give Object Selection which is having Root Objects and Target objects and this Parameter group, System will pass to class that we already mentioned in Object Selection ZSOHAR_POS_SRCH.



IMG PATH: Personnel Management --> Manager Self Service --> Object and data provider --> Define Organizational Structure View.


View: For Position Search


View: To Select Position from ‘Sohar Entire Organizational View’.



IMG PATH: Personnel Management --> Manager Self Service --> Object and data provider --> Group Organizational Structure View.

Here we have added two custom views to search and select position from entire organization unit.



Can provide help for any other scenarios related to OADP Configuration. Feel free to ask


Argh!!! I blurted, there are times when a developer hands are tied and he feels frustrated as he is unable meet some simple requirements. This blog is an outcome of my recent experiences with development of FPM based HCM P&F forms. This happens to be my 13th blog(so named it aptly ) and I wanted to be a critic here, but these are the things you need to watch out before you take a plunge into HCM PF using FPM architecture.


1. Form Printing - You dont have a direct option of printing HCM FPM forms, the direct web printing does not come out well and may not be accepted. The others option is to build Adobe forms and link it, this adds to your effort and you have to rely on  Live cycle designer to build the form and ADS to render the form which again would incur licensing costs.


2. Screen Manipulations/Good Layout Screens- If your form requires heavy screen manipulations like hiding, unhiding, color, text manipulations then FPM forms is not a fit, Adobe is miles ahead. For example, a customer requirement to highlight changed personal data on form cannot be met by FPM forms, there is no option to manipulate a input box to highlight in a different colour other than just hiding or making it input or read only. This can however be met by round about ways, but there is no clean solution. And many would have already noticed that the FLUID designer is a very difficult to handle workbench, and definetly slower compared to se80 or ADLC. Again if you are looking for beautiful layout screens like Adobe then you need to look somewhere else.


3. Reference Numbers - This may not be very common requirement, but some customer would definetly want to differentiate their processes using differnt alpha numeric prefixes, as far as I came to know there is no way you can identify the process inside the Badi, the Badi needs to be enhanced by SAP so that we can differentiate the processes.


4. Attachment in different Sections : In HCMPF you see the attachments on the top, but ofcourse you can personalize and make the attachments below or sideways. But if you have a requirement to have attachments in every sections so that you want to differentiate which attachment is for  which section then you hit a wall with HCM P&F.  Also added to this, there is not a way to sort the attachments based on requirements, there should have been a sequence numbering in the attachment configuration.


5. Very complex workflows - if you are in for complex workflows where in you will have to send tasks back and forth it can get very tricky vis-a-vis your custom forms since you have three different tasks and one task cannot manage all three things, I wonder why not make a single task and have a binding parameter signifying what is the stage, for example, approve, back to author etc.


6. Component reuses - Component reuse is a difficult proposition here, though you have the possibilites of composite UIBBs and detailed explanation of which you can find in Chris blogs. Data needs to be exchanged between UIBBS using singletons or other mechanisms, but sometimes the HCM PF just dont behave as you would want it to and can get you in troubled waters.


7. Editing in approval screens - This may not sound logical but customers have come with requirements of editing the form and as well as want to approve, with FPM forms the approval screen is just read only, even if you get a section editable by composite UIBB having a custom WDA you still will not able to send back the values to the ISR framework, it just rejects it.


8. Customized buttons/Work Item Texts/Customized message after submitting - If you need name your button text as per your wishes then the only option is to enhance the component and to rephrase work item texts you clone the task, I did not see another option to do this. And you will not find an option to have customized message on submission.


9. Tab out trigger - In Adobe the possibilites are immense, if you know javascript then you are your master. In WDA there isn't an option of tab out trigger, you specifically have to hit enter. This could be big draw back when calculation on form has to happen as soon as you tab because it is quite possible that user forgets to press enter, the remedy for this is to trigger events during check or send.


10. Hiding a  button/Comments as tabular display - I am not sure if I have left any stone unturned here, but honestly I did not find a way to hide a button which has led to embarrasing situations with customer where we had to design a link to act as a button. The button cannot be hidden but the link can be hidden. You do have option to hide button if it comes with the table. There is also no easy way to display the comments in a tabular format if you want to. I think the better design would be to have it like the history where you have a more neater display.


11. Data Manipulation in subsequent steps - For some strange reasons I found that you cannot default data in next stage data based on previous stage, you can still do it by removing that field in the initial form scenario stage and making it available in next form scenario stage, but you end up with some other issues later on. The framework just does not re-initialize the data if it was already present in previous step.


12. Performance - It is a common knowledge that adobe based HCM PF have severe performance issues when the form gets bigger and FPM based ones aimed to overcome this very problem which plagued adobe, but at the end of the day you still have unacceptable performance levels in FPM forms. We compared the performance with custom WDA forms which has 10 times more data than HCM PF, I am quite confident that our custom forms were 10 times faster in rendering, the problem could lie because of the generic framework or lack of optimization of the ISRs.


13. The ever present bugs - And lastly, dont be surprised if you are hit by multiple bugs in the course of your development. Fortunately, SAP was prompt enough to suggest the possible notes for resolution and save the day for us.


Deciding the right design can make or break a project, I hope these points which I have experience would be of some help to others and bail you out from cutting a sorry figure in front of the customer, it is good to understand the limitations of a framework before you commit anything. Thanks for reading, your suggestion/comments are welcome.




To begin with, I am extremely excited to write my first ever blog..based on my understanding and work done in the projects.


The document aims to be a step by step guide for upgrading  ESS/MSS on WDA.


On a high level, these are the steps that to be followed:


  • Activate the relevant business functions
  • Activate the needed services in Portal using SICF
  • Launchpad Customization for the applications/services used
  • Assignment of Custom Launchpad to WD Component/Application Config
  • Adding Role and Instance to the Custom WD Component – in the App CC
  • Adding the Custom  Role (created in step 3) through PFCG
  • Customize the Org Chart Visualization Object
  • Importing the role in Portal


All these steps are discussed in greater detail below:

The attached screenshots are for MSS but same process is to be followed for ESS Upgrade as well


Turn on the Switches for EHP7 – MSS – using SFW5

As a first step, activate the relevant business functions using the T Code SFW5:


HCM, MSS on Web Dynpro ABAP (HCM_MSS_WDA_1)

Use this business function to activate Manager Self-Service based completely on Web Dynpro ABAP technology for both deployment options for the Manager role:

  • New SAP NetWeaver Portal role Business Package MSS Add-On 1.0
  • Manager Self-Service for SAP NetWeaver Business Client

HCM, MSS on Web Dynpro ABAP 2 (HCM_MSS_WDA_2)

You can use this business function to activate Manager Self-Service based completely on Web Dynpro ABAP technology for both deployment options for the Manager role:

  • New SAP NetWeaver Portal role
  • SAP NetWeaver Business Client

Refer to the link for more documentation on business functions for MSS on WDA - http://help.sap.com/erp_hcm_ias_2013_02/helpdata/en/d8/cb80a7bf06444ba9b2884c543dd5ac/frameset.htm


Activating the Services in SICF

The next important step is to activate the services which are needed in the Portal.

The below example shows the Custom WD Service created for ESS which has to be activated in the ESS Portal.

The activation can be done by selecting the service and doing a right click – and selecting Active or Deactivate Service.




Launchpad Customization


Once, the services have been activated, the next step is to create a custom Launchpad. The details of the same are given in the Note - 1943809.

Below mentioned are the steps I followed to create custom Launchpad for my project and then assigned it to WDA Component.


  • Create a custom Launchpad:
    1. Go to transaction LPD_CUST ,select ‘New Launchpad’.



Enter following details on the next screen :
Role: ZMSS
Description: Custom Menu for MSS
Namespace: ZMSS
LunchPad Type: FPM_UIBB




Right Click on 'Custom Menu for MSS', then select ‘New Folder’ to create new nodes like ‘MSS etc, then click on 'Save'.

Once the Folders are created, you can drag and drop applications from the SAP standard launchpad to the custom one. You can add various types of objects in the launchpad like WebDynpro ABAP or Java Application, a SAP transaction, a URL page, a Portal Object etc.



Assign the custom Launchpad to FPM:


The next step is to assign the Custom Role created in the Launchpad to the Application Configuration:


Copy the standard HRMSS_HOMEPAGE to the Z Version and change the role:




Here, we can see that the custom Role ZXXX_MSS has been added to the Z Application Configuration




Adding the Custom Role through PFCG

Select the following IMG Path and change the standard Role to a Custom Role:





Copy the above role to Z role as below and then remove unwanted service and nodes.




Assign the z application configuration as below to the newly created Z Role:





Customize the Org Chart Visualization Object


The next step is customizing  the Org Chart Visualization


This can be done by updating the Role  as below on the  View - V_THVNAVLPEVENTS







  Import the Z Role from Portal through Content Admin


The last step is to pull the Z role from Portal so that all the applications are visible in the Portal.


This can be done from the Content Admin.


Go to Content Admin and pull the Z Role from the backend the way shown below:


content admin_1.JPG



Import Custom PFCG Role to SAP NW Portal –  http://help.sap.com/erp_hcm_ias_2013_02/helpdata/en/d8/cb80a7bf06444ba9b2884c543dd5ac/frameset.htm



SAP Note 1685257





    Filter Blog

    By author:
    By date:
    By tag: