abapsaprfcpyrfc

Make SAP Report available via RFC


One customer wants to access a SAP report via RFC.

Steps:

  1. Third party application connects to SAP via RFC
  2. RFC call gets transmitted
  3. SAP runs the report
  4. SAP returns the report.

How can this be implement the part inside SAP?

I am using PyRFC as client library. But AFAIK this does not matter at all for this question. This question is only about the server part inside SAP.

In this case it is the report RM07MLBS which should be made available via RFC.


Solution

  • You need an ABAPer to make a function to you, I think there's no way without it.

    If you have a ABAPer just do something like this:

    SUBMIT <REPORT_NAME> ... EXPORTING LIST TO MEMORY AND RETURN.
    
    CALL FUNCTION 'LIST_FROM_MEMORY'
      TABLES
        listobject = t_listobj.
    
    CALL FUNCTION 'LIST_TO_ASCI'
      TABLES
        listasci           = t_ascilist
        listobject         = t_listobj.
    

    Now you have the list in ASCII format, you can convert it to what you want.

    Another way is send the report result to spool, get the spool and convert it to HTML/PDF.

    To convert Spool you can use this functions:

    RSPO_RETURN_ABAP_SPOOLJOB
    RSPO_RETURN_SPOOLJOB_DAT
    RSPO_RETURN_SPOOLJOB_HTML