Expand +



Let Your iViews Talk to Each Other: Client-Side Eventing Offers One More Way to Make Information Access More Efficient

by Eric Schemer and Heike Guder | SAPinsider

July 1, 2003

Further enhance the functions of SAP Enterprise Portal for BW users with client-side eventing. Users can make a change in one iView in their portal screen and see it instantly generate related information in other views.

SAP Enterprise Portal brings a range of powerful features to your SAP BW solution: role-based data access, Drag&Relate features for accessing information across systems without separate log-ins, and (best of all for your development team) easy integration right out of the box. But if you really want to dazzle your users, you can further enhance the functions of the portal with client-side eventing. With eventing among BW iViews in the portal, users can make a change in one iView in their portal screen and see it instantly generate related information in other views in the portal.

For administrators, consultants, and developers, the good news is that with a little work, you can bring this capability to your users. SAP provides plenty of detailed information on how to successfully support BW eventing in your SAP Enterprise Portal environment. And you can do it as soon as you’ve integrated your SAP BW 3.0/3.1 solution with SAP Enterprise Portal 5.0 or higher.

In this article, we’ll start with a quick look at how users might leverage this function and an overview of how it works, along with references to the documentation and code that will get you started.

If Users Already Have Drag&Relate, Do They Also Need Eventing?
Users might use both eventing and Drag&Relate in a single browser session — both are powerful features for easily getting information to users. Here’s a closer look at them both.

Drag&Relate is built right into SAP BW, and SAP Enterprise Portal tools support it by including it as part of the portal. Suppose a user is looking into the products a customer has purchased over the last couple of months. The user can view that information in one iView tied to the BW system.

To gather additional information about the top customer purchase, the user simply selects the product name and drags it into a second iView linked to the backend system. There the user can find master data — product specifications, available colors — all without a separate log-in.

Drag&Relate also helps users access outside systems — for example, by dragging the item to Google,, or Amazon, they can see whether it is mentioned on those sites. In other words, Drag&Relate allows users to jump from a single iView to another system or application seamlessly.1

Eventing provides another kind of easy access to information — it allows iViews to communicate with each other. Suppose a portal page for the BI Analyst role contains several BW iViews. The user needs to see products and materials listed by ABC classification2 from a single portal page, and to view this information from multiple perspectives — pie charts, Gantt charts, tables, and so on — each presented in a separate iView. (Why not show all these views in one single iView? See the sidebar below.)

When It Comes to iViews, Bigger Is Not Necessarily Better!
You’ll often see a number of different iViews on a single portal page. By creating multiple iViews instead of a single iView with multiple functions, you give users much more flexibility in the look and functionality of the portal page — users can pick and choose just the iViews they need. If they want data presented as an ABC chart but not as a table, they can remove one iView from their portal page and replace it with another, more applicable iView.

Figure 1 An iView for Selecting the Typce of ABC Classification

In this scenario, an “ABC Selection” iView can give the user a choice between “ABC Classification Vendors” and “ABC Classification Material” (see Figure 1). When the user makes a selection in this iView, the other iViews on the page will change accordingly, and display the requested information in various formats — pie chart, table, etc. (see Figure 2).

Figure 2 Updating Other iViews Based on the "ABC Selection" iView

How Client-Side Eventing Works
SAP provides a wealth of “how-to” information — including code and step-by-step instructions — for installing client-side eventing (see the Resources sidebar). While we won’t delve into all those details here, we will provide a brief overview of how the eventing process works (see Figure 3).

Figure 3 An Overview of the SAP Enterprise Portal Framework

Client-side eventing makes it possible for iViews to communicate with one another on the client side and to communicate with the portal itself. This is done with JavaScript routines on the client. These routines edit the browser events. The connection permits iViews to exchange data even if the “Sender” and “Receiver” iViews are not aware of one another. The eventing mechanism is implemented so that a single sender (event producer) can have multiple receivers (event consumers).

When the user makes a selection — generates an event — in the Sender iView, the data object passes to the Enterprise Portal Client Framework (EPCF). The EPCF is a service in the portal that enhances your portal component’s output with JavaScript, and simplifies the client-side programming of Web components. The EPCF then forwards a parameter to each of the receiving iViews that subscribe to the event (see Figure 3). The iView is then updated in the portal page.

During the session, all this JavaScript data is stored in part of the EPCF, the so-called Client Data Bag, which is a memory store located on the client. All the data from one session is stored in one location, where the iView can read and publish client-side data. The Client Data Bag and all the data it contains are automatically deleted at the end of the browser session or when the user logs off from the portal.

Resources for Implementing Client-Side Eventing in Your SAP Enterprise Portal
For more information on implementing client-side eventing, visit the SAP Service Marketplace at and, under Documentation, click on the “BW How-To... Guides” link in the “Related Topics” area. The Service Marketplace includes the following How-To Guides:

  • Client Side Eventing with the BW 3.x and EP 5.0
  • Enhance the Context Menu in Web Applications
  • Enhance Your Web Query with the Table Interface

  You can also find documentation on “BEx Web Applications” at

To make it even easier to add client-side eventing, for each BW iView running in the portal, SAP Enterprise Portal provides a JavaScript Library (epcfproxy.js), which is added to the HTML coding to provide you with all relevant functions for client-side eventing in the portal.

For more information on bringing client-side eventing to your integrated BW and Portals solution, please see the resources listed here. They include step-by-step documentation and code to help you provide your BW users with even greater ease-of-use and access to the information they need from SAP Enterprise Portal.

1 See “World-Class Business Applications Need World-Class Technology” in the January-March 2003 SAP Insider ( and the article by Franz-Josef Fritz in this issue of SAP Insider.

2 For more details on Unification and Drag&Relate, see the article by Scott Braker in this issue of SAP Insider (

Eric Schemer has been working for SAP AG for the last five years. He is currently Product Manager in the area of Business Intelligence (BI) and is responsible for the following areas: BW Web Technologies, Business Explorer Suite, Portal Integration, and Mobile Intelligence.

Heike Guder joined SAP AG in 2001. She is a developer in the area of Business Intelligence (BI) and is responsible for the proof-of-concept of BW technology on the basis of customer scenarios within the following areas: BW Web Technologies, Business Explorer Suite, Portal Integration, and Mobile Intelligence.

An email has been sent to:

More from SAPinsider


Please log in to post a comment.

No comments have been submitted on this article. Be the first to comment!