ESDUS, ESRUO - MM settings table - Part 2/3
ESDUS table keeps parameters mostly for MM transactions, here is the list of t-codes for which I found some entries inside ESDUS:
- IA05
- MB24
- MB25
- MB51
- MB52
- MB59
- MB5TD
- ME21N
- ME22N
- ME23N
- ME25
- ME2K
- ME32K
- ME3K
- ME51N
- ME52N
- ME53N
- ME54N
- ME55
- ME56
- ME57
- ME58
- ME5A
- ME5F
- ME5K
- ME5W
- ME80AN
- ME80FN
- ME80RN
- MIGO
- MIRO
- ML81N
- SA38
- SE38
ESDUS, ESRUO - MM settings table - Part 1/3
Let's discus following scenarios with MM standard transactions:
When you open one of the MM t-codes like ME22N, ME51N or MIGO you see that always you got on the screen one of the latest open document there. Sometimes not last but one of the lasts and you want to make it always last.
You create MM documents using BAPI and you want that next time you open MM t-code which is used to display/edit this document then your document appears on the screen (of course if in the meantime user haven't created anything new)
You have created your own transaction to handle standard process, like creation of purchase orders or purchase requisitions. This transaction is used only in some special occasion like only in case of account assignment category is equal to 'A'. In such case for all documents which are created by your Z-transaction you've set up in user-exit that when standard transaction is called, then you leave it to your Z-transaction. In this case often MM transactions remembers last opened document, which was created by Z-transaction and at each run it will leave to it, so you want to clear the info about last called document from standard t-code.
You want to clear some default settings for the user (or set them) for standard t-code. This could be default value for some fields or toggle status of the section (for example header always expanded, items always collapsed.
- ESRUO (MM: Recently Used Objects)
- ESDUS (MM: Dynamic User Settings)
- ES_READ_USER_OBJECTS
- ES_APPEND_USER_OBJECTS
- ES_DELETE_USER_OBJECTS
- ES_SAVE_USER_OBJECTS
- ES_READ_USER_SETTINGS
- ES_APPEND_USER_SETTINGS
- ES_SAVE_USER_SETTINGS
- ES_DELETE_USER_SETTINGS
Enhanced MB51 Part 6 - ZMB51 program
types: begin of t_alv.
include type t_list.
types: dispo like marc-dispo,
ekgrp like marc-ekgrp,
verid like blpk-verid,
spart like mara-spart,
bklas like mbew-bklas,
rows type epsssrows,
vendor_name type mepo_vendor,
grtxt like t157e-grtxt,
xabln like mkpf-xabln,
bldat type mkpf-bldat,
end of t_alv.
- If one of the additional select-options is used then it does preselection and manipulates select-options passed to MB51
- Call of MB51
- Import of results and additional selection done on a base of the result table
- Output display
Enhanced MB51 Part 5 - Export from MB51

it_list type any table
Add a commentEnhanced MB51 Part 4 - Call MB51
export no_list from m_flag to memory id 'MB51_NOLIST'.
export flag from m_flag to memory id 'MB51_FLAG'.
export flag from m_flag to memory id 'ZMB51_FULLLIST_EXPORT'.
- import export to mt_list from memory id 'ZMB51_FULLLIST_EXPORT'.
Enhanced MB51 Part 3 - Get selection parameters
i_progname type sy-repid
it_seltab type rsparams_tt
method get_selection_screen_criteria.
call function 'RS_REFRESH_FROM_SELECTOPTIONS'
exporting
curr_report = i_progname
tables
selection_table = it_seltab
exceptions
not_found = 1
no_report = 2
others = 3.
case sy-subrc.
when 0.
when 1.
"raise not_found.
when 2.
"raise no_report.
when others.
"raise other_error.
endcase.
endmethod.
Enhanced MB51 Part 2 - Structure for data
- Create a function group or class to be able to reuse the solution in other programs also
- Create implicit enhancement in MB51 to be able to export it's results and stop MB51 if it's called from outside
- Create a program with selection screen fields from MB51 + my own desired additional filters. This program should call standard MB51 and display some additional fields in ALV Grid.
Enhanced MB51 Part 1 - Goal and prerequisites
- Copy program RM07DOCS (MB51) to Z-one and to the changes there - but I don't like such solutions so I didn't want to do that way
- Create own program which selects data from MKPF and MSEG and display it like MB51 do - but this would be to time consuming to prepare same logic like in MB51 and in case of any changes in oryginal transaction I would need to adjust program again
- Do implicit enhancement in RM07DOCS to add missing fields to the field catalog and then fill them during the call of MB51 - this would solve the first part of the request but users will have to do additional two clicks to go to ALV grid which as you may know already is sometimes to much :) Nevertheless if someone of you would like to go this way then you should do two implicit enhancements in RM07DOCS:
Add a comment