Hierarchy
⤷ PY-DE-PS-VA (Application Component) Pension Administration
⤷ P01PBSVAVG_IMG (Package) HR PAdm: Public Sector Pensions Act (IMG)
IMG Activity
ID | HR_PBS_01_VG_VA_01 | BAdI: Calculation of Dynamic Pension Value and Logging |
Transaction Code | S_ELN_16000016 | (empty) |
Created on | 20050111 | |
Customizing Attributes | HR_PBS_01_VG_2_2 | Pension Calculation (Optional Activity / Non-Critical) |
Customizing Activity | HR_PBS_01_VG_VA_01 | BAdI: Calculation of Dynamic Pension Value and Logging |
Document
Document Class | SIMG | Hypertext: Object Class - Class to which a document belongs. |
Document Name | HRPBSDE_DYN_RENTE |
Use
When you calculate a pension equalization payment in Pension Administration, you may have to take account of imputations in accordance with Section §55 of the German Public Sector Pensions Act (BeamtVG).
If a pension insurance institution has to impute a fixed pension for a pension equalization payment, the predefined pension amount must be converted into a dynamic pension value.
This conversion is done in accordance with the rules defined by the pension insurance institution. However, a family court may specify alternative conversion rules here.
Due to the large number of variants, it is not possible to provide all possible conversion rules in one general delivery.
Therefore, in this IMG activity, you can use the Business Add-In (BAdI) Calculation Dynamic Pension Value and Logging (HRPBSDE_DYN_RENTE) to convert fixed pension amounts in accordance with the payroll number.
You can also use the BAdI HRPBSDE_DYN_RENTE to:
- Calculate the dynamic pension amount
- Provide the information required to create a notification
The interface for the BAdI HRPBSDE_DYN_RENTE looks as follows:
Importing
-> I_PERNR Personnel number
-> I_DATE Calculation key date
-> I_CALCTIME Calculation time
-> IS_P0326 Infotype for imputation §55 (0326)
-> I_CURRENCY Currency
-> IS_T5D8S Payroll number
-> I_MSG_HANDLER Message handler instance
Exporting
<- E_P0326_BETRG Dynamic pension amount
<- ES_DYN_RENTE Structure for conversion to dynam. pension
<- E_IS_OK Message handler switch
Changing
<-> CT_RESULT_ID Calculation results (for notification)
You call the BAdI HRPBSDE_DYN_RENTE in the method CL_HRDEPBSCA_P55->CALC_ANZURECHENDE_RENTE after the system converts the currency and outputs the payroll number and ID number within the loop through all pensions.
Once the BAdI is implemented, the name of the BAdI implementation called, the old (fixed) pension amount, and the new (dynamic) pension amount are logged.
The log tables (CT_CALC_TIME, CT_RESULT_ID) are transferred as local tables. Note that all of the pensions must be processed before the local tables are attached to the actual tables. This ensures that the correct logging sequence is retained. Any customer-defined logging is output as an attachment after the standard logging.
For customer-specific logging within the BAdI, you can use the standard SAP tables T7PBSCA2A (Calculation Times) and T7PBSCA2B (Calculation Results). To define new calculation times and results, you can use the customer namespaces 9*, X*, and Y*.
To display the calculation, you can create your own customer notification, which you can output as an attachment to the calculation for the pension equalization payment. As described above, the information required for the notification is written to the relevant tables in the NO cluster.
Requirements
Standard settings
The standard delivery does not contain any implementations.
Activities
If a family court requires you to convert a fixed pension value into a dynamic value, you must implement the BAdI HRPBSDE_DYN_RENTE:
After calling up the IMG activity, a dialog box appears, in which you can enter a name for the implementation.
If you have already made other implementations for this BAdI, another dialog box appears, in which the existing implementations are displayed. In this case, choose Create, and proceed as follows:
- In the dialog box, enter a name for the BAdI implementation in the Implementation field, and choose Create.
The screen for creating BAdI implementations is now displayed.
- Enter a short text for the implementation in the Short text for implementation field.
- From the tab index, choose Interface.
The Name of implemented class field is already filled on the tab page, as a class name was automatically assigned to the implementation when you named it.
- Save your entries, and assign the implementation to a development class.
- Place the cursor on the method, and double-click to enter method processing.
- Enter the code for the implementation between the statements
method <Interface name> ~ <Name of method>
andendmethod
. - Save and implement your code. Return to the Edit Implementation screen.
- Save the entries on the Edit Implementation screen.
Note: You can also create an implementation, and then activate it at a later time. In such a case, end the processing stage at this point.
- Choose Activate
The code you stored in the method will be run when the application program is executed.
Example
Business Attributes
ASAP Roadmap ID | 204 | Establish Functions and Processes |
Mandatory / Optional | 2 | Optional activity |
Critical / Non-Critical | 2 | Non-critical |
Country-Dependency | I | Valid for countries specified |
Maintenance Objects
Maintenance object type | E | Business Add-In - Definition |
History
Last changed by/on | SAP | 20050111 |
SAP Release Created in | 300 |