1 2 3 5 Previous Next

SAP ERP HCM Employee Self-Service

71 Posts

Overview:

This document explains about hiding buttons in standard business workplace POWL query Inbox application.

Here i didn't explain much about POWL query design related.

 

Requirement:

Hide some buttons in workflow inbox POWL query in business workflow application.

SBWP.PNG

 

Solution Steps:

 

Step 1: First identify the Query ID in t-code POWL_QUERY for which you want to hide the buttons. Here i explained for query Inbox.

SBWP1.PNG

 

Step 2: Navigate to details screen of Inbox entry, here you can see the POWL Type ID mapped for this query in application.

 

SBWP2.PNG

 

Step 3: For this POWL Type ID WF_INBOX Check the class mapped in t-code POWL_TYPE

SBWP3.PNG

 

SBWP4.PNG

 

Step 4: Now, check this CL_SWF_POWL_FEEDER_INBOX class in t-code SE24

SBWP5.PNG

 

In this class, the method IF_POWL_FEEDER~GET_ACTIONS will contain the code for these all buttons as shown below.

SBWP6.PNG

 

Step 5: Create enhancement/exit for this method and comment the button code which ever you want to hide in application.

Here i just hide for the Set to Done button by commenting the code.

SBWP7.PNG

 

 

Output :

Now run the business workplace application, you will not see Set to Done button for Inbox query.

 

SBWP8.PNG

 

In same way other query's can be enhanced.

Overview:

In Leave request application, leave types field will show all the leave types for employee which ever is applicable. It will show the leave types which contains leave quota 0. This document explains how to restrict these 0 balance leave types from leave type drop down list.

 

Requirement:

In Leave request creation, for leave type selection list should display only available quota leave types. It should not 0 balance leave types in list.

 

Solution Steps:

Step 1: Create enhancement to standard class CL_HRESS_PTARQ_LEAVREQ_GUIBBF in method SET_VALUE_HELP

ESS LR.PNG

 

Step 2: Write code before selecting the leave type

ESS LR1.png

 

Step 3: Add below code to avoid 0 balance leave types display in Leave Type drop down list.

 

DATA : lt_accounts TYPE PTARQ_TIME_ACCOUNTS_TAB,
        ls_accounts TYPE LINE OF ptarq_time_accounts_tab,
        lt_attabs_customizing TYPE PTARQ_UIA_ATTABS_TAB,
        ls_attabs_customizing TYPE LINE OF PTARQ_UIA_ATTABS_TAB.
 DATA : account     TYPE REF TO cl_pt_arq_timeaccounts.
 CALL METHOD cl_pt_arq_timeaccounts=>get_instance
     RECEIVING
       result = account.
 CALL METHOD account->get_time_accounts
   EXPORTING
     im_pernr        = MV_PERNR_EMP
     im_begda        = SY-DATUM
 *    im_endda        = '99991231'
 *    im_sel_begda    = '18000101'
 *    im_sel_endda    = '99991231'
   IMPORTING
     ex_timeaccounts = lt_accounts.
 DELETE lt_accounts WHERE REST_POSTED&REQUESTED IS INITIAL.
 LOOP AT lt_accounts INTO ls_accounts.
 IF LS_ACCOUNTS-REST_POSTED&REQUESTED IS NOT INITIAL.
    LOOP AT mt_attabs_customizing ASSIGNING <ls_attabs_customizing> WHERE SUBTYTEXT = LS_ACCOUNTS-QUOTATEXT.
         append <ls_attabs_customizing> TO lt_attabs_customizing.
    ENDLOOP.
 ENDIF.
 ENDLOOP.
 mt_attabs_customizing[] = lt_attabs_customizing[].
SORT mt_attabs_customizing ASCENDING BY subty.

 

OutPut: In Leave request, employee will able to see only quota available leave types in leave type drop down list for selection.

 

 

Note: This is done in EHP5 and above verions.

Overview:

This document explains how to restrict display of no quota balance leave types i.e remaining balance 0.00 in Time Accounts application.

 

Requirement:

In Time Accounts application, it should not display the no quota balance leave types in list.

 

