Skip to Content
Technical Articles
Author's profile photo Stefan Schnell

Output Catcher for ABAP

Output Catch is a small SAP server application to catch text on the presentation server from ABAP on the application server. You can send text direct to the editor of output catch, to a specific log file on the client, to a Windows debugger or to the Windows event protocol of the client.

It is very easy to use Output Catch:

  1. Register the Destination OUTPUTCATCH with the TAC SM59.
  2. Start the program OutptCatch.exe.
  3. Fill the connection parameters.001.JPG
  4. Register the functions and use one of the output or log variants.

Now you can e.g. send with the code

Call Function ‘Output’ Destination ‘OUTPUTCATCH’
  Exporting TEXT = ‘Hello World’ SEP = 0 UNAME = sy-uname
  Exceptions Others = 1

the TEXT Hello World to the editor in the tab Output. It works with background and dialog processes. The communication to an SAP system is via librfc32u.dll, the classic unicode RFC library. If the SAP GUI for Windows is present on your presentation server, you can use Output Catch without any additional libraries.


I use Output Catch inter alia to monitor interface parameters of background processes.

17/12/29: New SAP NetWeaver RFC Library is available

  • Output Catch works fine with the new SAP NetWeaver RFC Library 7.50.

16/07/06: New version of Output Catch is available

  • Since version 7.40 the logon configuration is available in SAPUILandscape.xml file, the SAPLogon.ini is not longer supported. Output Catch supports now also SAPUILandscape.xml instead of SAPLogon.ini.

15/11/24: New version of Output Catch is available

  • Now are an x64 and x86 version available, both bases on SAP NetWeaver RFC library.
  • The version bases on Classic RFC library is not longer available.
  • Both versions checked successful on Windows 10 x64.

13/12/29: New version of Output Catch is available

  • The new version bases now on SAP NetWeaver RFC library.
  • The classic version, which bases on Classic RFC Library, is furthermore available.

Output Catch is free and you can find it here.

Assigned Tags

      You must be Logged on to comment or reply to a post.
      Author's profile photo Yuvaraj S
      Yuvaraj S

      Hi Stefan,

      Why would I need an this functionality when I can simply collect all messages that I need to cache in a log file from the ABAP program and download using GUI download (or load it in AppServer and get it back in my PC later on) ?

      Are there any other specific use cases which you can provide to make me understand better?

      Author's profile photo Stefan Schnell
      Stefan Schnell
      Blog Post Author

      Hello Yuvaraj,

      thanks for your reply.

      I think there are several reasons to use Outputcatch:

      1. If you want to write messages in a log file, you need the S_DATASET authorization object with the activity 34.
      2. If you write messages in a log file, anyone should care about the file cleanup.
      3. If you want to catch messages in a log file and this should be optional, I mean switchable, you must set an explicit flag to disable or to enable that. With Outputcatch is the presence of the program sufficient.
      4. You can check the existence of the destination and the availability of Outputcatch in your ABAP code. With this information you can switch the using automatically. So you can deliver this code to your customer, e.g. for support activities later.
      5. For support activities on the production systems of your customers you need no right to read files to get the information you need.

      It is not under all circumstances advantageous to use Outputcatch, but as you can see there are a few good reasons.



      Author's profile photo Richard Harper
      Richard Harper

      Considering that there is no terminal attached to a background or batch job,  how can it work (or how does it work) with a background job ?


      Author's profile photo Stefan Schnell
      Stefan Schnell
      Blog Post Author

      Hello Richard,

      thanks for your reply.

      The Output Catch program is a server application which is registered in the backend. The backend communicates with the Output Catch via RFC. ABAP calls the functions inside Output Catch as external function modules.



      Author's profile photo Richard Harper
      Richard Harper

      Thanks for the quick reply.

      To ask (or answer a few more questions).  If you use a log file,  then you would be most properly using an application log surely ?.  The cleanup of these log files can be set to happen automagically in SAP.

      Playing devils advocate,  and you thinking of your answer as though you were a sys admin,  what would your reaction be if I (as a contractor) turned up and said 'Hey - put this on your server for me please.  It's a free program that I have downloaded from the internet'.


      Author's profile photo Stefan Schnell
      Stefan Schnell
      Blog Post Author

      Hello Rich,

      this is a server application which doesn't mean it must be copyed on the server. You should use it on your local development environment and only here - it is a tool for developers. It is not necessary to bother a sys admin. All you have to do is to copy it in a directory and to add the NW RFC library in the same directory.

      Here another use case:

      You want to develop a frontend component. For this it is necessary to monitor different events or status messages from the SAP backend and from your frontend component. With Output Catch you can monitor the backend events and messages e.g. to your local system debugger, also your frontend component. On this way you have one monitor, you see different systems and its timing at a glance.

      It is not in any case advantageous to use Output Catch, but for special uses cases it is very effective.