In this blog, I m going to enlist all the important links for upgrading or customizing EHP5, EHP6 and HR Renewal
Before this you need to know and  decide are you sticking with JAVA WD (No more enhancement for HCM) or moving towards WebDynpro ABAP based ESS/MSS and UI5 Landing pages etc (recommended approach)
Since you are doing Technical upgrade, its better to migrate to latest technology as in both cases testing would be involved and you can get much more out of testing when you plan to migrate.
Please note once you plan to move away from JAVA WD to Newer WDA or UI5 based ESS/MSS, its a project in itself ie
For customers not planning to use WDA ESS/MSS then :

When you upgrade your Portal to NW 7.3 or 7.4 and need new BPs and doesnt want to upgrade ECC ie from EHP4 to EHP6/7, Please check below note
SAP NOTE 1874939 - SAP Business Suite for SAP NetWeaver 7.4 hub systems
you will find any dependency using UDA Tool
Need to use this new Business packages for new NW version

BP ESS 1.41
BP MSS 1.41
Now if customers plans to upgrade or install new EHP5/6/7 HCM, They have two deployments options ie without using Portal or use NWBC
Here are the options and benefits listed.

Moving towards ESS WD ABAP from WD JAVA, would indeed be a reimplementation but customer can preserve their configuration in backend but not in portal if they choose to use new Iviews. If they want to run parallel both JAVA WD and ABAP WD Iviews it ll require two set of roles once they activate switches for ESS and MSS as listed in below notes and links.
Please always famililarise with this new technology and switches, any new functionality in enhancement package is typically done through a switch, only once you activate this switch in SFW5, you ll see this option.

All Business Switches are listed here and their Important documentaion ie what and which functionality each switch brings and also the roles.
Each EHP release, brings its set of roles which you need to use :

Important Notes to consider :

1450179                                                                          ESS Based on Web Dynpro ABAP Available as of EHP5

1701634                                                                             HR renewal 1.0: Release Information Note

1685257                                                                            Portal Upload ie Business Package Deployment EHP6 above and beyond for WDA

HCM, Employee Self-Service Switches - Human Capital Management - SAP Library

EHP5 ESS (EA HR 605) Switch HCM_ESS_WDA_1

Business Package for Employee Self-Service (WDA) 1.50 - SAP Library

EHP6 ESS (EA HR 606)  HCM_ESS_WDA_2       

