Enhancements/BADIs for ESS/MSS

Here are some of the useful enhancements/BADIs we implemented during an ESS/MSS implementation for one of our clients. 

Client’s Wish (or demand): I want my employees to be able to use an effective date that’s in the past while creating their dependents on ESS

Consultants Wand: BADI HRXSS_PER_BEGDA 

Implement DEFAULT_DATE method of this BADI. This method will allow you set the required date based on the following parameters – country grouping, personnel number, infotype, subtype. This will allow us to define the rules for specific infotype/subtype based on the country grouping, employee or any other attributes of the employee.

You have to set the BEGDA (Start Date) parameter of the method to manipulate the effective date requirements.

 E.g. Check if infotype is 0021 and set the BEGDA to 01/01/2010. This will allow the employees to back date the effective date to as far as 01/01/2010.

Clients Wish (or demand): I want to run a regular or bonus pay in advance but I don’t want my employees to see their salary statements until the check/pay date.


Implement PROVIDE_FILTERED_RGDIR method of this BADI. This method will allow us to restrict pay statements viewed based on the country grouping or based on any other employee attributes. All the pay period results (RGDIR entries) for the concerned employee are available via import parameter IM_IN_RGDIR. 

Browse through the existing pay results in IM_IN_RGDIR and copy the relevant pay results to EX_FILTERED_RGDIR parameter by using pay date field, or just copy existing pay results to EX_FILTERED_RGDIR parameter and delete the unwanted results from this. E.g. delete pay results where pay date is greater than current date.

Note: There are few other methods of this BADI which are useful to restrict print button visibility, to control the overview table for pay statements etc. Please refer to SAP’s documentation for this BADI to know more about the rest of the methods.

Client’s Wish (or demand): I don’t want employees in our division A to see an option for maintaining their off-cycle bank account.


Implement or enhance MODIFY_SUBTYPES method of this BADI. Following parameters (Country grouping, Personnel number & Info type) are available for restricting the requirement to specific employees. This will allow us to restrict the subtypes of an info type based on country grouping and any attribute of the employee.

SUBTYPES parameter of this method will get the list of subtypes for the concerned info type. Delete the unwanted subtypes from the SUBTYPES table for the required country grouping/group of employees. This will restrict the employees from accessing these subtypes.

Note: ECC 6.0 EP4 – this is not a multi use BADI so there can be only one active implementation at a time. If SAP has a standard implementation for this BADI then we need to enhance this standard implementation as per client’s requirement.

Client’s Wish (or demand): Any changes employee makes to their bank account information or W4 information during middle of the pay period should be effective from the next pay period start date.

Consultant’s Wand: Enhancement Spot HRPAD00INFTYBL

This enhancement spot from SAP is equivalent to HRPADINFTY00 BADI or the PA info type user exits PBAS0001 and PBAS0002. However the new enhancement spot supports the decoupled info type frame-work of SAP.

In order to implement custom info type validation/update from applications based on decoupled framework (E.g. ESS) we need to implement the new enhancement spot. Following methods are available for this enhancement.

INSERT_COMPUTATIONS – implement this method for new info type records. Useful for handling custom validations and/or derive dependent values based on user input.

MODIFY_COMPUTATIONS – implement this method to handle and custom requirements during an info type update.

DELETE_COMPUTATIONS – implement this method to handle any custom requirements during deleting/delimiting of an info type record.

INITIAL_COMPUTATIONS – implement this method to default values on the ESS screen for the specific info type.

Please refer to the documentation of the enhancement spot for additional details on the parameters for each of these methods.

Client’s Wish (or demand): I want FSA plans to be created as annual elections instead of 12/31/9999 end date

Consultant’s Wand: Enhancement Spot PBEN0038

Standard SAP creates FSA plans on info type 0170 with end of 12/31/9999. If you want these FSA plans to be saved as annual elections then implement the method SET_DATES of this enhancement. Set the parameters PROCESS_BEGDA and PROCESS_ENDDA as per the client requirements.

E.g. Set PROCESS_ENDDA to 12/31/ of the current plan year.

Client’s Wish (or demand): I want to use a custom workflow for Employee Salary Verification form

Consultant’s Wand: Enhancement Spot HRPADUS_EMPSAL_0001

Implement the method SET_WORKFLWO of this enhancement spot. Set the following parameters.


OBJID = Workflow id of the custom workflow

STEXT = Description of the salary verification email notification.

Client’s Wish (or demand): I don’t want to display top ten courses on the learning page or I want to update the list of top ten courses.


Implement the method GET_LIST of this BADI. Leave this implementation blank to remove the list of top ten courses or modify the list of courses to change the standard list of top 10 courses.

This entry was posted in Code to Your Mother, Talk Techie to Me. Bookmark the permalink.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s