ESS Personal Information UI enhancement without modification
Tuesday, March 24, 2009 |
1. Infotype screenstructure enhancement
First of all you need to determine the screenstructure for the Infotype you want to enhance. Therefor call transaction SM30 and analyse table view V_T588UICONVCLAS.Figure 1: screenstructure and convertingclass assignment
Figure 2: Modelclasses
Figure 3: Function Module "HRXSS_PER_EDIT_P0006_DE"
Once you have added your custom field, the structure could look like in figure 4.
If you do not need to add a new custom field to the front end, but just an already existing field of the Infotype record, you do not have to do anything at this point.Figure 4: Structure "HCMT_BSP_PA_DE_R0006"
Your Server where the Web Dynpro ESS applications are deployed to have to be restartet each time you add/remove/change a custom field!
Alternativly use the aRFC Metadata Invalidation tool, provided with NW 7.0 SPS 10+ and NW 6.40 SPS 10+
2. Implement BAdI "HRPAD00INFTYUI"
The screenstructure we have currently enhanced does represent the data which is available during runtime at the ESS WD Frontend Application. Having the data available at the frontend isn't sufficient at all, so we have to somehow map the data to the backend infotype record datastructure. This is done using the BAdI HRPAD00INFTYUI. This BAdI is part of the New Infotype Framework (NITF) which decouples the UI (User Interface) from the business logic. More about decoupled Infotypes can be found at the SAP Online Help Developing an Infotype in Personnel Administration -> Infotype Concept -> Decoupling Infotypes.Figure 5
- IF_EX_HRPAD00INFTYUI~INPUT_CONVERSION: Converts the data from the frontend to the backend datastructure. If you want to enter data at the frontend and want the data be available at the backend as well, this method has to be implemented.
- IF_EX_HRPAD00INFTYUI~OUTPUT_CONVERSION: Converts the data from the backend to the frontend datastructure.
Figure 6: BAdI HRPAD00INFTY
You can use the Converting Classes from tableview V_T588UICONVCLAS as an implementation example. (E.g.: CL_HRPA_UI_CONVERT_BASIC)
3. ImplicitWeb Dynpro UI Personalization
First of all, the Web Dynpro UI personalization does only work if your Web Dynpro application is embedded into a Web Dynpro iView (Web Dynpro Page Builder) and runs in a Netweaver Portal 7.0 and above.More information about the Web Dynpro personalization can be found at the SAP Help: SAP Online Help
To perform the UI personalization, you have to have at least the Portal Content Administrator role assigned to your user.Adding a customer enhancement field
Open an ESS Personal Data iView in preview mode (e.g. Address iView)Figure 7
On the left container, choose the Transparent Container where you want your new customer field to be added.
Figure 8
Figure 9
Figure 10
But you could also select other UI Element types like Drop Down list and Radio Button Group as shown in figures 10 and 11
Figure 11
Figure 12
Figure 13
Figure 14
Useful Information
As the ESS applications use the road map patter and you want to have your customer field shown on every road map step you have to manually add your customer field to each road map view.
To support different languages, you have to manually add you customer field to each iView of the respective language.
4. Translations
Every UI personalization does generate a new property of the object (iView/Page). These new properties can easily be translated with the Portal-Translation tool.5. Restrictions
Datatype restrictionDatatypes for you new customer fields you add to the include structure can not be a structure and not an internal table.
Figure 15
Figure 16
The BizCard is the Overview of existing records for different subtypes you see when you enter one of the Personal data ESS applications.
Figure 17
Lets say we have 2 Subtypes defined. Each subtype has e.g. for the field COMNR a different value. (See figure 18,19)
Figure 18
Figure 19
Figure 20
Figure 21
0 comments:
Post a Comment