Business Package for Employee Self-Service (WDA) 1.50 - SAP Library
HCM, ESS on Web Dynpro ABAP 3 - Human Capital Management - SAP Library
ESS with UI5 Landing Pages ie HR Renewal, Now with HR Renewal we have provided functionality in Support package level as opposed to enhancement.
HR Renewal – SAP Help Portal Page |]
Configuration guide can be obtained from here (please note this require S user id)
Admin guides which provide information are listed here :…
HR renewal is a shipment name for quarterly shipments (also called feature packs in the HCM area that belong to the so-called In-Advance Shipments (IAS). With the HR renewal shipments, the software component EA-HR is shipped in advance to the next ERP enhancement package.
Support Package 03 = Feature Pack 1
Support Package 05 = Feature Pack 2

Support Package 10 = Feature Pack 3

Support Package 14 = Feature Pack 4   UI5 based Landing Pages for ESS/MSS and few services launched. Evolution from Homepage to Landing page

Configuration Landing Page or SPB  Configuration of Suite Page Builder (UI5) 

HR renewal 2.0  is out                      HR Renewal 2.0 begins

In ESS WDA, Homepage customisation is replaced with launch pad customisaiton, You need to use LPD_CUST or PFCG for configuring links or hiding them etc apart from the BADI given in ESS, Refer below
Important Customisation links Launchpad and Notes LPD_CUST, BADI Usage and Dynamic rendering
SAP Note 1943809, to call custom role ie ZESS in your Application etc
Dynamic Rendering of the Menu (BAdI HRESS_MENU) - Business Package for Employee Self-Service (WDA) 1.50 - SAP Library
Application Parameters - Business Package for Employee Self-Service (WDA) 1.50 - SAP Library
Addition of custom infotypes or additional standard Infotypes in ESS

You can check delta of functionality between different releases using the[ SAP Solution Browser SAP Solution Browser

For MSS we have something called MSS ADD ON
1588625                      Release information for Manager Self-Services Add-On 1.0
1582553                      Release strategy for the ABAP add-on EA-HR_MSS
1582460                         EA-HR_MSS: Overview note

Check the help links here first to understand the functionality :

SAP Library - Manager Self-Service (WDA)

Most often there is a confusion that POWL uses SWFVISU, It doesnt . Information on configuring POWL can ve accessed here


POWL Inbox configurations for Manager Self-Service EhP5 and above


MSS POWL Inbox config (EHP5 & above) - LAUNCHPADHANDLER action



All that is needed for configuring Substitution in MSS

Leave request single level approval TS21500003

Muliple level approval  configuration as of HR Renewal FP3 Configurations for enabling Multiple approvers for Leave Request

SAP Notes for customisaiton of Leave request and Working time approval
1773641 - ESS LEA: Web Dynpro ABAP based Leave Request use in UWL
1800335   CATS WDA: Web Dynpro ABAP based CATS use in UWL

Fiori and HR Renewal


Fiori apps are designed to work on desktop, tablet and smartphones using the same code and based on SAPUI5.


SAP Fiori does not replace HCM UX renewal, which is an in-depth renovation across all HR processes. SAP Fiori focuses on simplification for the most broadly and frequently used business functions for enterprise users.  Fiori includes HR apps, but has a broad scope, including not only employee and manager but also purchasing agent and sales reps.  Fiori usage will require extra licensing cost as opposed to HR renewal.


What everyone in HR (or anywhere) should know about FIORI

This blog explains How to Add or Use the Customer Fields in ESS Leave Request.


Requirement: I came across some discussions how can we add a Customer field to use as a Checkbox or Dropdown list in ESS Leave Request, So let me explain some of this scenarios.




You can do with Customization of FPM component


Step 1:


Goto IMG path in Tx: SPRO


Personnel Management-> Employee Self-Service (Web Dynpro ABAP)-> Service Specific Settings -> Working Time -> Leave Requests -> Processing Processes -> Specify Processing Processes for Types of Leave -> Define Absences/Processing Processes -> Choose


Choose the Leave type for which you need the Customer Field, for ex: SMCL (Casual Leave).


Here you can find the ‘Field Selection for Additional Data’ you need to select one of the value from F4 help as shown below.


Leave request Validations- Additional Data_Config1.JPG


Step 2:


Goto Tx: SE80 and select Webdynpro Component as ‘FPM_FORM_UIBB’


Expand Component Configurations and select ‘HRESS_CC_GUIBBF_LEAVREQ’ and Start Configurator


You need to create Enhancement by going to ‘Other functions’ button as shown below.


Give the name as Z_ HRESS_CC_GUIBBF_LEAVREQ and SAVE it.


Goto Z_ HRESS_CC_GUIBBF_LEAVREQ and Start Configurator and Click on Change button as shown



Goto Group Additional Data, Elements


Change the Attributes as shown below



Step 3:


Goto Tx: SE80 and select Webdynpro Component as ‘FPM_OVP_COMPONENT’


Expand Component Configurations and select ‘HRESS_CC_PTARQ_LEAVREQ’ and Start Configurator.


You need to create Enhancement by going to ‘Other functions’ button as shown below.


Give the name as Z_ HRESS_CC_PTARQ_LEAVREQ and SAVE it.


Goto Z_ HRESS_CC_PTARQ_LEAVREQ and Start Configurator and Click on Change button as shown


Goto Page LRF as shown below


Goto SELECTION_FORM tab and Click on Attributes and change the Configuration Name as ‘Z_ HRESS_CC_GUIBBF_LEAVREQ’


Click on Save, that should look like below


Step 4:


Expand Webdynpro Applications and select ‘HRESS_A_PTARQ_LEAVREQ_APPL’




You need to create Enhancement by going to ‘Other functions’ button as shown below.


Give the name as Z_ HRESS_AC_PTARQ_LEAVREQ and SAVE it.


Now you will see the new Configuration Component at ‘ Applic. Configurations’ with the above Z name.


Goto Z_ HRESS_AC_PTARQ_LEAVREQ and Start Configurator and Click on Change button as shown.


Then Change the configuration to Z_HRESS_CC_PTARQ_LEAVREQ and click on save as shown below.





Login into Portal and go to Create Leave request Page you will find the Additional Data Field – Hours as Check box as shown below.

ESS Leave Request Output.JPG

The Additional Data Field will appear only for ‘CASUAL LEAVE’ as you have configured for only SMCL in Step1.


Business Logic/Validations:


The business logic should be written in the BADI PT_ABS_REQ in the method ‘SIMULATE_VIA_BLOP’


Then you can validate by seeing the Value as checked(X) for Customer01 field in the debugging mode as shown below.

ESS Leave Request Output 1.JPG

ESS Leave Request Debugging.JPG

Open IM_ATTABS_TAB by double click, you can see the Customer 01 field Value as ‘X’.

ESS Leave Request Debugging_Output Cust 01.JPG

You can write your own logic for validations further for this field.


Dropdown List


For Getting the field as Dropdown.


In step 2, for example select the Customer02 field and change the display type as 'Drop Down' in Attributes Element.


To assign the values for the dropdown list you need to enhance the method MODIFY_DEF_DEFAULT_LABEL (at the end of this method) of class CL_HRESS_PTARQ_LEAVREQ_GUIBBF write your logic, for example as below.

Example code:


data: lt_fixed_values type WDR_CONTEXT_ATTR_VALUE_LIST,       

         ls_fixed_values type WDR_CONTEXT_ATTR_VALUE.

     READ TABLE ct_field_description ASSIGNING <field_descr>

     WITH KEY name = 'CUSTOMER02'.

     IF sy-subrc IS INITIAL. 

        ls_fixed_values-value = '01'. 

        ls_fixed_values-text = 'MALE'. 

        insert ls_fixed_values into table lt_fixed_values.

        <field_descr>-fixed_values = lt_fixed_values.



There might be some other ways to get this requirement done but I followed this way. If anything best please let me know.


Hope This blog helps all of you......Any comments or suggestions are most welcome




  1. 1933509 - New customizing switch RECFA PRNTQ allows recruiters to print off questionnaires from their dashboard.
  2. 1933610 - Allows the recruiter to find data faster and easier searching by reference code.
  3. 1933625 - This note allows the recruiter to complete multiple activities in “My Planned Activities” with one click
  4. 1938935 - Text boxes hitherto restricted to 5 lines in view can be increased by users.
  5. 1977871 - Candidates can maintain their Private email & Email Preference in the ‘Personal Settings’ page after logging in to their Internal Candidate
    Home Page. This solves the problem where assistants and substitutes could see correspondence for internal applications, because they have access to the
    business email address or the individual.
  6. 1978746 - When a candidate is hired after status had been changed to “withdrawn”, the hiring is considered consistently for the new status.
  7. 1978099 - A candidate can now be forwarded to multiple managers by adding them to the support group of the requisition.
  8. 1979210 - Makes management of publications in multiple channels more efficient for users. E.g. simultaneous publications across multiple channels are possible now, and change of end-date or withdrawals are easier to make and track.
  9. 1979224 - A new switch RECFA – CHNLM is introduced to allow channels to be set inactive from a certain date.
  10. 1979321 - This note makes it easier to pick the right channel, particularly if there is a multitude of channels for various countries.



My blog deals with the dilemma many organizations face, when wish to implement an SAP Portal for time data entries, time data approvals and control for employees within the ESS, for managers within the MSS and for time administrators.


The blog's purposes are:

  • Present a review of the different existing alternatives for implementing SAP Portals for Time Management
  • Provide useful information for those of you, who are in some phase of Time Portals implementation
  • Gather useful tips from consultants who have completed a Time Portal implementation


Here organizations can choose between several alternatives (I will refer only to SAP based solutions):

1. FIRST OFFERED SOLUTION: Implementation of the standard ESS/MSS packages for Time Management. This means using the "Out of the Box" solution, with minimum adjustments.


             Comprehensive details about this solution can be found in the following links:






    • Fast Implementation and deployment
    • Low costs
    • Full SAP support
    • Extensive solution for Employees and Managers
    • Workflow support
    • Updates and upgrades support
    • Can be partially customized and enhanced to fit the organization needs



    • Does not include a proper web solution for time administrators.
    • Time data entry is splitted between several iViews and many find this very uncomfortable, e.g. there is a separate iView for Clock In/Out corrections and a different one for leaves entering. Most organizations wish that employees and managers work mainly with ONE main web page, from which they will be able to navigate to additional information.
    • The iViews adjustments and enhancements are quite complex. An experienced portal consultant is required in order to enhance the standard pages in order to fit them to the general portal graphical theme. Actually, the iViews formations are quite inflexible.



2. SECOND OFFERED SOLUTION: Implementation of CATS - Cross Application Time Sheet. CATS can be used by several user interfaces. I will refer to the "CATS Regular" Interface.

         Comprehensive details about this solution can be found in the following link.


    • Unlike for first solution, here there are several views for data entry: a week view and a day view.
    • The Tool's layout can be customized by Data Entry Profiles to fit the organization needs.
    • The package includes a solution for time administrator.



    • Generally, it requires SAP PS implementation, since the employees' working time need to be assigned to a project or to an order. Therefore, this solution may not be appropriate for organizations which don’t load working hours on projects.

3. THIRD OFFERED SOLUTION: Portal DevelopmentThe idea is to establish most of the Time Portal on development, which may be done by a variety of developing tools: Web Dynrpo for ABAP, Web Dynrpo for JAVA, .NET, UI5 etc., and even a combination between them.



    • Full and comprehensive adjustment to the organization requirements, without any restrictions caused by the need to stick to the standard environment. This advantage makes this solution as favored to many organizations, which refuse to compromise.



    • Longer development period
    • Usually involved with higher Costs
    • Lack of SAP support. Any problem, bug or change requests require an involvement of an In-house developer/consultant.



I am sure that most of you would like to receive some key-rules, by which you will be able to decide of the preferred solution. But I have to disappoint you because there are no such rules, since each case has different considerations of: functional requirements, budget, personnel, IT rules and restrictions, GUI requirements, etc. Therefore, each case has to be considered correspondingly.


According to my own experience, many organizations choose to develop their own Time Portal, since in most cases which I am familiar with - this solution has advanced the others.

Moreover, you can also consider combining of several solutions from the ones mentioned above, for example, you may consider to choose the third option of Time Portal Development, but still use the standard infrastructure, as function modules, tables, classes, and even iViews.



Are these the only available solutions?! Of course not. The variety and creativity of solutions is vast, especially if you choose to develop a custom Time portal (the third option).

Here you, dear fellows, come in: please share you experience, your reached conclusions and similar dilemmas you've faced.





Liran Azury, Senior SAP HCM Consultant


[Rating the blog will be appreciated]

Abhijit Zope

HR Renewal 2.0 begins

Posted by Abhijit Zope Mar 14, 2014

SAP officially announced the initial release of HR Renewal 2.0 on 11th March. HR Renewal 2.0 is based on SAP enhancement package 7 for SAP ERP 6.0.


You will find more details in HR Renewal 2.0: Release Information Note 1965692. You will get Business Function - HCM, Manager Self-Service on SAP UI5 2 (BF_HCM_MSS_UI5_2) documentation for HR Renewal 2.0 in note 1990110.


Following are some of the new future available in this initial release -

  • Substitution Lane

Substitution is available as a SAP UI5 application with small and expanded lane in Manager Self-Service, which enables managers to substitute both tasks and applications to other users in an organization. Substitution is enabled for a certain select set of Manager Self-Service (UI5) applications and workflow and non-workflow based tasks in Work Overview of Manager Self-Service

  • CATS Approval

HR managers can use this service to check and approve working time requests. The application can be accessed from Approvals lane or can also be accessed directly through the application URL.

  • Payroll Data Source Framework (new)

Simplifies your end-to-end payroll process by customizing your specific payroll process using generic SAP payroll user interfaces and allowing for modification-free extensions of the standard delivery. Frans Smolders has given very details overview about this in blog Improve payroll data validation with SAP Payroll control center add-on.

  • Allows you to configure how personnel-related authorization checks must be performed.


There other country specific future also available. You will get more details in SAP help document about hr_renewal_2.



The following add-ons are retrofitted into 'HR Renewal 2.0':

  • SAP HR-CEE 110_604
  • SAP HX-CEE 110_607

The following add-ons are released for 'HR Renewal 2.0':


Welcome again to another blog in ESS MSS, if you had a chance to read my earlier blog I have explained how to knock out applications you might not require by creating a custom LPD role. In this blog let me try to touch upon how we can add our custom web dynpro application to the same hierarchy and launch the same.


This blog is helpful incase you are not well versed with Web Dynpro based on FPM and have done development based on classical web dynpros - just like me .



As  a first step we need to ensure that our custom web dynpro picks up the PERNR on which the user has clicked, now I found there is no straight forward way of doing this. if you have programmed the classical way then to a make it happen we have to incorportate our application in the FPM event loop.


So create an component configuration based on FPM_OVP_COMPONENT.



if you have no idea as to what I am talking about in the above step then follow the below steps.

1. In Se80, select the FPM_OVP_COMPONENT and then click on create component configuration.



2. Give the required name for your component configuration.




3. Now create a UIBB in the FLUID designer and embed your application window in the UIBB configuration like you see in the screen shot below.


4. Create an application configuration similar ways.



mention the component configuration you created earlier for your application configuration in the configuration. Once you are done with the configuration it is time for a bit of coding.


You need to implement the interface, basically this should be the first step even before you start the component and application configuration.


Once you have done this, all the interface methods gets added to your component controller.

Now go to  process_before_output method in the component controller, this method gets introduced once you implement the interface. Insert the code you in the below screen shot.



In the code we get the singleton instance of the FPM application and fetch the pernr from the memory id created, this memory id key is dynamically generated and hence we need to query the Key and then get the value using it. Now you can use the PERNR to call required functions in your custom application.


As a last step, go to transaction lpd_cust and create an new application in your custom role. Be sure to include the parameter PERNR_MEM_ID in lpd_cust application parameters and in the application parameters of your web dynpro.


Well once you have done this, you should able to see your new application in the application hiearchy and also pick up the clicked PERNR from the standard FPM application and use it in your custom web dynpro application.


Hope this was useful. Any comments/Suggestions are welcome.



If you wish to knock out some of the applications in the team view application heirarchy and customize it as per your requirement, then here is how you do it. It was a bit trickier than envisaged, spent more than sufficient time to figure out and hence sharing with the community.


As most would be aware after Ehp4, SAP has done away with the home page framework and brought in customizing possiblities through launch pad customizations and application/component configuration of Web dynpro applications.


So here is how the application hierachy looks before customization.



Now, if I have to remove some of the applications like Personnel File, Time Management ON Behalf of Employee, etc. then follow the below steps to achieve the result.


As a first step, go to transaction LPD_CUST and then clone your MSS role to ZMSS role. The best approach here is to first create ZMSS role and then copy the required applications from the MSS role.



Click on the copy from other launch pad and then chose MSS EMPLOYEE_MENU. Copy the required applications/folder to the ZMSS.


Now after copying form MSS I have now created my required ZMSS role as seen in the screen shot below.


Now as second step create an Z application configuration for the web dynpro component FPM_OVP_COMPONENT and application HRMSS_HOMEPAGE     ( this step is not mandatory but as better practice clone the configuration )





Now change the role to ZMSS in the application configuration parameters.




it is time to change the PFCG role, as a best practice only work on the clone Z roles and do not change SAP standard roles. Change the applocation config parameter of the Web dynpro application HRMSS_HOMEPAGE to ZHRMSS_HOMEPAGE_1.



One would imagine this should accomplish our task, but unfortunately this does not work. Even though we have assigned the ZMSS role in the configuration and changed the MSS roles.

The Flash application apparently picks up the lpd related config from a different source than expected.

So as a final step we need to change role column entries in the the table THVNAVLPDEVENTS through the view maintenance V_THVNAVLPEVENTS.



Once you have change the Role column entries from MSS to ZMSS you are done, the hierachy now reflects in the team page



May be this is not the perfect approach, but this the way I found .

Thanks for reading the blog and hope this is useful.

Your comments and ratings are an inspiration.



This blog explains how to hide Help Center, Personalization, Map, Directory and Index options in standard Employee Self Service overview screen based WDA.


Following Options are hidden from ESS Overview screen.


1. Help Center 2. Personalization 3. Map 4. Directory 5.Index



To hide above options following steps to be performed.

Step 1: Make a copy of Component Configuration: HRESS_CC_MENU_OVP by following

Open SE80 -> Open WD Component: FPM_OVP_COMPONENT -> Go to Component ConfigurationsOpen HRESS_CC_MENU_OVP-> Start Configurator -> Copy Component give any “Z” Name by following.


Step 2 :  Open copied Configuration Component by clicking start configurator and do the below customizations by following.


Select Main Page -> Go to General Settings section do the changes as per below.

Uncheck checkbox for optionns : "Enable Help" and "Enable Personalization". So that  options : Help Center and Personalization will be hidden from  overview screen.              


Select Main Page -> Go to Toolbar Schema Tab -> Expend UIBB ->Expand ToolBar as per below.

Change Visibility property to “Not visible”. So that options : Map, Directory and Index it will be hidden from overview screen.




Step 3: After completion of above customizations, attach above Component Configuration to Application Configuration by following.

           a) Make a copy of Application Configuration: HRESS_AC_MENU_OVP by following

             Open SE80 -> Open WD Component: FPM_OVP_COMPONENT -> Go to Webdynpro Applications

Open HRESS_AC_MENU-> Expand Application Configurations ->Start Configurator -> Copy Component give any “Z” Name by following


b) Assign custom Configuration [ZHRESS_CC_MENU_OVP_HIDEMENU] to Custom Application Configuration: ZHRESS_AC_MENU_OVP_HIDEMENU by following

