490 likes | 579 Views
Session ID: IM100 Creating a Web Reporting Center at International Paper using SAP Business Information Warehouse. The Company and Project. IP’s Perspective of BW Web Reporting. The Report Center. The Web Template and Toolbar. Advanced Printing Demo. On-Line Help & BW Alerts.
E N D
Session ID: IM100Creating a Web Reporting Center at International Paper using SAP Business Information Warehouse
The Company and Project IP’s Perspective of BW Web Reporting The Report Center The Web Template and Toolbar Advanced Printing Demo On-Line Help & BW Alerts Template Building Approach Q & A
Learning Objectives As a result of this workshop, you will be able to: • Understand what features can be added into a BW web template. • Explore the benefits and technical challenges of adding more user interactivity to your BW web reports • Gain insights on how to integrate web based print options, web based training and web based user help into your BW web template • Understand the resources needed to develop an enhanced BW template and how to get started with the web coding
The Company and Project International Paper was organized in 1898 and is the world’s largest paper and forest products company. Its core businesses include paper, packaging and forest products. IP has operations in more than 40 countries and sells its products in more than 120 nations. Global operations are located primarily in the United States, Europe, Latin America, and Asia. International Paper had sales in 2004 of $26 billion and is ranked No. 71 among Fortune-500companies. Its stock is traded internationally on the New York, Swiss and Amsterdam exchanges.
Issues with delivered Business Warehouse Web Reporting Web reporting is International Paper’s preferred delivery method to the end users. However as delivered BW’s template did not provide functionality our end users required. Missing functionality included: • Creating favorites that can be accessed from any machine • Printing: including fit to page, report info,variables selected, data status etc. • Ability to search for reports within the end users role • Definitions of characteristics and key figures • Ability to repeat values of characteristics • Online user help • Method of targeting specific users about system status or changes • On-line training As a result, we enhanced the functionality or our web template using development tools of HTML and Java Script and SAP’s ABAP programming.
The benefits of an enhanced web user interface • Ensure positive end user experience with front end • Consistent look and feel for all our customers • Our enhancements have allowed International Paper to deliver BW reports using the web for 95% of reporting • Have not had to purchase or train developers in other front end presentation tools • Centralization and standardization of template • Custom templates that have the same “feel” and adhere to corporate naming standards. • Toolbar functionality controlled in one location, referenced via JavaScript include file and built "on the fly".
Our Toolset • Standard Web Scripting ( HTML, JavaScript, Cascading Style Sheets) • BW Specific Solutions ( SAP Web Application Designer, Business Server Pages) • Editors ( SAP Web Application Designer, HTML Text Editor, Web Application Builder (SE80) • All Solutions Require Internet Explorer version 5.5 or Later The Web Application Designer from SAP is a key development tool for many of the features we will demonstrate
The Report Center and role based security – some points A great benefit to end users is a report center where all reports can be accessed from a single location. The Report Center gives the user the benefits of data transparency (users do not care which system the report came from, just that it is accurate). The Report Center leverages centralized SAP security administration which is role based. Allows for reports to be created in a folder structure for grouping purposes to ease end user navigation to the desired report The report center can be created in SAP enterprise portal, or as a separate entity that can be accessed from the portal. International Paper’s Report Center is also used as a place to send end users notification of upcoming changes or system issues.
The Report Center and role based security This report center lives inside the SAP Portal and consolidates the BW web reports, the on-line help, information sharing and many standard and enhanced BW features
Portal Integration - Issues The portal takes “control” of the pages hosted by BW. This prohibits interaction between pages contained within the frameset by changing the document.domain property of the launched page The Solution Must be addressed on the frameset page Place this function in the frameset ONLOAD event Understanding Try/Catch : http://www.devguru.com/Technologies/ecmascript/quickref/try...catch.html More on Cross Frame Scripting With IE : http://msdn.microsoft.com/workshop/author/om/xframe_scripting_security.asp
Navigation Users often complain that they can not see all of the query names Creating a scroll feature allows users to increase the size of the role menu, or hide it.
Searching for a report Users are often frustrated when they have to search for a report they are unfamiliar with. The report may be hard to locate in a hierarchy of roles on the launch pad. Adding a search feature so that users can locate a set of similar reports, significantly reduces this frustration. The search feature can be added as a simple extension within the report center. Let's take a look….
Searching for BW queries A regular windows icon is intuitive and easy to locate. This searches within any string of the report name, and all the folders you have access to
The Web Template and Toolbar After the BW query has been launched users should interact with a standard interface that does not change depending on the query executed. This standardization is accomplished through the global BW web template. The web template should always include a toolbar that is customized for your company. In the next sections we will take a look at some standard BW toolbar functionality and how you can extend the web template to add more user features on the toolbar.
The BW web template toolbar The toolbar should not change regardless of query or business unit. A good design standardizes the layout of the toolbar. I.e. the left side of the toolbar has standard SAP BW navigation icons. The right side has company specific web features & template enhancements
How did we build our toolbar? Standard BW/Microsoft icons
Non-browser specific "favorites" To simplify the management of the favorites, the user can access them from several locations. This use of favorites are tied to the user ID and are not dependent on the browser (user can get to these favorites from any machine!!)
Saving a query view to a "favorite" Favorites appears on the role menu after it has been added. This custom feature, simplifies the navigation
“Favorites" – how did we do it? Microsoft Outlook Users : Use similar logic to create an icon to email bookmarks. For more information on mailto, see http://msdn.microsoft.com/workshop/networking/predefined/mailto.asp?frame=true
A place holder A "place holder" allows users to create a separate window to "hold" a view of the information while exploring the data (standard BW feature).
Excel/BeX output This SAP delivered icon allows users to click a single button to export the data, and open the data in Excel. It is a "must have standard BW feature"
Outputs - CSV This standard BW icon allows users to click a single button to export the data as a comma delimited file. It is a great feature for those who want to upload the data into other applications.
Controlling the number of rows in the output Controlling the number of lines per page can easily be done in a JavaScript. It adds substantially to the user experience.. NOTE: Train the users appropriately!! If they ask for 100,000 records it will take some time on any system…
Web Print format The web printing feature of a web browser is very limited and users are normally very unhappy with it. In the early days of BW, companies frequently employed Crystal as their formatted reporting tool, even when the formatting was very basic. SAP now provides several ways to format the web reports. Many of these delivered objects can be extended to basic and advanced print formatting using standard web technologies and scripting languages. The next section demonstrates two ways incorporate formatted web printing in a BW web template.
Print format basic Users are generally very unhappy with browser based web printing… A simple JavaScript can leverage SAP objects so that basic formatted BW reports can be printed on the web.
Fit to page... Prompt the user for some basic choices Using these choices, construct a new table while inserting page breaks after N number of rows This process requires looping thru the query results, row by row, and copying the contents of that row to a new table. The # of rows generated before a new page is needed is determined by page layout and paper size. Loop with different font sizes until the resultset fits the output format
Print format basic – how to get started Copy of current data provider launched in template containing Data Table, Filter and Text Element web items Customized style sheet for printing Page Break between report and report details accomplished with PAGE-BREAK-BEFORE (CSS2) Page break text hidden with @media print { } (CSS2) NOTE: If your query uses a modified table API class, add the following to your url : &MODIFY_CLASS=THE _NAME_OF_YOUR_CLASS More on CSS for Printing : http://www.w3schools.com/css/css_ref_print.asp More on CSS Media Types : http://www.w3schools.com/css/css_mediatypes.asp
Print format - Advanced A more experienced web programmer can also add advanced web print features that reduces the need for other formatted reporting tools. It also gives user's flexibility and increases the likelihood that the go-live is a success!!
Toolbar Highlights – Advanced Printing Launch copy of current DataProvider into a new template. Template contains DataTable to store query results, text elements and filter/variables used on the query. Get handle on DataTable web item and hide. Analyze DataTable to set recommended page layout and paper size. Capture user header/footer choices (report title, company logo, print date/time, page number) and report details to be printed (standard Text Elements and report filters/variables) 1 2,3 4
Toolbar Highlights – Advanced Printing Build new html string representing the formatted output of the query.
Demo Advanced Printing Demo
On-line help The user help is a must-have feature. The development of the company specific help system can be done in tools such as front-page, MS-word, SAP-web application designer etc.. The trick to a good user help system is to present the information so that it is easy to locate. Therefore, you should add indexes, content trees and search features in the help system
On-line help Links within the documents help user find and navigate the information. Images tells a thousand words, so use them frequently to illustrate the information.
On-line help – "how-to" animations The on-line help can also incorporate simple "how-to" animations that demonstrate how to add filters, conditions, exceptions, charts and more. "How-to" animations can be created using screen capturing tools such as Camtatia, and Snag-it. "How-to" animations runs within the browser, so they should be relatively short and less than 2Mb in size.
BSP Applications Current BSP Applications BW Definitions – Links the user to an external ASP/SQL Server application which contains definitions of queries, characteristics and key figures. BW Alerts Center – Allows business analyst/system administrators to broadcast alerts to specific queries and/or cubes. Getting Started with BSP Applications: http://tinyurl.com/642c4
Using BSP for on-line definitions Users often ask what a certain field means or what how it was calculated. Adding on the context menu a link to a dictionary makes many users really happy!!! Characteristic, Key Figure and Query definitions stored on SQL Server table. Aliases used to extend match probability Context menu item added to basic menu Search results open in new window
BW Definitions Definitions stored in SQL Server SQL Server data accessed via ASP/XML Context Menu entry added with SAPBWAddToMenu () Characteristic/Dimension Text value retrieved using SAPBWGetDataProviderDimensions () For Key Figures, BSP page retrieves text for a given key figure id (l_UID) from RSZELTTXT Retrieved string is ESCAPED via Method ESCAPE_URL of Class CL_HTTP_UTILITY Key Figure text is massaged with JavaScript regular expressions to remove various hexadecimal values before page is redirected to ASP search page. OnInitialization Event Page Layout More on Regular Expressions : http://www.regular-expressions.info/javascript.html
BW Alerts Center BW system messages reach entire user community. We needed to narrow that down to certain users via custom Query/InfoProvider messages
Template BW Alerts Center InfoProvider/Query id captured on web template using text elements REPTNAME and INFOCUBE This information is passed to a BSP lookup page via remote scripting BSP Page : z_get_message retrieves message(s) from zbw_message_center Messages passed back to template via remote scripting If given message_id has not been seen by user, a pop up window is created and the message is displayed Used cookies to determine if the user has seen a message_id before For more information on remote scripting with IFRAMES, see: http://www.oreillynet.com/pub/a/javascript/2002/02/08/iframe.html If BSP finds a message, it calls the alertBwMessage() function located on the template BSP Javascript function loads hidden iframe with z_get_message.bsp?query=x&infoP=y ZBW_MSG_CENTER message_id number info_provider character info_query character message character valid_from date valid_to date created_by character created_on date requested_by character
On-line training Interactive BW training with tests are a simple way for first time users to get the basics of BW. Consider to use the on-line training as a requirement to get access to BW. It reduces the number of support calls. However, you should still provide in-class training to power users.
On-line training On-line interactive training systems, such as this animated feature that requires the user to complete a given task, is a low cost way to deliver training to a high number of users.
An approach to building a template Brainstorming is a great technique to get the best ideas from all developers involved before a design is "frozen". The steps are easy and it is fun to participate!! Ask each developer to create their own "favorite" template without cooperating. Then ask each of the developer to present their solution to the group Finally, incorporate features from all prototypes, but stick with only one final global template.
An approach to building a template Corporate governance and rules: A key part of developing a web template is to make sure that it is approved by the corporate marketing group and that is conforms to the company's standards. People: The group must have a strong web developer who really knows java scripting, Active Server Pages or Business Server Pages, HTML and the basics of the BW web interface. The web developer must also be supported by a strong BW query development team that drives the system and integration testing of the template. The key to success is testing, testing and testing. Never implement a feature that is not 100% functional and complete (users are unforgiving)…
An approach to building a template The release of new versions of the web template should be tightly controlled. New features that appears to be logical to the developer, are not always easy to use from a user standpoint. Since the web template is used in on-line training and the on-line help system, you need a release strategy. In general, more than 1 or 2 releases each year of new template functionality are hard to execute when adequately tested. Users don't like change (even when for the better), so make sure you provide a stable environment where features are added and not removed….
Summary • Standardize the colors, icons and display for all BW queries • The basic web print features are not sufficient • The on-line help is a "must have" feature • On-line training is very cost efficient for a large number of casual users • Role menus are easy to add when leveraging standard BW objects • On-line definitions on the context menu are very popular • Controlled releases of new web template functionality is required.
è Americas’ SAP Users’ Group (ASUG) www.asug.com Further Information è Public Web: www.sap.com www.sdn.sap.com IFRAMES: http://www.oreillynet.com/pub/a/javascript/2002/02/08/iframe.html Expressions: http://www.regular-expressions.info/javascript.html Getting Started with BSP Applications: http://tinyurl.com/642c4 CSS for Printing : http://www.w3schools.com/css/css_ref_print.asp CSS Media Types: http://www.w3schools.com/css/css_mediatypes.asp Bookmarks: http://msdn.microsoft.com/workshop/networking/predefined/mailto.asp?frame=true More on Try/Catch : http://www.devguru.com/Technologies/ecmascript/quickref/try...catch.html Cross frame Script : http://msdn.microsoft.com/workshop/author/om/xframe_scripting_security.asp
Questions? Q&A
Feedback Please complete your session evaluation. Be courteous — deposit your trash, and do not take the handouts for the following session. Thank You !