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.
Workbook ID: OMQPMUO7UYA99XB91L011AID9
When a workbook is launched from SAP system, through favorites or User menu, then transaction code RRMXP is used.
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.
Enter transaction code to which we would like to create a variant, here it is RRMXP and click on create.
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.
Click on Continue and we would be offered with a CONFIRM SCREEN ENTRIES screen. Carry out the highlighted changes in this screen.
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”.
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.
Now create a transaction variant and associate it with the created screen variant.
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.
Use the F4 help in the first inserted row to choose the created screen variant and click on Save.
Testing:
To test we can click on execute and it should automatically populate the workbook ID in RRMXP screen.
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:
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”.
In the screen that follows choose “Transaction with Variant (Variant Transaction)” radio button after specifying the name of your required transaction.
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.
Testing:
Save the transaction, and execute the newly created transaction ZRRMXP to test its working:
Step 2: Create an RRI from the report to the workbook.
Transaction RSBBS
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.
Maintain field assignment by choosing assignment details as highlighted below.
Click on Save.
Testing:
Execute the sender report:
We can find our transaction in the context menu, Goto option now.
Click on ZRRMXP.
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.
Very useful article with good presentation. Thanks for sharing manohar.
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
Hello! It will be work from the workbook, if we use the settings from there: https://scn.sap.com/message/5897554
Hi manohar,
Thanks For sharing, its really helpful . 🙂 🙂 🙂
Regards,
Giri
Hi Manohar,
Its useful Information ..Thanks for sharing 🙂 .
Great workaround indeed!
Regards,
AL
Good job Manohar, really helpful !!
Regards,
NV
Really helpful doc.. Thanks for sharing.. 🙂
Hi manohar,
Its really too good doc..
Regards
Wasem
Thank you all. Appreciate the encouragement 🙂
Hi,
Good document and Thanks for sharing.
Thanks,
Phani.
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
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
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
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
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
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?
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 🙂
Nice one,keep it up.. 🙂
This is an amazing stuff 🙂 Appreciate your efforts!!!
Thank you for the guide…Was someone ever be able to pass a parameter to the workbook? if yes, How?
thank you and regards
Adriano