Open SE80 -> Open WD Component: FPM_OVP_COMPONENT -> Go to Webdynpro Applications->Open HRESS_AC_MENU-> Expand Application   Configurations  -> Open ZHRESS_AC_MENU_OVP_HIDEMENU -> Start Configurator -> Select Row -> Click on Assign Configuration Name give ZHRESS_CC_MENU_OVP_HIDEMENU in Configuration ID


After doing above changes select ZHRESS_AC_MENU_OVP_HIDEMENU right click on Test. All above options hidden from ESS Overview screen Help Center, Personalization, Map, Directory and Index.

Step 5: Configure above Application Configuration in Portal by following changes will be reflected Portal

               Logon to Portal -> Content Administration -> Portal Content -> Content Provided by SAP ->End User Content ->

               Employee Self-Service Web Dynpro ABAP->iViews   -> Overview

              Copy the Overview change below property Configuration Name to ZHRESS_AC_MENU_OVP_HIDEMENU


Problem Description: I have gone through so many discussions regarding MSS team view access for those managers who do not hold chief position, I thought to give a glance on this that we can get this by doing some configuration changes and with custom Function Module.



Usually, managers can have access to employees not only from his Organization but different organization. The standard Evaluation path is an example to do so, but usually it doesn't meet the requirements so as to enable different possibilities you can use the benefits of OADP.