Solution Steps:

Step 1: Create enhancement to standard class CL_HRESS_PTARQ_TIMEACC_GUIBBL for method IF_FPM_GUIBB_LIST~GET_DATA

ESS TA.png

 

 

Step 2: Write below logic in created enhancement.

 

CLASS LCL_ZHRESS_LR_TIMEACCS DEFINITION DEFERRED.
CLASS CL_HRESS_PTARQ_TIMEACC_GUIBBL DEFINITION LOCAL FRIENDS LCL_ZHRESS_LR_TIMEACCS.
*----------------------------------------------------------------------*
*       CLASS LCL_ZHRESS_LR_TIMEACCS DEFINITION
*----------------------------------------------------------------------*
*
*----------------------------------------------------------------------*
CLASS LCL_ZHRESS_LR_TIMEACCS DEFINITION.
   PUBLIC SECTION.
     CLASS-DATA OBJ TYPE REF TO LCL_ZHRESS_LR_TIMEACCS.      "#EC NEEDED
     DATA CORE_OBJECT TYPE REF TO CL_HRESS_PTARQ_TIMEACC_GUIBBL . "#EC NEEDED
     INTERFACES  IPO_ZHRESS_LR_TIMEACCS.
     METHODS:
      CONSTRUCTOR IMPORTING CORE_OBJECT
        TYPE REF TO CL_HRESS_PTARQ_TIMEACC_GUIBBL OPTIONAL.
ENDCLASS.                    "LCL_ZHRESS_LR_TIMEACCS DEFINITION
*----------------------------------------------------------------------*
*       CLASS LCL_ZHRESS_LR_TIMEACCS IMPLEMENTATION
*----------------------------------------------------------------------*
*
*----------------------------------------------------------------------*
CLASS LCL_ZHRESS_LR_TIMEACCS IMPLEMENTATION.
   METHOD CONSTRUCTOR.
     ME->CORE_OBJECT = CORE_OBJECT.
   ENDMETHOD.                    "CONSTRUCTOR
   METHOD IPO_ZHRESS_LR_TIMEACCS~GET_DATA.
*"------------------------------------------------------------------------*
*" Declaration of POST-method, do not insert any comments here please!
*"
*"methods GET_DATA
*"  importing
*"    !IV_EVENTID type ref to CL_FPM_EVENT
*"    !IT_SELECTED_FIELDS type FPMGB_T_SELECTED_FIELDS optional
*"    !IV_RAISED_BY_OWN_UI type BOOLE_D optional
*"    !IV_VISIBLE_ROWS type I optional
*"    !IV_EDIT_MODE type FPM_EDIT_MODE optional
*"    !IO_EXTENDED_CTRL type ref to IF_FPM_LIST_ATS_EXT_CTRL optional
*"  changing
*"    !ET_MESSAGES type FPMGB_T_MESSAGES
*"    !EV_DATA_CHANGED type BOOLE_D
*"    !EV_FIELD_USAGE_CHANGED type BOOLE_D
*"    !EV_ACTION_USAGE_CHANGED type BOOLE_D
*"    !EV_SELECTED_LINES_CHANGED type BOOLE_D
*"    !EV_DND_ATTR_CHANGED type BOOLE_D
*"    !EO_ITAB_CHANGE_LOG type ref to IF_SALV_ITAB_CHANGE_LOG
*"    !CT_DATA type DATA
*"    !CT_FIELD_USAGE type FPMGB_T_FIELDUSAGE
*"    !CT_ACTION_USAGE type FPMGB_T_ACTIONUSAGE
*"    !CT_SELECTED_LINES type RSTABIXTAB
*"    !CV_LEAD_INDEX type SYTABIX
*"    !CV_FIRST_VISIBLE_ROW type I
*"    !CS_ADDITIONAL_INFO type FPMGB_S_ADDITIONAL_INFO optional
*"    !CT_DND_ATTRIBUTES type FPMGB_T_DND_DEFINITION optional .
*"------------------------------------------------------------------------*
     DATA: LT_DATA TYPE PTARQ_UIA_QUOTA_STATUS_TAB_CE.
     IF CT_DATA IS NOT INITIAL.
       LT_DATA = CT_DATA.
       DELETE LT_DATA WHERE REST_POSTED_REQUESTED = '     0.00 Days'.
       CT_DATA = LT_DATA.
     ENDIF.
   ENDMETHOD.                    "IPO_ZHRESS_LR_TIMEACCS~GET_DATA
