Skip to Content

Objective: To leverage RRI functionality in SAP BW / SAP BI and jump to a workbook from a query.

Scenario: A report is to be created involving calculation of certain key figures based on row/record comparison, and this row comparison is to consider only the data which is in the result set(ie the data which has been filtered through variable entries). So the only way of achieving this was by implementing static excel formulae in a workbook. Furthermore it was required to jump from a similar query into this particular workbook with excel formulae. Transaction RSBBS doesn’t provide any options to jump into a workbook.

Approach: RSBBS eventhough doesn’t provide any options to jump into workbook directly, it provides options to jump into ABAP reports and Transactions. I’ve chosen jumping into transactions, which are nothing but commands to execute underlying ABAP reports. All workbooks can be executed through transaction RRMXP, where we need to input either the workbook ID or query name or both. The initial plan was to jump to transaction RRMXP and make sure that the transaction RRMXP gets executed for a specific variant involving the desired workbook.

Pre-Requisite: This scenario is only useful when executed from RSRT, as the transaction RRMXP has only SAPGUI for windows under GUI support. Hence the user needs to have authorizations to RSRT. SAPGUI for HTML is not supported hence a jump from portal is not allowed.

Realization: Implementation of this approach was a two step process, where the first step was to create a transaction with variant that could execute the workbook and the second was to jump from the Bex query into the workbook.

Step 1: Creating a Transaction with Variant to run the desired workbook.

Workbook ID: Execute the workbook and select workbook settings from BEx Analyzer to collect the workbook ID.

Img 1.JPG

Workbook ID: OMQPMUO7UYA99XB91L011AID9

When a workbook is launched from SAP system, through favorites or User menu, then transaction code RRMXP is used.

Img 2.JPG

Transaction: RRMXP

Program: RRMX_START_EXCEL

We need to create a transaction code for RRMXP and then make sure that it gets called only for the specific workbook.

Creating a Transaction Variant:

    To create a Transaction variant, first execute transaction SHD0 – Transaction and Screen Variants.

Img 3.JPG

Enter transaction code to which we would like to create a variant, here it is RRMXP and click on create.

Img 4.JPG

Click on continue.

The system now offers us with the RRMXP transaction to enter the values. Here we input the previously collected workbook ID, or we can search our workbook from the possible entries (F4) help as well.

Img 5.JPG

Click on Continue and we would be offered with a CONFIRM SCREEN ENTRIES screen. Carry out the highlighted changes in this screen.

Img 6.JPG

Choose the checkboxes ‘W.content’ and ‘Output only’ against the workbook ID. This will make sure to enter the specified workbook ID in the RRMXP screen when executed with this variant.

Enter a screen variant name and a short description.

Click on “Exit and Save”.

Img 7.JPG

Also mark the field QUERY as ‘OUTPUT ONLY’. This will make sure that the field is greyed out or disabled for user input when the transaction is executed with the created variant.

Click on SAVE.

Img 8.JPG

Now create a transaction variant and associate it with the created screen variant.

Img 9.JPG

Enter a Transaction Variant Name, click on the display change icon, this will highlight the insert row icon and then click on the insert row icon.

Img 10.JPG

Use the F4 help in the first inserted row to choose the created screen variant and click on Save.

Img 11.JPG

Testing:

       To test we can click on execute and it should automatically populate the workbook ID in RRMXP screen.

Img 12.JPG

Img 13.JPG

We can observe that the workbook ID is entered and greyed out, which makes it impossible for the user to edit the workbook ID. Also the Query field is greyed out. This was possible due to the selection of the checkbox “Output Only” in the change screen variant screen previously.

Also upon continuing further on the above screen by hitting enter, we can view the workbook getting executed:

Img 14.JPG

Creating Transaction:

              Now we need to create a transaction to run with the variant ZPF_VAR1. This can be done in two ways, either create a transaction with variants from SE93 or from SHD0. Here I’m choosing SHD0 transaction.

From SHD0 click on GOTO and choose “Create Variant Transaction”.

Img 15.JPG

In the screen that follows choose “Transaction with Variant (Variant Transaction)” radio button after specifying the name of your required transaction.

Img 16.JPG

The name of the transaction and the transaction variant is automatically proposed if you navigate to SE93 screen from SHD0 transaction using the GO TO option.

Img 17.JPG

Testing:

Save the transaction, and execute the newly created transaction ZRRMXP to test its working:

Img 18.JPG

Img 19.JPG

Step 2: Create an RRI from the report to the workbook.

Transaction RSBBS

Img 20.JPG

Enter the sender query name and click on CREATE.