You can use your custom evaluation paths and FM to get the employees according to the relationship.


To achieve the solution go with the below steps.

1. Create custom evaluation path ‘S-S-P’


Go to -> SM30 -> Enter ‘T77AW’ table and click on Maintain -> Click on ‘New Entries’

SSP Eval Path 1.jpg


2. Check the IMG step

Integration with Other Components -> Business Packages/Functional Packages -> Manager Self-Service (mySap ERP) -> Object and Data Provider -> Organizational Structure Views -> Group Organizational Structure Views.


MSS_TMV_EE is assigned to MSS_TMV_EE_DIR and MSS_TMV_EE_ALL as shown below

Assign Organizational Views.jpg


And then these Organizational Views are defined at IMG step: “Define Organizational Structure Views” as shown below

Organizational Views.jpg

Open the Object Selection view of MSS_TMV_EE_DIR, as we need to customize this Org View, you will find as shown below.

Object Selection View_Before.jpg

Then you can check the rules for Object Selection: IMG Object Provider -> Define Rules for Object selection: Object Selection Rule: MSS_TMV_RULE1


EVALPATH is “SAP_MANG” – Org. Units Managed by persons or users.


This will get only the Org Unit. This won't serve our requirement so we need to customize. In the step 1 you can see the Custom Evaluation Path ‘S-S-P’ which would be useful for our requirement as this will give you all the positions of employees who are reporting directly to the Manager.


