Product Information
Open document lingo (hyperlink) through the whole BI platform & SAP Design Studio & SAP Lumira & SAP Analytics Cloud
This document shows how to jump from the most aggregated level (dashboards) to the most detailed level (ECC), including, interactive and advanced analysis jumps. The document attached includes screenshots as well.
Content |
---|
0. Linking wizard
1. PassingValues between Dashboards
1.A Calling a dashboard and filter the bex-variable via the link
2. Passing values between Dashboard (Parent) to WebI (Child)
3. Passing values between WebI – reports
3.A Embed image into WebI – reports (via url)
3.B Passing values between WebI – reports with Bex-variable
4. Passing values between WebI and Olap-Analysis
5. Input parameters
6. Embedded dashboard
7. Jump to ecc
8. Design Studio
8.A Passing Range from Design Studio to Explorer
8.B Passing Data from Design Studio to WebI
8.C Design Studio RRI & Open Document
9. Hyperlink of a variable
10. Lumira
11. SAP Analytics Cloud to WebI
0 | Linking wizard |
---|
How to obtain the Open Document wizard.
Set your preferences in the BI Launchpad to HTML.
Example, check out the setting in underneath screenshot.
When you open your document as viewer (read mode), then click on design mode, you will be able to use the link-wizard.
When you open your document directly via Modify (you will go via Applet) and you will not be able to use the link-wizard.
1 | Passing Values between Dashboards |
---|
Step 1: Create Child Dashboard (Flash 2)
- Create combobox (dynamically – linked with cell “B1”, here we will enter the passed value) and chart
- Create connection (Flash Variable)
- Link the range to your spreadsheat (important:the name of ranges, ie: “Range”)
- Save to the platform
Step 2: Create Parent Dashboard (Flash 1)
- Create combobox and graph (combobox we will use the select our passing value, the value will be placed in “Blad1!AA2)
- Paste the “Document link” of your child dashboard in a cel (this you can retrieve from the platform)
- Paste the Ranges name of your connection of your child dashboard in a cel
- Use the formula to create the URL =<link>&”&sKind=Flash&IsS”&<range_name>&”=”&<variable_value>
- Use URL-component and link it with the url link (blue)
Step 3: Check it out
- Open parent dashboard
- Click on URL (now we want to pass the value “Massilly” trough to our child dashboard
- Open child dashboard (our chart is filtered by the value we pushed trough)
1 A | Calling Dashboard and filter the bex-variable via the link |
---|
See document Dashboard filtered by BEx-variable, filled via URL
2 | Passing values between Dashboard (Parent) to WebI (Child) |
---|
Step 1: Create Webi-report
- Create filter: “Production entity”, as an optional prompt, only one value to enter.
- Save to Platform and fetch the document li
Step 2: Create Dashboard
- Paste document link in spreadsheethttp://DUN-TST-BOXI04.armony.net:8080/BOE/OpenDocument/opendoc/openDocument.jsp?sIDType=CUID&iDocID=ARew.LkSbaFDpWaepr48XRY
- To force prompt pop up screen: =<link>&”&sRefresh=Y”
- To fill prompt of “production entity” (filter created on WebI level):
=<link>&”&sRefresh=Y&IsM”&<promptdescription>&”=”&<variable_value>
- You can replace <variable_value> by no_value if you want to leave the selection open (optional prompt)
=<link>&”&sRefresh=Y&IsM”&<promptdescription>&”=no_value-
3 | Passing Values between WebI – reports |
---|
Step 1: Create Webi-report
- Create filter: “Production entity”, as an optional prompt, only one value to enter.
- Save to Platform and fetch the document link
Step 2: Create Webi-report
- Create table with production entity in it
- Select column
3A | Embed image into WebI – reports (via url) |
---|
See Document: Hyperlink on image within webi report
3B | Passing Values between WebI – reports – BEx Variables |
---|
To get this working you should check first how your bex-variable is defined. Because when you have your Bex-variable as “selection option” your values will not be passed.
The passing of the value is nothin special.
Note that you have the assign the key as well!
4 | Passing Values between WebI and OLAP-Analysis |
---|
Variables in OLAP Anlaysis are BEx variables, to “call” them you have to use the technical name of the variable! In example we use: QUXOIQRT
Important NOTE: the same method (link) can be used also for passing values from Dashboard to advanced analysis, just note that the input variable will look like in chapter 2.
- Add hyperlink >> Browse for advanced analysis report >> insert it >> no popup of the variables appear like in chapter 3 >> so we have to change the link via formula >> so click “ok” and go to the formula bar, edit it. And add the extra parameter below, like you see in the link below.
- &lsMQUXOIQRT=
- =”+[L01 Invoicequarter]+”
=”<ahref=\”../../opendoc/openDocument.jsp?iDocID=AXj.NgMoYXhImmeGywITRjI&sIDType=CUID&sType=amw&lsMQUXOIQRT=”+[L01 Invoice
quarter]+” \” title=\”\” target=\”_blank\”
nav=\”doc\”>”+[L01 Invoice quarter]+”</a>
View of the formula bar. The hyperlink you see above, is the result of your link. You see, we are passing the second quarter through.
5 | Input Parameters |
---|
parameter | info |
---|---|
& | to combine paramrters in the hyperlink |
[NAME] | the text of the prompt |
lsM[name] | Specifies Multiplevalues for a prompt |
lsR[NAME] | Specifies a Range of values for a prompt |
lsS[NAME] | Specifies a Single value for a prompt |
sRefresh | Forces a refesh of report -> sRefresh=Y |
sKind =Flash | For flashfiles like dashboarding |
sIDType=CUID | For determine type of documentID |
sInstance=Last | For latest instance |
sInstance=User | For latest instance owned by user |
sOutputFormat | H(HTML) P (PDF) E (Ecel) W (Webi) |
sReportName=First+Report+Tab | To open report on a specific report tab |
sReportPart=UIREF:RID=1:BID=152 | refers to a block in a report (tab) RID: Report ID, BID: Block ID |
no_value | if you want to leave the selection open (optional prompt) |
6 | Embedded dashboard |
---|
URL setup
- documentDownload?iDocID=<iDocID value>&sKind=Flash
Dashboard setup
- component swf-loader (source url / app domain New)
- Note that the Panel component doesn’t download dashboard
See document >> BI 4.1 – How to Import a dashboard in another dashboard
7 | Jump to ECC |
---|
url http:///<server>:<port>/sap/bc/gui/sap/its/webgui?~transaction=*CJ03%20*PROJ-PSPID=300002903;DYNP_OKCODE=/00
SERVER ED1 ecc-dev.belgrid.net
Port (T-CODE : SICF) 8000
http://ecc-dev.belgrid.net:8000/sap/bc/gui/sap/its/webgui?~transaction=*CJ03%20*PROJ-PSPID=300002903;DYNP_OKCODE=/00
>>> test
It is important that the integrated ITS service default_host->sap->bc->gui->sap->its->WEBGUI within your ECC’s NetWeaver instance is active before you can call a WebGUI transaction. The server is your ECC one that you can find in the SAP Logon. You can also find the right port in transaction SICF. The transaction itself must also be enabled for WebGUI access in SE93. The above example URL is calling transaction code CJ03 and filling the screen field PROJ-PSPID with the WBS number 300002903 and bypassing the selection screen by clicking on the Execute button. This is a static example but in real life, the number should be replaced by the column name in the Web Intelligence report.
Transaction ?
In ECC execute the requested T-Code: for example ME23N
Passing values
Go to the parameter you want to fill in and press F1
Gui data >> Status >> MECHOB PROJ-PSPID=300002903;DYNP_OKCODE=MECHOB
http://ecc-dev.belgrid.net/:8000/sap/bc/gui/sap/its/webgui?~transaction=*ME23N%20*MEPO_SELECT-EBELN=48013468;DYNP_OKCODE=MECHOB
8 | Design Studio |
---|
If the Design studio application is located on the BI Launchpad. You can access the design studio via the opendocument lingo…check out tutorial:
SCN:
Design Studio 1.1: Pass URL parameters between applications (sap official)
/https://blogs.sap.com/2015/02/25/passing-parameters-as-part-of-url-in-sap-bo-design-studio-15/
8A | Passing range from Design Studio to Explorer |
---|
A range in Design studio has format: 2011 – 2013
A range in Explorer has format: 2011;2012;2012;2013
When we push our values as answer from Design Studio prompt, we will recieve those 2011-2013 format
Check out the code to go from one format to the other
8B | Passing Data from Design Studio to WebI |
---|
Nothing special here, use what you already learned above.
script in design studio= APPLICATION.openNewWindow();
add opendocument-rul from webi, add parameters, it as simple as that.
Note, do not forget to create the prompt in your webi and use that name in your parameter!
1. Actions in design studio
- APPLICATION.openNewWindow(“http://ISOSAP115.belgrid.net:8080/BOE/OpenDocument/opendoc/openDocument.jsp?sIDType=CUID&iDocID=AfZDGoYxjP5FuG1B4o86lu4&lsSYear=var_end“);
- var url =“http://ISOSAP115.belgrid.net:8080/BOE/OpenDocument/opendoc/openDocument.jsp?sIDType=CUID&iDocID=AfZDGoYxjP5FuG1B4o86lu4&&sRefresh=Y&lsSCompany=”+var_end;
APPLICATION.openNewWindow(url);
var_end can be a variable you filled in via startup or you can set it as the result of a filter
example:
var_end=DS_1.getVariableValueExt(“VAR_YEAR”);
2. Actions in webi
Creation of prompt
8C | Design Studio RRI & Open Document |
---|
Nice doc on this toppic by Deepu Sasidharan
9 | Hyperlink of a variable |
---|
create variable “signature”.
add for example =www.google.com
this can be handy if it is based on an IF statement, where you in once case jump to report A and in the other case to report B.
use formula below in your report
=”<a href=\””+([Signature])+”\” title=\”\” target=\”_blank\” nav=\”web\”>Click Here</a>”
10 | Lumira |
---|
OpenDocument Functionality for Lumira Documents in SAP Lumira, server for BI Platform
11 | SAP Analytics Cloud to WebI |
---|
- Step 1 create WebI report as target/child report.
- create prompt (name/textbox of my prompt I type: Year)
- save your WebI report into your Launchpad
- go to properties of your WebI document and copy the opendocument URL
- Step 2 create SAC story as source/parent report.
- create story
- in Story add chart, link it with your datasource, design it.
- When ready go to your chart structure-> add chart components -> hyperlink
- OR go to your graph in the story itself, open the menu and go to hyperlink
- Step 3 develop your Hyperlink
- Link to= external URL
- External URL = paste your opendocumentlink here and add &sRefresh=Y&lsSYear=<<add your Dimension from your datasource>>
- Label= “Jump to”
- Open in new tab
Ready to play >> in chart, select your value/dimension, HyperlinkJumpTo jumps up , click on it and your WebI Report will open with your selected value
:
Good One...!!
Thanks Koen, great post!
Is there a paramater you can use to set the report zoom to the width of the page? So no matter what resolution your screen it will always be the width of the report instead of 100%.
Regards
Antonette
Hi Antonette,
Thanks!
I don't think so, but you could open a message so other experts can check it as well.
Grtz
Koen
Thanks 🙂
Nice post Koen.
I am trying to call webi report from a Design Studio dashboard.
Scenario - When a user clicks on the Chart member, that value of dimension should pass on to webi report as a placeholder for a prompt.
I have created a global variable in Design Studio.
"var_end" string
On Chart's OnSelect event i have written the following code.
var_end=CHART_1.getSelectedMember("COMPANYNAME").externalKey;
and then i am calling the webi report
APPLICATION.openNewWindow("http://bihost:8080/BOE/OpenDocument/opendoc/openDocument.jsp?sIDType=CUID&iDocID=FnQma1RquQUA4g4AAADn9IQAEvyYXOcS&lsSCompany=var_end");
When executing the dashboard locally, upon Selecting any value in the chart, application is calling the webi report but it's not passing the value we are selecting.
Could you give me an idea what needs to be corrected here?
Thanks,
Twarit
hi,
can you set something like
TILE_1_SUBTITLE.setText(var_end);
on a text component, so you can easily check what is happening there, what is pushing through.
Grtz
Koen
Tested it with text box.
When value =SAP then value in the text box is "SAP"
when value =Brazil Technology then value in the text box is "Brazil\ Technology"
But both the values are not being passed when used in Opendoc url.
The opendoc URL constructed when clicking the chart in the DS is ending like ...
&sIDType=CUID&isApplication=true&appKind=OpenDocument&lsSCompany=var_end
so clearly the value of variable var_end is not being replaced in the opendoc url.
Any Thoughts!!
Thanks,
Twarit
Hi,
can you copy paste this link, please
var url ="http://bihost:8080/BOE/OpenDocument/opendoc/openDocument.jsp?sIDType=CUID&iDocID=FnQma1RquQUA4g4AAADn9IQAEvyYXOcS&sRefresh=Y&lsSCompany="+var_end;
APPLICATION.openNewWindow(url);
grtz
Koen
Many Thanks Koen. Above trick is working nicely. 🙂
Remaining issue is..when variable var_end='SAP', webi report is working well after filtering the data for SAP but when var_end='Brazil Technology', webi report is not able to apply the filter correctly.
It seems the value passing to webi report is "Brazil\ Technologies" and hence filter is not happening.
Any idea how to overcome this.
-Twarit
I'm afraid spaces are not threated well in case like this, is there a possibility to filter via key's?
Will give a try.
Thanks.
Hello twarit,
I think you can try urlEncode function in order to remove the space between the "Brazil Technologies"
var var_end1=Convert.urlEncode(var_end);
and give this var_end1 in the open document url you are using .
Regards
Arjun KT
This is a good post. Very useful.
thanks to motivate me !!!
Thanks for the openDocument samples. Left you a rating, nice work!
Hi, Thanks a lot
Referring point #9
Can this work if we have a requirement to open different tabs within a document?
or do you have any suggestion.
Hi,
You can set a specific tab as well in the hyperlink, see #5.
You can create a variable that does that trick as well, [BID] = if [signature] = X then [BID_X] something as such
Grtz
Koen
Hi,
Can you please help me in passing prompt values to a design studio dashboard to another design studio dashboard?
That value is to be selected from the data source of the source dashboard and passed to a prompt in target dashboard.
Regards,
Himanshu
Hi Koen,
This is really great stuff..
I am facing an issue while passing value from design studio to webi. I am able to pass single value but when i try to pass multiple value i am getting an error. I want to pass parameter value (year)2010;2011
script i used is
var prompt = listbox1.getselectedvalues();
and used var prompt in open doc link. if i give multiple values(getselectedvalue(s)) its showing ""cannot concatenate object type from 'string' to 'arraystring'."
is there any possibilities to convert string into arraystring
Regards,
Mathivanan
I have design studio dashboard linked to only one crystal report with optional prompt on date and there are two situations
1. to pass null value(when i want to send the all the dates)
2. to pass the date value(for specific date)
Linking work when i pass specific value but it doesn't work for null one.
to pass null value : i am passing APPLICATION.openNewWindow(Docunment link +"&lsSweek="+"");
But its not working. i dont want to pass anything in crystal report not even null for situation 1. but if i dont pass anything. when it goes to child report , prompt page pop up again.
Could you please help me on this?
Hi All,
Thanks Koen for this very detailed explanation of OpenDocument use and syntax on the BI Platform.
Our team has previously created dashboards using Design Studio which is running on BI Platform. We have links to jump between related dashboards using the OpenDocument syntax.
I wanted to confirm, if we develop a report in Lumira, server for BI Platform--and publish the report to the BI Platform--will we be able to use the OpenDocument syntax to jump from a Design Studio dashboard directly to a Lumira report? Is that supported or recommended?
Thanks for your insight!
Andrew
hi,
if we have more than one input field then please can you provide syntax for the same?
Hi Ken,
Nice to have this all in one spot for reference purposes.
A quick question:
For topic 7, when jumping to an ECC transaction from design studio or webi, how is single sign on handled? Or do users have to enter their credentials in order to access the web gui?
Thanks!
Hello,
Very good post thank you.
For LUMIRA
Input parameters works fine, but I also need to pass some dimensions filters.
Do you know if it is possible via URL ?
Best regards,
Stefano
Hi koen,
I am trying to create a link from design studio to WEBI. Both have data source as Bex queries.
The Webi report has Bex variables as prompts .
All are optional prompts and 'Period/Fiscal year' default values set.
When i execute the Opendoc URLfor webi from design studio without passing prompts, it works fine.
URL without passing Vendor number prompt:
http://abcd:8080/BOE/OpenDocument/opendoc/openDocument.jsp?sIDType=CUID&iDocID=FkYED1o9JAEA55sBAAAHEMQAAFBWj94p
However, when i pass Vendor Number , webi report is executing without applying the filter.
http://abcd:8080/BOE/OpenDocument/opendoc/openDocument.jsp?sIDType=CUID&iDocID=FkYED1o9JAEA55sBAAAHEMQAAFBWj94p&lsSVendor+Number=1000034
I am not sure whether the name of the Vendor Number (lsSVendor+Number) that is used in the URL is correct.
Can you advise on which name of the BEx variable needs to be passed in the Open doc URL.
Hi,
when you want to fill out the variables entry of a BEx variable you 'll need to address them with the technical name of that BEx variable
Grtz
Koen
Hi Koen ,
Is creation of prompt in WEBI mandatory to pass values from design studio to WEBI?
Earlier, when i tried to pass the BEX variables , it was not working.Now i created prompt in WEBI and passing values from Design studio to the BO prompts and its working.
you can use both webi/prompt and bex prompt, but note:
Hello Koen,
Nice Document.
I working on the scenario of Design Studio to WEBI report.
WEBI report is creating MDX statement so I need to pass variable like this:
url = http://<link>&lsSEnterValues=[VKBUR].[VKBUR].[101]
The link is working in a chrome with above-hardcoded value. But when I am using this link in statement APPLICATION.opnnewwindow(url)
Could you please help me how to pass this link. I have data source as HANA calculation view in WEBI and Design Studio Both.
Thanks,
Yogesh
Hi,
I don't have Hana, so I can't check this out for your. But the main rule is to create a webi prompt and use the name of the prompt in the URL you set in Design Studio.
In the example you have to use "Year" exactly like it is written.
"S" is for single values, "M" for multiple ->lsMYear
check your passing values, a space can corrupt the whole thing.
Hello Koen,
I have created a prompt in WEBI itself on top of HANA Calculation View and we need to pass the data in the format "lsSEnterValues=[VKBUR].[VKBUR].[101]".
I found different solution for this issue. I have created a variable in the Calculation view(Sementics).
So this variable work as a prompt in my case.
But still if we create prompt in WEBI then the above issue arrives.
Thanks,
Yogesh
hey guys,
Iam using Application.OpenNewWindow in lumira designer application to open a new open document link for a webi report .
when application is on the SAP BI platform the link opens in a new browser window tab , but is their a way to open it in the BI platform itself like how webi reports open within on separate tabs.
Thanks.
Hi,
you could try to add parameter to your URL
i want it to open in the tab like these on BI platform itself not on browser tabs
what happens if you add parameter: &swindow=same, that should do the trick
both do the same thing when opened from BI Platform.
while executing it on lumira designer then ,
&window=same opens the webi on the same browser tab and
&window=new opens in separate browser tab
Hi check this doc, maybe your version is not at the required level ?
https://answers.sap.com/questions/402952/how-to-navigate-between-lumira-designer-applicatio.html
Iam using 2.0 SP03 , and BOE 4.2 SP05
You'll need 2.1 version of Lumira at the minimum
okay thanks a lot