Skip to Content

You have a PO report and wants to drill in to each PO in enjoy transaction code ME23N. This is usually not possible, and most of you will just use ME23 to display.

I will explain how to do this with ME23N.

Step 1: SQ02

a) Create a infoset e.g. MM_DISPLAY_PO, and name your infoset.

b) You select Direct Read of table EKPO.

c) You should have PO and Item in your field group.

d) Under “Extras” tab, create a code.

e) Put in below codes:

            i_ebeln = EKPOebeln
            i_ebelp = EKPOebelp
            i_enjoy = ‘X’
            OTHERS  = 1.

f) Save code, infoset and generate.

e) Assign this infoset to a dummy user group. E.g. IT_DUMMY

Step 2: SQ01

a) Go to your dummy group.

b) Create a query e.g. MM_DISPLAY_PO and reference to your new infoset above.

c) Have the 2 available fields Purchase Order and Item in your selection screen and list field under Basic list.

d) Save your query and try it out with some PO number in your selection screen. You should be able to go to the respective PO.

Step3: SQ01

a) For your PO report in your main query group, do a report assignment to the dummy query group and query you have created above. This is found in change mode –> menu –> Goto –> Report assignment. Fill in the dummy group and query you have from above and save in the pop up box.

b) Save your main PO report query.

c) Run your main report and execute it. when you double click on the respective PO line, you should now be able to see ME23N with the respective PO!!!

To report this post you need to login first.


You must be Logged on to comment or reply to a post.

  1. Former Member



    Also worth mentioning, the code goes under “Record Processing” and not “Free Coding”. I had a fun hour learning that.

  2. Jörg Sauterleute

    a colleague just showed me an alternative:


    set user-parameter ENJ_CALL_ME23N = X (in SU01)


    … and than you can use old ME23 in report assignment (SQ01)

    1. Former Member

      A simple and excellent solution.  So by default, SAP passes the correct parameter to the PO field when the old ME23 is assigned. We then bypass to the new ME23N via the user parameter.


Leave a Reply