In the screen that follows choose the radio button as TRANSACTION and enter the created transaction in the ‘REPORT’ field. Click on Transfer.

Img 21.JPG

Maintain field assignment by choosing assignment details as highlighted below.

Img 22.JPG

Img 23.JPG

Click on Save.

Testing:

Execute the sender report:

Img 24.JPG

We can find our transaction in the context menu, Goto option now.

Click on ZRRMXP.

Img 25.JPG

And we have achieved a jump from a query into a workbook without even being prompted with a ZRRMXP screen as expected previously. Once the transaction was chosen there was a direct jump to the workbook.

Conclusion: By leveraging the Transaction Code or the ABAP program option, it is possible to include a workbook as a receiver in a Report To Report Interface Scenario.

To report this post you need to login first.

21 Comments

You must be Logged on to comment or reply to a post.

    1. Manohar Delampady Post author

      Hi Ramanjaneyulu,

              Thank you for the encouragement 🙂 , but the only disadvantage I found was that this cannot be tried with the portal. I’m exploring other options to achieve the same from portal using programs. If I stumble upon any then I will come up with another article or edit this one.

      Regards,

        Manohar. D

      (0) 
  1. Arno Gross

    Hi Manohar,

    good article. It works fine for us apart from the fact that variables can not be transferred to the receiving workbook.

    We want to fill variables in the receiving workbook via the selected data record from the sending workbook. 

    Example: record with article 4711 should fill by executing the RRI automatically the variable from the receiving workbook without being processed.

    Thanks in advance.

      Arno

    (0) 
    1. Manohar Delampady Post author

      Hi Arno,

         Thanks for the kind words. If you want to fill variable value with the value in the sender report from which you click on “go to”, then all you have to do is to go to sender receiver agreement(RSBBS) -> Assignment Details and under the field “TYPE” choose the value “INFOOBJECT” instead of “Variable”. In this document Variable is chosen according the requirement . I was able to successfully achieve the jump you are speaking of in the past by choosing infoobject.

      Please let me know how it works out.

      Also please click on LIKE or RATE any document that helps you, coz by doing so you award the author of the document with few points.

      Cheers,

        Manohar. D

      (0) 
      1. Arno Gross

        Hi Manohar,

        thanks for your fast answer. We choosed as “TYPE” the value “INFOOBJECT” and as “SELCTION TYPE” we tried these values:
        “*”, “PARAMETERS” and “SINGLE VALUES”,

        the variable in the receiving query is “OPTIONAL”, “MANUAL ENTRY” and “SINGLE VALUE”. So far we are not successful with these assignments. Maybe you have another hint for solving this problem.  When we understood you right you already implemented our Scenario.

        Thanks.

          Arno

        (0) 
        1. Manohar Delampady Post author

          Hi Arno,

              I’m sorry that the suggestion isn’t helping you. I’d like to point out one thing here. In my workbook scenario the requirement was to pass the exact variable values to the receiver query and not the characteristic filter, but I have achieved the jump required by you previously between two queries (no workbooks involved), and as far as I can recall when I did it the type was definitely INFOOBJECT and the receiver query was created only for the purpose of jump, so no variables were defined at all. Can you please try creating a copy query of your receiver, and not define any variable and maintain the assignment type as infoobject.

          Hope this helps. I’ll try to dig out my scenario and update you about it as well.

          Regards,

            Manohar. D

          (0) 
          1. Adriano Puleo

            HI,
            thank you for your post.

            I’m facing similar issue.

            I have a workbook with a prompt (variable) and i need to pass the value.

            Workbook has automatic refresh on open and i would like to populate it via rsbbs.

            Do you think it’s possible or do i have to change the workbook somehow?

            I did try using Variable and Infobject and on Field Name i used the IO name and the Variable name but no success..

            Thanks in advance and regards

            Adriano

            (0) 
  2. Rohan Jain

    Manu bhai,

    Your Documents are really really good. They clearly mention all the do’s and dont’s.

    I need your expert advice on Field assignments. I could never get it and use the Types Option Properly.  Neither Could I find any page or blog which makes us understand how infoobject/parameter/variable/generic values are passed from sender to receiver.

    Another encouraging topic for posting a new one? What say?

    (0) 
    1. Manohar Delampady Post author

      Thank you Rohan bhai,

          Will try to figure that out and come up with something. My experience is with Variables and Infoobjects so far, with Variables I’ve observed that the variable entry of the sender query is passed on to the receiver query, however with infoobjects option, the value of the infoobject on which you click and choose to jump gets passed to the receiver query.

      Thanks again 🙂

      (0) 

Leave a Reply