biExport for Design Studio Blog

How to export all tabs of your Lumira Designer / Design Studio dashboard

created: 05.01.2018

One of the unique features of biExport is the possibility to export different views of a dashboard with one click. These might be:

  • All tabs / selected tabs of a tabstrip
  • All pages / selected pages of pagebook
  • Visible and hidden components
  • Different values of one or more dimensions (such as “top 10 profit centers”)
  • Contents of multtipe applications

… as well as any combination of the above!

You see that you can fulfil practically every business requirement regarding booklets, briefing books and management presentations with this feature!

The following video shows an example of a PDF export of all tabs of a Lumira Designer application. Note that the same is possible also with Design Studio 1.x.

With the standard PDF export function of Lumira Designer, you can only export the current view. The PDF document that biExport creates does not only contain contents of all tabs. It also comes with a title page, table of contents, sophisticated layout and free formatted headers and footers.

So how did we make this happen?

In todays blog post I will show you a “making of” that video.

Let’s first of all have a look at the Design Studio application:

The application mainly consists of a tab strip that contains two different charts and a crosstab.

It also includes our biExport extension and a button “Full export” which triggers the export function. This is simply done via the doExport method of the biExport extension:

Now let’s have a more detailed look at the biExport extension.

Layouting the PDF document

First of all, how did we define the layout of the PDF document? Title page, table of contents, headers, footers…. Should be quite some effort, shouldn’t it? Well, not with biExport!

See the biexcellence.docx file that has been maintained as “Template Filename”?

As we support Word as an export format, we can simply perform a Word export based on a Word document and return it to the user as a PDF document. So, you do not have to spend a lot of time with layouting the PDF document. You simply use Word to create a title page. You simply use Word to create a table of content. And you add biExport placeholders (marked in yellow in the following screenshot) where you want to add content from Lumira Designer:

Now isn’t that a really powerful feature? Well, it’s about to get even better!

Exporting all contents of the tabstrip

Let’s have a look on how to set up the biExport extension to export all tabs of the tabstrip. This implementation is based on another blog post of mine:

First of all you have to tell biExport that you do not only want to export what’s currently visible on the screen. Instead, you specify an “Alternative Export Application” in the biExport extension. This application shall be executed when biExport is triggered:

For Lumira Designer, you have to specify the CUID of the document as well as the name of the application. In Design Studio the CUID of the application is sufficient. This forces biExport to re-execute the application.

Now you can add parameters to the execution. As we want to execute all three tabs of the tabstrip in the dashboard, we create a “URL parameter” in the biExport extension, which is executed iteratively with values “0;1;2”:

This property forces biExport to add a URL parameter XTABNO to the application call. Three different URLs will be created, with URL parameters XTABNO=0, XTABNO=1 and XTABNO=2.

This way biExport automatically collects all contents of application!

Now, one last step is missing: As SAP requires you to explicitly define URL parameters that your application can receive, you have to create the URL parameter in your application:

And then you have to do something with the URL parameter onStartup. In our case, we set the selected tab from the XTABNO parameter:

Well, that’s all the magic!

Of course, this rather simple example can be enhanced with dependent iterations, user selections and much more! I will create enhancements to this scenario in my following blog posts!

Stay tuned!