ENDCLASS.                    "lcl_zhress_lr_timeaccs IMPLEMENTATION

 

Output: It will not display 0 balance quota leave types in list

ESS TA1.png

 

Note: This is done for WDABAP based applications in EHP5/6.

After a rather long hiatus I finally found sometime to logon to SCN, and to my chagrin, I still see my points stuck at 399 , just like Sachin's score on 99. There are times when nobody rewards for the knowledge you post, but that should never deter one from posting new ones. SCN is the backbone for so many developers and consultants, and many cannot imagine a SAP career without it ..haha .

 

Once in a while you feel some change in the wind and think good times are back, life is getting easy, but then happiness is always short lived unless you achieve nirvana. Resting on the laurels and being complacent that atlast we have met every requrement and hit the nail on the head is just a delusion of all developers. As a SAP developer you might ponder why end users are so insistent on things which you might think is trivial and silly, may be, because we are never the end user and fail see it from their perspectives, how simple things can change their mundane work and make life easier for them.

 

Just as I was feeling that the end user training was going as planned, one of users gets a brainwave after seeing the POWL inbox and suggests why should I see all the queries when there are no tasks in those, this makes it difficult to identify and it looks cluttered, he wanted all queries with no task to be removed from his view. By the time I recover from the shot I have another sniper shot from another user with the bullet reading "I want different colors for different kinds of request for the same process", I gather my senses and balance thinking of the golden words "nothing is impossible", some times you need hang on to your hopes. In POWL configuration we do have an option to assign POWL queries to particular users or based on roles. With no stone left unturned I could not see how this particular requirement can be met from powl cockpit.

 

In one of my earlier blogs I have explained how you can categorize the POWL queries based on the text when you have the same taskid, here in this short blog we will see how we can make the powl link matrix neater and the powl rows colorful. To meet these requirements we need to get out of the cockpit and work on the engine, to nail the first one, find out the POWL component for the MSS inbox, get into the actual component, the POWL_UI_COMP. The hyperlinks are rendered dynamically in the view MASTER_MATRIX in the active queries section.

 

BLOG_PIC1.JPG

 

Create an enhancement in the form of post exit on the WDMODIFYVIEW method, Before you goahead with the coding find out the UI structure from the web dynpro technical help. As you can see below, the links are rendered encapsulated in Groups and Transparent containers, so we need to drill down the UI element to get a handle to that link. Once you know the structure, it just takes a few lines of code to achieve your requirement.

 

BLOG_PIC2.JPG

 

Sample code as below. Just read the text view text to detect any string with "(0)", and hide it.

BLOG_PIC3.JPG

 

POWL before  the changes looks cluttered with too many links appearing with Zero tasks.

BLOG_PIC4.JPG

 

POWL after modifcation, looks neater and easier to work with lesser and relevant links on which user has to work on.

 

BLOG_PIC5.JPG

 

For the second requirment of colouring the POWL rows based on request type for the same process we need to initially have the text of request as a part of the work item text, which can be easily accomplished by having the request type as part of the workflow container and then mapping the same on to the work item text. Once we have done this, there is a bit of enhacement which needs to be done on the feeder. the easiest way to find the feeder is to get it from the powl cockpit for the application ID MANAGER_MSS_INBOX_2 or go through the technical help, the feeder for MSS inbox is CL_IBO_INBOX_FEEDER_WI.

As you most of you will be aware that POWL is basically an ALV with all the added functionality, so to manipulate it we need to alter its field catalog. So in the method READ_CUST_FIELDCAT of this class add another column named COLOR to the fieldcatalog, and make this COLOR as the color reference field by passing the column name to  color_ref field of the field catalog.

 

