In some cases the debugging needs to be "picked up" from an external call, such as from a Portal user or an inbound RFC call. When you are using portal functionality or the system is being called through an RFC call, the external debugging is your answer: invoke the debugger triggered from the outside world. Even for a user-ID other than your own. How ? Read on..
HTTP
calls or RFC
calls are a bit tricky when it comes to debugging, the elaborate debugger needs an SAP user to present all these debugging screens to. When a portal visitor does his/her protal magic, a user (other than your own) will log on with a user ID (or personnel number) for which no SAP user needs to be available. So can the functionality executed by this visitor be debugged by you ? An inbound interface calls some RFC enabled function module to post it's data. It is called from an external non-SAP system and it's errors. The error logging from the calling system does not reveal what the problem is, so debugging is looked into. Possible ?
The key to this approach is connecting the processing from an external source to a debugging session of the developer. You may have noticed there are 2 icon/buttons on the Abap editor for setting a break-point. Normal and External. When you set the External breakpoint, a message like "Breakpoint was set for external debugging (user: ...)". The user ID is likely to be your own, but it can be altered to someone else. Find out which user-ID actions you would like to capture in the debugger and go to the Abap editor main screen:
Utilities => Settings => Tab ABAP Editor => (Sub)Tab Debugging.
Fill in the user ID and set your breakpoint again.
Effectively the setup allows you to place your break-points wherever you like and specify who's specific call is to be intercepted. When the call is made, a debug session will be spawned from the session in which the break-point was initially set. Happy debugging !