FIN Travel Management, SAP FI, SAP FICO, SAP

How to debug the Menu Item’s status during FI posting

Issue description

Sometimes during FI postings, we find the menu item’s status are disabled or enabled which differs from our expectation.

Below is an example, the item in menu “Document->Park” is disabled during FI posting.

FIN Travel Management, SAP FI, SAP FICO, SAP

Investigation Steps

1. First, we check the program screen and the GUI status via menu: System->Status.
In the SAP Data tab we’ll see the following information:Note: There’re 2 ways to get the GUI status value.
> from the system status screen.
> from the debugging (We’ll introduce it later)

  • Program Name
  • Screen Number
  • GUI status

FIN Travel Management, SAP FI, SAP FICO, SAP

2. Then we have to go to the flow logic of the screen. Generally speaking there’re two ways we can see the flow logic of the related screen
> Double click the “Screen number” field as descripted in step1
> In SE51, we input the program name and screen name

3. Find the module which is used for setting up the status of the menu in the PBO (process before output) part. In our example the module name is “STATUS_SETZEN_U”

FIN Travel Management, SAP FI, SAP FICO, SAP

Note:
Usually, the module name starts with “STATUS_SETZEN”. It can be STATUS_SETZEN_U, STATUS_SETZEN_Z, STATUS_SETZEN_W and STATUS_SETZEN_1005, etc. It depends on different screens. Or you can just search for a module contains characteristics ‘STATUS’ ”. Like in FV50, FV60& FV70 the module is “status”. One principle we should remember is: a module in the screen which is used for collecting the menu item’s code into an internal table called “EXCTAB” which is to say: the module locates in PBO and its functionality is to deal with table “EXCTAB”, then this module is our target!

FIN Travel Management, SAP FI, SAP FICO, SAP

4. Drill into the module. Usually, there should be a FORM called “status_setzen” under the module “STATUS_SETZEN*”.

FIN Travel Management, SAP FI, SAP FICO, SAP

5. Drill into this form and we’ll see another FORM “EXCTAB_FUELLEN”, we can set a breakpoint here to see the run time vaule for variable “STATUS”.

The usage of this form is to get the menu items into table “EXCTAB” all the items in this table will have status Disabled in the screen.

FIN Travel Management, SAP FI, SAP FICO, SAP

Note: if you don’t know what the target FORM is, just search it in the program with string “EXCTAB” as there’s always a form which collects the menu items’ code into table EXCTAB. (like in FV50/60/70, under module “Status” there’s a form called “set_exctab”, when we drill into this form to see the code, it’s collecting menu items’ code into table “EXCTAB”

FIN Travel Management, SAP FI, SAP FICO, SAP

6. Find the value of “STATUS” in the debug mode. Here we get the value “ZBV”

FIN Travel Management, SAP FI, SAP FICO, SAP

7. After getting the value of “Status”. In SE80, we input the program name and search a folder called “GUI Status”, under this folder we’ll find the value we get during  the debugging for “STATUS”: In our example it’s “SAPMF05A->GUI Status->ZBV”

FIN Travel Management, SAP FI, SAP FICO, SAP

8. The next step is to find the “Code” value for the menu, here we can see the Code value for menu “Park” is “BP”

FIN Travel Management, SAP FI, SAP FICO, SAP

9. Technically speaking, those menu item with disabled status are stored in table “EXCTAB”.Then, we can trace the code to see which part code add those menus into the table “EXCTAB”. In our example it’s ”PERFORM EXCTAB_FUELLEN”

FIN Travel Management, SAP FI, SAP FICO, SAP

Here we can see the “BP” code is added to the “EXCTAB” table by note.

Leave a Reply

Your email address will not be published. Required fields are marked *