Purpose:
When you are posting one FI document or editing one FI document item, you will find some fields are not editable or invisible. You want to know the reason.
Overview:
Each field matches one element in SAP screen and you can check it with SE51.
There are four modification groups in SE51 for each element which will control the visibility and changeability:
- field status settings,
- internal adjustments of the field properties within the program
- regarding TBAER settings (0B32)
- internal adjustments of the field properties within the program
Group 1 is controlled by field status group defined in relevant master data (G/L account/Vendor/Customer).
Group 3 is controlled by entries in OB32. You can add or delete entries for some fields to control the changeability with OB32.
If there is value in Group 3 or Group 4, there must be internal logic implemented in the program. You need to debug in PBO of the relevant screen:
- Usually there is one subroutine which name looks like “dynpro_modifizieren” or similar name. Please set breakpoint at it and debug inside (F5)
- You will find one or more loop statement for screen object as below. You can set watch point for field Screen-name and track the field you want to check.
LOOP AT SCREEN.
CHECK screen-group1 NE space
OR screen-group2 NE space.
PERFORM zeile_modifizieren
USING screen-name screen-group1 screen-group2
screen-group3 screen-group4
CHANGING screen-input screen-output screen-required
screen-invisible.
*------ Feld Modifizieren ---------------------------------------------
MODIFY SCREEN.
ENDLOOP.
There are 3 variables to control each screen element:
- Screen-input
- Screen-output
- Screen-invisible
Value “0” means false and value “1” means true.