In the above screen Rules for Root Objects should be changed to MSS_BIZ_RULE1 as this will get the position and personnel number of a user. The Restrict Object type for this should be ‘S’ – Position.


EVALPATH is ‘SAP_US_S’ - Positions and Personnel Number of a User.


After Customizing Object Selection looks like below.

Object Selection View_After.jpg

MSS_BIZ_RULE1 looks like below

Define Rule for Object Selection.jpg

3. Rules for Navigation Objects should be assigned to ‘MSS_BIZ_RULE2’ and need to Customize

Define Rule for Object Selection1.jpg

Assign our custom


Evaluation path: ‘S-S-P’

Depth of Structure: 2 (up to Level 1) or 3 (up to Level 2)

Function Module: Z_HRWPC_EVAL_PATH


We have to create the Z function module for Object Set. So we will copy the standard FM “HRWPC_EVAL_PATH” (Function module for Object Set) into Z FM “Z_HRWPC_EVAL_PATH” to set all the Positions retrieved through ‘S-S-P’ evaluation path to the OBJECT.


The Restrict Object type for this should be ‘S’ – Position.

Define Rule for Object Selection2.jpg

4. Z_HRWPC_EVAL_PATH Function Module Source Code is as below



We are not going to Change “Rule for Target Objects” it should be ‘MSS_TMV_RULE5’ – Direct Reports.




Login into Portal with Reporting Manager Credentials. You will see the output as shown below where he can able to see his Direct Reportees with his Absence Details.

Direct Reportees with his Abscence Details.jpg

Login into Portal with HOD Credentials. You will see the output as shown below.

Direct Reportees with his Abscence Details 1.jpg

If you don't have an access to login into Portal with HOD are Manager. The alternate way to check the Output or Result is Use the Function Module HRWPC_RFC_OADP_GET_OBJECTS through SE37 Tcode and execute as per the suggestions given by Dhiraj Pednekar in the below link


Thanks for Reading this post ends here. Any comments or suggestions are most welcome.

Going through the blog Exciting Enhacements to ESS Personal Information Profile in Enhancement pack 6 by Sagar Joshi , I came across the BAdi HRXSS_PER_SUBTYPE to control the Read Only mode. In this blog I will demonstrate the implementation of this BAdi to dynamically control the Read Only mode and to add further flexibility I will use a custom feature to determine the subtypes that are to be made Read Only.


Problem Description : Let's say that the customer has requirement as follows :


Employee Group Read only mode for subtypes of Communication
Regular EmployeesBLOG

( The subtypes don't reflect much of the real world requirement but for demo purpose, I chose these subtypes.)


Solution :

The above problem can not be simply solved by checking the "Data must be displayed as read-only" in the "Determining the Active Subtypes and Make Settings” node of SPRO.



Checking the box would simply make the BLOG subtype ReadOnly for all employees.


This is where the BAdi comes to our rescue.


The solution consist of following steps:

- Creating custom Feature "ZZESS".

- Implementing the BAdi HRXSS_PER_SUBTYPE.


Note : The use of custom feature is completely optional and one can just simply code the constarints in the BAdi implementation.I used the feature just to make sure that everytime some constraints are added/modified I don't need to touch the implementation.And feature is something that can be easily maintained by non technical folks also.


The feature ZZESS has been created and maintained as follows :


With PME04 structure , the feature provides you control over all the Organizational Assignment aspects like personnel area,comapny code etc to dynamically set the Read Only mode.


The code snippet to show the implementation of the BAdi HRXSS_PER_SUBTYPE method MODIFY_SUBTYPES :





Now to see the changes in action , let's first assign system username to an employee belonging to Employee Group - Regular Employee and check the Communication Infotype in Personal Profile :

EG - Regular.jpg

As specified in the custom feature ZZESS , the Blog subtype is set to Read Only.


Now, assigning system username to employee belonging to Employee Group - Contractor and checking the Communication infotype in Personal Profile:

EG - Contractor.jpg

The Blog and Facebook subtypes are set to Read Only mode as specified in the custom feature ZZESS.


Communication Infotype in Personal Profile when the system username is assigned to Employee Group other than the above two - say Partner:

EG - Partner.jpg

All the subtypes of Communication infotype are set to edit mode as nothing has been specified in the feature for this Employee Group.



The use of BAdi HRXSS_PER_SUBTYPE makes it real easy to dynamically control the Read Only mode and custom feature addition makes it just more flexible.

        Showing the pop-ups/dialog boxes for information, confirmation etc in WDA HCMPF is tricky. We have to spend some time and also have to understand the HCMPF framework for showing the popups. So I thought its better to have a wiki which could help the community.


         Initially I was under impression that the new WDA HCMPF framework doesn’t support the pop ups but by digging little deep I understood that I was wrong. I realized there are at least two ways to show pop ups. I will go ahead and will explain both the options. You can use what ever you like.



1. Using FPM to show pop up dialog boxes.

As the WDA HCMPF is based on FPM architecture, we can use the underlying FPM methods to show the dialog boxes. We can use the FPM’s OPEN_DIALOG_BOX method to show informational, confirmation and also can design any other custom dialog box as per the requirement. Here we have the required flexibility in designing our own form for popup.


Here is the sample code:

data lo_fpm type if_fpm.

* Get FPM instance

lo_fpm = cl_fpm_factory=>get_instance( ).


"Show the dialog box

if  lo_fpm is bound .

     lo_fpm->open_dialog_box( '<Dialog_box_ID>' ).



Using the passed dialog box id, it will open the respective dialog box.


Let’s see where we need to define dialog box.

        The WDA HCMPF uses the application config ASR_PROCESS_EXECUTE_OVP_CFG to show the new WDA Process and Forms applications. If we take a close look at application config, we will understand how to introduce and add the dialog boxes.


     We need to add our dialog box here. To do this we need to make copy of the application config ASR_PROCESS_EXECUTE_OVP_CFG to ZASR_PROCESS_EXECUTE_OVP_CFG and have to add our required dialog boxes. And then we need to update/configure the launch pad to use the newly created application config for the WDA HCMPF applications.


Let see an example of how to add and configure the dialog box in the application config.


a) Go to the newly created config and click add dialog box:

        In the dialog box, we can show different kinds of UIBBs or even we can have the custom WDA application. I have used the From UIBB with component FPM_FORM_UIBB_GL2 so that in case if we have to show any of the HCMPF form fields etc, it would be easy. Also in case if we have to add any custom buttons/events etc, it would be easy to handle from the HCMPF Generic Service.