In the method IF_POWL_FEEDER~GET_OBJECTS it gets all the work items related to the query this could be the ideal place to check the work item text and then manipulate the color. Here you can validate the string for particular value and assign required color by passing an integer value to the COLOR column, you can pass up to value 19 to get different colour variations. The color variations can really be helpful for the user to identify the priority tasks based on the request type for the same process.

 

Row colors based on request type text.

BLOG_PIC6.JPG

 

Hope this stuff is useful to someone, somewhere, in some project , and thanks for reading. And yes my points has passed the 399 jinx after this blog.

 

raghavendra

Overview:

This document explains how to display the part appraisal documents in MSS POWL application instead of ESS POWL application for part appraiser.

 

Identification/Issues in standard:

In Standard, POWL will show all appraisal documents for part appraiser in employee appraisal documents powl application instead of approver powl applications

 

Requirement:

All appraisal documents for approval it should show in approval i.e MSS POWL application for part appraiser.

 

Solution Steps:

Create enhancement to standard function module HRHAP_RFC_DOCUMENT_GET_LIST.

 

Write below logic in function module before call function  HRHAP_DOCUMENT_GET_LIST_XXL

 

DATA: wa_hrhap      TYPE hrhap,
       ls_documents type hap_s_documents.
   IF lt_appraisees is not initial.
     refresh: lt_others, lt_part_appraisers.
   ELSEIF lt_appraisers is not initial.
      lt_part_appraisers = lt_appraisers.
      lt_others = lt_appraisers.
ENDIF.

MSS PMS.PNG

 

Output:

Part appraiser should be able to view all appraisal templates in MSS POWL application for approval instead in ESS POWL application

Overview:

This document explains how to provide the option to create requisition request as section manager for responsible organizational units.

 

Identification/Issue:

In recruitment, from MSS role only manager who had chief position (012 – Relationship) can create the requisition request. But as a section manager can’t able to create any requisition for the responsible or his department vacant positions.

 

Requirement:

Section manager should be able to create the requisition request for his responsible organizational units.

 

Solution:

  • Create custom relation ship
  • Create custom evaluation path
  • Create custom OADP structure to display the positions of responsible organizational units
  • Link the custom OADP view with standard application HRRCF_C_POSITION component

 

Step 1:

Create a custom relation ship Z12.

MSS RERS.PNG

 

Step 2:

Create custom evaluation path

MSS REEP.PNG

 

Step 3:

Configure OADP views, refer the sap help document for creation/configuring the OADP in MSS SPRO nodes.

Here i configured custom organization views to display the vacant positions from responsible organizational units.

MSS REOV.PNG

 

Step 4:

Create enhancement to standard webdynpro HRRCF_C_POSITION component

 

MSS REPC.PNG

 

Create post exit to WDDOINT method and write below code.

MSS REPCC.PNG

 

 

METHOD _PST_006EI3D4RSSMF3YBN0EMH11LZ . "Exit of WDDOINIT (in ZHRRCF_C_POSITION )
*  DATA: LR_OADP_USAGE TYPE REF TO IF_WD_COMPONENT_USAGE.
*
** create oadp component
*  LR_OADP_USAGE = WD_THIS->WD_CPUSE_OADP( ).
*  IF LR_OADP_USAGE->HAS_ACTIVE_COMPONENT( ) IS INITIAL.
*    LR_OADP_USAGE->CREATE_COMPONENT( ).
*  ENDIF.
   DATA : LV_DEPTMGR TYPE C,
          LV_SECMGR TYPE C,
          LV_HRAM TYPE C,
          LV_OBJID TYPE SOBID.
   DATA : LV_UNAME TYPE SY-UNAME,
*        lv_name TYPE ESS_EMP-NAME,
          LV_POSID TYPE ESS_EMP-POSITION.
   CALL FUNCTION 'HR_GETEMPLOYEEDATA_FROMUSER'
     EXPORTING
       USERNAME                  = SY-UNAME
       VALIDBEGIN                = SY-DATUM
     IMPORTING
*     EMPLOYEENUMBER            =
*     ORGUNIT                   =
       POSITION                  = LV_POSID
