Crowdsourcing of the navigation into SAP transactions
One of the features that I like to do to make my applications more user friendly and I dare to say that users of my applications think the same to large extent… is the quick navigation between my custom development and the SAP standard transactions. Of course SAP standard tools cannot navigate to my custom development (changing SAP standard code is not an option for me), but that does not prevent me from making the work flow, data flow and business process flow fluent and very user friendly from my side.
Most of the custom development pieces that I can see around me are anyway reports and UI / functionality aggregating cockpits. These two types of custom development are even more powerful when you can double-click everything you see and you’re taken to the SAP standard maintenance transaction for master data etc.
Because of all these reasons plus the fact that I am just one little mortal and SAP is huge and the SAP functionality is the same for everyone, it makes perfect sense to collect the information about how to make jumps to the most used transactions and share that with everyone for the benefit of everyone. I plan to start small with the navigation possibilities that I can find in my recent notes and improve this text over time if you, dear readers, can share your code for navigation with me.
My proposal is not a rocket science – a decent developer can find a suitable function or copy the CALL TRANSACTION (with some parameters typically) in 20 seconds (not always, read further about the “Challenge” section). What I want to do here is to create a list that will spare the developers those five minutes and will encourage the use of stable interfaces at the same time. Last but not least I want to empower the business user and application consultants that don’t know how easy or difficult it is to implement these super-user-friendly on-clicks in ABAP with something they can mail to their developers and ask them to add that to their programs in a minute.
I have never been a good wiki gardener and the “openness” of the wikis for everyone does not appeal to me either, so please add comments or direct_message me if you have navigation possibilities that you want to share with the team. If you have other ideas or remarks, feel free to share whatever you have, I welcome that.
An example what is especially welcome could be notes on security -> which navigation possibilities check the authorizations of the user and which perform the jump technically without protecting the jump (many of the examples below set some parameters and then start a transaction, that is a low brainer, but we will find some tricky cases as well). Another example could be that there is a function module that one should use for the navigation instead of some code snippets copied from SCN. Stable interfaces are always the best option if such interfaces exist.
Let’s also maintain a “Challenge” section. If you need to navigate to a certain transaction / screen / tool and you find it tricky and can’t find a way yourself, post it as a comment. I will then add it to the “Challenge” section and we will see if we have enough nut crackers (aka “nuts”) to find out how to do it for you. As the examples I am maintaining below to start the work rolling are not particularly difficult, I can imagine the “Challenge” section will be more fun than using SE93 with WHERE-USED list.
KS03 Display Cost Center
Consider function module K_COSTCENTER_SHOW.
KE53 Display Profit Center
Consider function module PCA_MASS_DISPLAY_OBJECT.
FB03 Display Document
Consider function module FI_DOCUMENT_DISPLAY_RFC.
XD03 Customer Display
Consider function module BAPI_CUSTOMER_DISPLAY.
XK03 Vendor Display
Consider function module BAPI_VENDOR_DISPLAY.
MM03 Display Material
Consider function module BAPI_MATERIAL_DISPLAY.
CN23, KO03 Controlling Order Display
Consider function module K_ORDER_DISPLAY.
ME23N Display Purchase Order
Consider function module ME_DISPLAY_PURCHASE_DOCUMENT.
ME53N Display Purchase Requisition
Consider function module MMPUR_REQUISITION_DISPLAY.
MIGO Goods Movement
Consider function module MIGO_DIALOG.
(Generic + Powerful) Show BOR Repository objects
Consider RSESHOWOBJECT program in combination with SWO1 – BOR Repository. Credits: Shai Sinai. Thanks a lot!
SE11 Data dictionary and development objects
For example RS_DD_SHOW function, but generally RS*SHOW or RS*DISPLAY function modules.
SE10 Development objects (like double-click in SE10 transaction)
Consider function TR_OBJECT_JUMP_TO_TOOL (use TADIR table key as the input)
Workflow related objects
CL_SWF_RDG_DISPATCHER=>EXECUTE_DIALOG_REQUEST_MULTI. Credits: Yuvaraj S. Thanks a lot!
No challenges yet. You’re welcome to challenge us…
Long term challenge: replace the proposed functions above with their released equivalents.
Credits: All the ladies and gentleman who joined the discussion below. I will not copy all the names here but it is the very nature of this article to collect valuable pieces of knowledge from our “SCN team” members and they receive all the credit. Thank you all!