b) Set the properties of the dialog box:

        In screen shot we can see different attributes. Through “Button Sets” we can have different types of predefined button to the dialog box.



c) Update the launch pad:

        To use the newly created app config ZASR_PROCESS_EXECUTE_OVP_CFG.

Note: In case if we are executing the application directly from the transaction “HRASR_DT”, we have to modify the url to use ZASR_PROCESS_EXECUTE_OVP_CFG instead of ASR_PROCESS_EXECUTE_OVP_CFG




       This is how popup will look like:



Event Handling:

        Some times, based on the button clicks we might have to perform some actions. So how do we handle the events?


        If we use the default buttons provided by the framework, they just raise the events to close the dialog box and from the HCMPF frame work i.e. from the generic service we will not be able to find which button click was done.


        For handling the dialog box button events, we need to add the required buttons though the design time and associate the buttons with respective user define events. So once we click on the buttons the control would go back to the HCMPF Generic Service and there we can write the required business logic.


      At the end of the business logic, we need to write the code to close the popup which we have opened. It can be done by raising the even FPM_CLOSE_DIALOG which will close the popup.

if lo_fpm is bound.

    lo_fpm->raise_event_by_id( 'FPM_CLOSE_DIALOG' ).




2. Using NEEDS_CONFIRMATION method of HCMPF feeder class

        SAP uses the needs_confirmation method of feeder class to show the confirmation popups. We can use same method for writing the post exist enhancement to show the pop ups for our custom events. Here we can show only informational or confirmation popups.


Let’s see in detail how to show confirmation popups by enhancing the feeder class. Here we are just going to write a post exit that too without any business logic, until we don’t write any business logic, I think it should be ok to enhance feeder class.

a) Implement post exit for IF_FPM_GUIBB_FORM_EXT~NEEDS_CONFIRMATION in the feeder class CL_HRASR00_FPM_FEEDER


Here is the sample implementation.

data: lt_confirmation_text type string_table,

         lo_confirmation_request type ref to cl_fpm_confirmation_request.


if io_event->mv_event_id eq '<event_name>'. "Provide the event name here

      append 'Do you agree?' to lt_confirmation_text.

      create object lo_confirmation_request


                it_confirmation_text   = lt_confirmation_text

               iv_window_title        = 'Agreement '

               iv_button_text_approve = 'I Agree'

                iv_button_text_reject  = 'Cancel'.

      eo_confirmation_request = lo_confirmation_request.

      me->obj->core_object->a_check_fired = abap_true.

      me->obj->core_object->a_data_changed = abap_false.



b)    Raise the event to show popup

        From the generic service implementation, call the FPMs raise event for showing the confirmation popup. Before raising the event, create the user defined event and provide the required implementation in the generic service for that event.

      Here is the sample implementation:

(While raising the event, we are informing the HCMPF framework that event is raised by the HCMPf Form)


        data: lt_params     type         apb_lpd_t_params,

              ls_param      like line of lt_params,

              io_event_data type ref to  if_fpm_parameter,

              lo_event      type ref to  cl_fpm_event.


        ls_param-key = 'MS_SOURCE_UIBB-COMPONENT'.

        ls_param-value = 'FPM_FORM_UIBB_GL2'.

        append ls_param to lt_params.


        ls_param-key = 'MS_SOURCE_UIBB-CONFIG_ID'.

        ls_param-value = '<HCMPF_Fom_Name>'."Need to give the HCMPF Form name

        append ls_param to lt_params.


        ls_param-key = 'MS_SOURCE_UIBB-CONFIG_TYPE'.

        ls_param-value = '00'.

        append ls_param to lt_params.


        io_event_data = cl_fpm_parameter=>create_by_lpparam( it_parameter = lt_params ).


        lo_event = cl_fpm_event=>create_by_id( iv_event_id   = '<event_name>'    "Give the event name

        io_event_data = io_event_data ).


        lo_event->ms_source_uibb-component = 'FPM_FORM_UIBB_GL2'.

        lo_event->ms_source_uibb-config_id = '<HCMPF_Fom_Name>'."Need to give the HCMPF Fomr name

        lo_event->ms_source_uibb-config_type = '00'.


       lo_fpm->raise_event( io_event = lo_event ).


   Upon raising the event, need confirmation gets invoked and there the framework checks to see if this particular event needs any confirmation, depending upon our post exit implementation, it will show the confirmation dialog. Upon clicking the “I Agree” button, the respective implementation in generic service will get called.



   We can refer to following link to know more about the dialog boxes.


         Also from the FPM Developers guide we can find more information about FPM.