*     RETURN                    =
     EXCEPTIONS
       USER_NOT_FOUND            = 1
       COUNTRYGROUPING_NOT_FOUND = 2
       INFTY_NOT_FOUND           = 3
       OTHERS                    = 4.
   IF SY-SUBRC EQ 0.
** check is hradmin
     SELECT SINGLE SOBID INTO LV_OBJID
        FROM HRP1001 WHERE OTYPE EQ 'S'
                     AND   OBJID EQ LV_POSID
                     AND   PLVAR EQ '01'
                     AND   RSIGN EQ 'A'
                     AND   RELAT EQ 'H12'
                     AND   ISTAT EQ '1'
                     AND   BEGDA LE SY-DATUM
                     AND   ENDDA GE SY-DATUM.
     IF SY-SUBRC EQ 0.
       WD_THIS->ORGVIEWGROUP = 'MSS_POS_SEARCH2'.
     ELSE.
**     check is section manager
       SELECT SINGLE SOBID INTO LV_OBJID
          FROM HRP1001 WHERE OTYPE EQ 'S'
                       AND   OBJID EQ LV_POSID
                       AND   PLVAR EQ '01'
                       AND   RSIGN EQ 'A'
                       AND   RELAT EQ 'Z12'
                       AND   ISTAT EQ '1'
                       AND   BEGDA LE SY-DATUM
                       AND   ENDDA GE SY-DATUM.
       IF SY-SUBRC EQ 0.
         WD_THIS->ORGVIEWGROUP = 'MSS_POS_SEARCH1'.
       ELSE.
**     default department manager
         WD_THIS->ORGVIEWGROUP = 'MSS_POS_SEARCH'.
       ENDIF.
     ENDIF.
   ENDIF.
ENDMETHOD.


 

 

Step 5:

Maintain the relation ship Z12 for section manager position to roganization unit for which and he is responsible.

Once it's maintain, section manager can see all positions from organizations in MSS Requisition form position select search option.

 

MSS RM.PNG

 

Output in Portal:

Section manager shod be able to view positions from organization units in select position search list for MSS Requisition creation form.

 

MSS REPS.png

 

MSS PSL.png

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.

1.png

 

 

 

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

2.png

 

 

 

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

3.png

 

 

 

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

4.png

 

 

 

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.

6.png

 

 

The emergency application opens in the side panel.

7.png

 

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

1.png



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

2.png



Placing a break as shown:

3.png



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

5.png



Field is hidden as shown in HRTMC_SHORT_PROFILE.

7.png



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.

 

U.jpg

 

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.

 

10.jpg

 

 

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

11.jpg

 

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.

1.jpg

 

 

 

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

2.jpg

 


Methods: IF_FPM_GUIBB_LIST~GET_DEFINITION

 

Modify ET_FIELD_DESCRIPTION for GBDAT and Set VISIBILITY as 01.

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

3.jpg

 



Now enhance Methods: IF_FPM_GUIBB_LIST~GET_DATA

 

Modify LT_CT_DATA

4.jpg

 

 

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

5.jpg

 

 

 

Now, the field GBDAT is hidden in Overview Screen

 

6.jpg

 

 

 

Detailed Screens:

 

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

 

In method, IF_FPM_GUIBB_FORM~GET_DEFINITION, for ET_FIELD_DESCRIPTION change visibility of GBDAT to 01 from VISIBILITY

7.jpg

 

 

In method, IF_FPM_GUIBB_FORM~GET_DATA, modify CT_FIELD_USAGE. Change VISIBILITY to 01 for and FIXED_VALUES to X for GBDAT.

8.jpg

 

GBDAT is hidden in detailed screen also.

9.jpg

 

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:


1.jpg

 

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.


2.jpg



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

3.jpg



In LS_HIER_DATA, BOX_DATA contains employee related info.

4.jpg



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

 

Notes:


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.


G N

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

 

Background1.jpg

 

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

 

 

 

Background2.jpg

 

Select your image and click on Open button.

 

Background3.jpg

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.

Actions

Filter Blog

By author:
By date:
By tag: