Skip to Content

Background

When we had BW 3.x we could do a role upload into the Portal and everything gets created. After some customizing on the uploaded role, the end-user would get their reports. A few customers back than even developed their own application in BSP or WAD to display a Report Menu.

After BI 7.0 the whole picture changed and we no longer do role uploads for reports. Mainly because the security model changed from role based to data based. So customer had to define the data visibility of a report rather than the report itself. Since there is no role upload any longer customers need to maintain a neat Portal PCD filled with all sorts of BI content. After that, ask for a Portal Content Admin to create the navigation structure and so on.

Recently I came across a customer wishing to lower the Portal Content administration for BI Reports. What they wanted was to maintain the report entries on BI and those entries would automatically go into a user’s role. Meaning: once a new report comes up, they would just create an entry in the system and the report would magically appear to end-users.

The solution

The first alternative I came up with was to create an ABAP application (BSP, Webdynpro) to read a table where they would define such report entries. But I know there should be a more standard way of doing this. And in fact, there is. This customer had implemented Business Package for Plant Maintenance and it featured exactly what they requested. There was a transaction where they defined the report entries and each one made their ways into a Portal page.

 

The transaction in question is LPD_CUST which stands for Launchpad Customizing. Lucky me, this is a standard feature of most modern ABAP systems. A Launchpad is basically a Webdynpro Application that reads a definition from what’s customized via LPD_CUST and displays them as hyperlinks, just like a Workset Map iView – icons, descriptions and links are also available and customizable.

I was enthusiastic about Launchpad: besides being a standard feature, it supports the transport mechanism. So the customer requested a prototype.

Implementation

Step 1: Create the Application Launcher

First step it to create the Launchpad configuration. We do it using LPD_CUST:

 

We create a new application:

 

Fill in the application parameters:

 

After selecting the application category the bottom most area of the screen will change.
So you need to scroll down to the very end and you will see more options.

One might wonder why I didn’t create an application for BSP category.
Firt of all, there is no such category (at least on customer’s system).
Second, I used the simplest application I could find. It was just an example of Launchpad’s power and flexibility.

Step 2: Create an iView for this Launchpad

In Portal, create a remote Webdynpro ABAP iView, pointing to application APB_LAUNCHPAD.
The only thing you need to care about is the application’s parameters:

 

Preview

Now we can preview the Launchpad we have just created:

 

The road ahead

This is just a very modest example of how we create a Launchpad. Imagine if you create several Launchpads (one for each reporting scenario you have in your company). Then the Portal Role would carry just a link to those Launchpads. For a better user-experience you could create a Workset Map iView and include the lanchpads into a Workset.

Look & Feel

The following is a workset map iview containing the links for the abap launchers. I don’t need to mention this is all done in the Portal:

 

Once we click on a particular launcher we see what is defined on LPD_CUST:

 

Next steps

Figure out how to integrate other types of iViews and Web Apps into the lanchpad.
Watch for the next blogs on this topic.

To report this post you need to login first.

4 Comments

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

  1. John Moy
    Hi Ivan,

    Thanks for this post.  This approach is actually consistent with what we do in my organisation.  I like it because it puts more control into the hands of SAP gui configuration, rather than having to teach BI people portal configuration.

    In my experience, there is one downside to this approach, and that is that the launchpad is actually running as a stateful webdynpro ABAP application.  What that means is the user might sit there, launch a report (which creates a new window), work with that window for a period of time, then return back to the launchpad to launch another report.  If your system timeouts are configured to be, say 30 mins, then the user sees a session timeout error as soon as they select the second report.

    I guess it would be possible to tailor the timeout for this SICF service, but ideally it should be stateless rather than stateful since a user might leave that launchpad on their screen for a very long time.

    Rgds

    John

    (0) 
    1. Ivan Mirisola Post author
      Hi John,

      Thanks for sharing your thoughts!
      It is nice to hear that others are also using this approach.

      A few customers are already familiar with the session timeout error message. All they do is click on the launchpad once more and the issue is solved. So no big deal here.

      But I guess some customers might complain about the app timing out all the time. So the quick fix would be to change the timeout as you described. Which in my opinion isn’t such a big deal either.

      Cheers!

      (0) 
  2. John Patterson
    Thanks for pointing out NO_CHANGE_LIST_BUTTON=X, I completely missed it.

    We have recently migrated our projects portal content to use ABAP Launchpad’s, so far so good.

    What I really like is the ability to use BADI’s to control the run time behavior, for example using the BADI_APB_LPD_MODIFY_LPD_LIST prior to rendering we can perform authorization checks, if you haven’t got access you are seeing it in the list, similarly through config we can make items back-end role specific.

    There were quite a few things we have had to change, like the default way URL’s are handled through a webdynpro application, couldn’t quite understand this, we opted to change it to use URL iViews using the forcedURL parameter much nicer solution, similar changes to other application type handlers.

    One thing to look out for is the FPM Launchpad Component available from 7.02, I really like some of the features.

    Cheers
    JSP

    (0) 
  3. Halima Sadiya

    Hi Ivan,

    I am currently working on luanchpad customization. I have doubt regarding ‘Copy from other launchpad’ button.

    when I click it and choose the launchpad to be copied. I get two screens opened . But how do I proceed further?

    Can you please help !

    Cheers,

    Halima

    (0) 

Leave a Reply