We have configured Advance Claims cofiguration in SPRO in ESS area (India Payroll), but still we are unable to see Reimbersement types in dropdown list.


I am on ECC 6.0 and EHP 6.


11-19-2013 5-17-48 PM.png

Appreaciate your responses.




Hi Guys,


We will take example of IT0023 in the below configuration.We can add other Info types(custom/standard) in the same way.


1. Add the desired IT in HRPAD Model



2. Add the Info Type in the Table V_T7XSSPERSUBTYP


Go to SM30.


Add the details of the IT and the Use Case as per the requirement.



3. Go to SE80 and Create an Overview component for Personal Profile Details l in component FPM_LIST_UIBB, example ZHRESS_CC_PER_OVR_PREV_EMP


HINT :- Copy from Other Config. See screenshot below.\



Open the newly created configuration ZHRESS_CC_PER_OVR_PREV_EMP by clicking on ‘Start Configurator’



Select “Continue in Change Mode”



Click on ‘Feeder Class Parameters’




Select IT0023 and click on OK




Save the Changes.




Select Elements to be displayed on Overview Screen for the IT0023






Select All Elements and Click OK.

Save the Changes.



Create a detail screen for Previous Employment detail in component FPM_FORM_UIBB, example


GO To SE80; Open the Web Dynpro Component ‘FPM_FORM_UIBB’



You can copy from other configuration as per below screenshot.




Open the component ‘ ZHRESS_CC_PER_DTL_PREV_EMP’ and change the feeder class parameters as per below screenshot.



Add Child Elements in FORM UIBB Schema and save the changes.








5. Go to SE80Open Web Dynpro Component ‘FPM_OVP_COMPONENT’

Open the Component Configuration ‘ZHRESS_CC_PER_OVP’

Select ‘Main Page’ of the OVERVIEW_SCREEN






Add the LIST Component as per below screenshot and add the Details of the new UIBB.





Create a New ‘Edit Page’ in this configuration as per below screenshot.



Add the Details for Edit Page as per below screenshot.





Open the Component Configuration ‘ZHRESS_CC_PER_OVP’ Go to Overview screen of the Main Page and open the Wire Schema.

Add New Wire for the component configuration ZHRESS_CC_PER_OVR_PREV_EMP as per the below screenshot


Add details for the Wire as per below & Save the Comp Configuration.



Add New Wire for the component configuration ZHRESS_CC_PER_DTL_PREV_EMP and add details as per below screenshot.





7. Implement the BADI – “Change Start Date” NOTE:- By default the education will only show only one record which is valid currently. In case if you don't have a valid record, it won’t show up. To fix/change this behavior i.e. for showing the multiple records you have to implement the BADI- “Change Default Start Date”



8. Previous Employment Details will be available on Portal







1)If you are unable to change the backdated timesheet before the restricted date then follow the following step:

Goto --> Tcode  CAC1 and change the lower limit to the required backdated weeks. This should work unless something is hard coded.


2)If still it is not working then GOTO -->Tcode SMOD --> CATS0003 --> Click on component --> chk the user exit --> check if time sheet data  is hard coded to limit the number of days to 90 days backdated to save the time sheet data.

This would definelty help

Unfortunately,  I have seen generally that there is no proper standard FM provided by SAP where you can get the subordinates of a manager to directly. So, I got curious enough to explore more on this one & started debugging & troubleshooting different set of services like Team Calendar, Team Viewer etc. in backend. And I indeed found one which could be used more realistically for getting subordinates related data.


Although there are other FM's like RH_STRUC_GET  which can also be used, but they are more complicated to use by way of passing input & changing parameters to them.  So, one FM that can be queried very easily & get the required set of data is 'HRWPC_RFC_OADP_GET_OBJECTS'. This FM has been primarily been used as a wrapper FM for most of the services in  MSS viz., Team Calendar , Team Viewer to name a few.



Parameters that needs to be passed to this FM are :-


OBJSEL -> Either of the two values can be passed depending on the business needs.

                     1.  MSS_TMV_EE_DIR -> This will only give DIRECT REPORTS   to the manager , as per the evaluation path of O-S-P.

                     2. MSS_TMV_EE_ALL-> This will give ALL EMPLOYEES  coming under the manager , as per the evaluation path of O-S-P

                    (Both the above parameter values are based on OADP- Object and Data Provider  structures used in MSS)






USER-> Username of the manager stored in info type 0105.



An example to depict the working of this FM is shown from the below Organization Structure .




or str.png






Passing object selection “MSS_TMV_EE_DIR”





Passing object selection “MSS_TMV_EE_ALL”



As you can see, in the last result an additional employee  is outputted as "Bryan Adams" , as he not being the direct employee of the manager.


Hope this blog was helpful for those who usually gets baffled for getting subordinates data of a manager through various discussion forums.






Filter Blog

By author:
By date:
By tag: