Skip to Content
Product Information
Author's profile photo Koen Hesters

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.

0001Capture.PNG

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

     =<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.

0000Capture.PNG

The passing of the value is nothin special.

Note that you have the assign the key as well!

0000Capture.PNG
good doc on this toppic :

http://scn.sap.com/community/businessobjects-web-intelligence/blog/2013/03/11/how-to-use-opendocument-with-bex-variables

(Victor Gabriel Saiz Castillo)

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)

0004Capture.png

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(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

0000Capture.PNG

8C Design Studio RRI & Open Document

Nice doc on this toppic by Deepu Sasidharan

Design Studio 1.4 RRI and Open Document

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>”

0000Capture.PNG

10 Lumira

OpenDocument Functionality for Lumira Documents in SAP Lumira, server for BI Platform

Enhancement of Lumira document to support Full, Part and Prompts/Variables options via OpenDocument URL for SAP Lumira, server for BI Platform

11 SAP Analytics Cloud to WebI
  1. 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
  2. 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
  3. 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

              

:

Assigned Tags

      41 Comments
      You must be Logged on to comment or reply to a post.
      Author's profile photo Arjun K T
      Arjun K T

      Good One...!!

      Author's profile photo Antonette Venter
      Antonette Venter

      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

      Author's profile photo Koen Hesters
      Koen Hesters
      Blog Post Author

      Hi Antonette,

      Thanks!

      I don't think so, but you could open a message so other experts can check it as well.

      Grtz

      Koen

      Author's profile photo Antonette Venter
      Antonette Venter

      Thanks 🙂

      Author's profile photo Former Member
      Former Member

      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

      Author's profile photo Koen Hesters
      Koen Hesters
      Blog Post Author

      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

      Author's profile photo Former Member
      Former Member

      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

      Author's profile photo Koen Hesters
      Koen Hesters
      Blog Post Author
      Author's profile photo Former Member
      Former Member

      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

      Author's profile photo Koen Hesters
      Koen Hesters
      Blog Post Author

      I'm afraid spaces are not threated well in case like this, is there a possibility to filter via key's?

      Author's profile photo Former Member
      Former Member

      Will give a try.

      Thanks.

      Author's profile photo Arjun K T
      Arjun K T

      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

      Author's profile photo Hari Srinivasa Reddy
      Hari Srinivasa Reddy

      This is a good post. Very useful.

      Author's profile photo Koen Hesters
      Koen Hesters
      Blog Post Author

      thanks to motivate me !!!

      Author's profile photo Toby Johnston
      Toby Johnston

      Thanks for the openDocument samples.  Left you a rating, nice work!

      Author's profile photo Koen Hesters
      Koen Hesters
      Blog Post Author

      Hi, Thanks a lot 0000Capture.PNG

      Author's profile photo Rahul Verma
      Rahul Verma

      Referring point #9

      Can this work if we have a requirement to open different tabs within a document?

      or do you have any suggestion.

      Author's profile photo Koen Hesters
      Koen Hesters
      Blog Post Author

      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

      Author's profile photo Former Member
      Former Member

      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

      Author's profile photo Former Member
      Former Member

      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

      Author's profile photo Former Member
      Former Member

      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?

      Author's profile photo Andrew Walker
      Andrew Walker

      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

      Author's profile photo Nilesh Pathak
      Nilesh Pathak

      hi,

      if we have more than one input field then please can you provide syntax for the same?

      Author's profile photo Michael Welch
      Michael Welch

      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! 

      Author's profile photo Former Member
      Former Member

      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

      Author's profile photo Hafeez Rasheed
      Hafeez Rasheed

      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.

      Author's profile photo Koen Hesters
      Koen Hesters
      Blog Post Author

       

      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

      Author's profile photo Hafeez Rasheed
      Hafeez Rasheed

      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.

      Author's profile photo Koen Hesters
      Koen Hesters
      Blog Post Author

      you can use both webi/prompt and bex prompt, but note:

      • Webi prompt are addressed via their "text/name/description"
      • Bex prompt are addressed via their 'techn key"
      Author's profile photo Yogesh Patil
      Yogesh Patil

      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

       

      Author's profile photo Koen Hesters
      Koen Hesters
      Blog Post Author

       

      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.

      0000Capture.PNG

      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.

       

      Author's profile photo Yogesh Patil
      Yogesh Patil

      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

      Author's profile photo Parameshwar Vannekala
      Parameshwar Vannekala

      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.

      Author's profile photo Koen Hesters
      Koen Hesters
      Blog Post Author

       

      Hi,

      you could try to add parameter to your URL

      • &swindow=new
      • &swindow=same

       

      Author's profile photo Parameshwar Vannekala
      Parameshwar Vannekala

       

      i want it to open in the tab like these on BI platform itself not on browser tabs

      Author's profile photo Koen Hesters
      Koen Hesters
      Blog Post Author

       

      what happens if you add parameter: &swindow=same, that should do the trick

      Author's profile photo Parameshwar Vannekala
      Parameshwar Vannekala

      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

      Author's profile photo Koen Hesters
      Koen Hesters
      Blog Post Author

       

      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

      Author's profile photo Parameshwar Vannekala
      Parameshwar Vannekala

      Iam using 2.0 SP03 , and BOE 4.2 SP05

      Author's profile photo Koen Hesters
      Koen Hesters
      Blog Post Author

      You'll need 2.1 version of Lumira at the minimum

      Author's profile photo Parameshwar Vannekala
      Parameshwar Vannekala

      okay thanks a lot