So we have standard infotype which is not shown in PPOME transaction. We want to add standard infotype to PPOME tab to help users enter data. Let’s take infotype 1039 “Shift group” for our example. Usually, we use it for shift planning in time management (transaction PP61). It’s recorded for Organizational units (object type “O”). So it’s easier to enter this infotype in PPOME than in PP01 as SAP advise.
There are three steps to make it happen. We need to create a new screen, it’s logic and enter it in customizing tables.
Three steps to add standard infotype to PPOME or PPOSE tab
The first step is to create a new screen and it’s logic like PBO (process before output) and PAI (process after input). There are two options: break standard module pool MPxxxx00 and add screen 9000, or to write your own screen. We don’t want to crack standard solution as it requires Object Key from SAP Marketplace, so let’s stick with our custom screen. Open SE38 transaction and copy function group HRFPM_OM_DETAIL_SCREENS to our own. Open it and change screen logic to needed. Thus we change screen 0300 to fit our 1039 infotype fields. Activate it.
Step number two. Customizing. Open view T77OMTABUS in the SM30 transaction. In tab definition create a new tab, but leave fields ‘Infotype Specific’ empty. It means we have our own programme to handle screen processing. If you tick checkbox system will search for screen 7000 in module pool MPxxxx00.
So we’ve created a tab for a new infotype. Now we need to specify this specific tab for O objects. On the same screen choose ‘Tab Page in Scenario for each Object Type’. Create a new record for an OME0 scenario: object type ‘O’, our tab, sequence. Here what I’ve: OME0 O ZIT1039 18 SAPLZ_HRFPM_OM_DETAIL_SCREEN 0300 ZRH_OM_DETAILSCREEN_ICONS.
If we want to show nice icon in infotype header, then copy standard FM RH_OM_DETAILSCREEN_ICONS into own, add CASE for your tab add write this code:
icon_name = icon_checked.
call function 'RH_OM_PP01_INFTY_CHECK'
infty = '1039'
icon_name = icon_name.
Save and check.
Don’t forget to include icon pool into your code: