Você está na página 1de 55

How To

Use Business Objects Planning and Consolidation (version for SAP NetWeaver) data in Xcelsius
SAP Product Name: Applicable Product Versions: Version Number Last Updated: SAP Business Objects Planning and Consolidation, version for SAP NetWeaver 7.0 SP1 and above 1.6 June 2009

Enterprise Performance Management


www.sdn.sap.com/irj/sdn/bpx-epm

Copyright 2009 SAP AG. All rights reserved. No part of this publication may be reproduced or transmitted in any form or for any purpose without the express permission of SAP AG. The information contained herein may be changed without prior notice. Some software products marketed by SAP AG and its distributors contain proprietary software components of other software vendors. Microsoft, Windows, Outlook,and PowerPoint are registered trademarks of Microsoft Corporation. IBM, DB2, DB2 Universal Database, OS/2, Parallel Sysplex, MVS/ESA, AIX, S/390, AS/400, OS/390, OS/400, iSeries, pSeries, xSeries, zSeries, z/OS, AFP, Intelligent Miner, WebSphere, Netfinity, Tivoli, and Informix are trademarks or registered trademarks of IBM Corporation in the United States and/or other countries. Oracle is a registered trademark of Oracle Corporation. UNIX, X/Open, OSF/1, and Motif are registered trademarks of the Open Group. Citrix, ICA, Program Neighborhood, MetaFrame, WinFrame, VideoFrame, and MultiWin are trademarks or registered trademarks of Citrix Systems, Inc. HTML, XML, XHTML and W3C are trademarks or registered trademarks of W3C, World Wide Web Consortium, Massachusetts Institute of Technology. Java is a registered trademark of Sun Microsystems, Inc. JavaScript is a registered trademark of Sun Microsystems, Inc., used under license for technology invented and implemented by Netscape. MaxDB is a trademark of MySQL AB, Sweden. SAP, R/3, mySAP, mySAP.com, xApps, xApp, and other SAP products and services mentioned herein as well as their respective logos are trademarks or registered trademarks of SAP AG in Germany and in several other countries all over the world. All other product and service names mentioned are the trademarks of their respective companies. Data

contained in this document serves informational purposes only. National product specifications may vary. These materials are subject to change without notice. These materials are provided by SAP AG and its affiliated companies ("SAP Group") for informational purposes only, without representation or warranty of any kind, and SAP Group shall not be liable for errors or omissions with respect to the materials. The only warranties for SAP Group products and services are those that are set forth in the express warranty statements accompanying such products and services, if any. Nothing herein should be construed as constituting an additional warranty. These materials are provided as is without a warranty of any kind, either express or implied, including but not limited to, the implied warranties of merchantability, fitness for a particular purpose, or non-infringement. SAP shall not be liable for damages of any kind including without limitation direct, special, indirect, or consequential damages that may result from the use of these materials. SAP does not warrant the accuracy or completeness of the information, text, graphics, links or other items contained within these materials. SAP has no control over the information that you may access through the use of hot links contained in these materials and does not endorse your use of third party web pages nor provide any warranty whatsoever relating to third party web pages. SAP How-to Guides are intended to simplify the product implementation. While specific product features and procedures typically are explained in a practical business context, it is not implied that those features and procedures are the only approach in solving a specific business problem using SAP products. Should you wish to receive additional information, clarification or support, please refer to SAP Consulting. Any software coding and/or code lines / strings (Code) included in this documentation are only examples and are not intended to be used in a productive system environment. The Code is only intended better explain and visualize the syntax and phrasing rules of certain coding. SAP does not warrant the correctness and completeness of the Code given herein, and SAP shall not be liable for errors or damages caused by the usage of the Code, except if such damages were caused by SAP intentionally or grossly negligent.

1 Scenario
In this scenario, we will use data from a SAP Business Objects Planning and Consolidation 7.0, version for SAP NetWEaver to feed an Xcelsius dashboard. Additionally, this guide includes the SAP BPC Data Grid which is a new UI element for Xcelsius that can be used to visualize data in a simple grid format.

2 Introduction
In multiple business cases, users may want to feed BPC data to Xcelsius Dashboard. A lot of time, this dashboard needs to include exception based reporting within a table grid as well. Users will have the ability to retrieve data from BPC and visualize it in a grid. This how to guide walks through step-by-step example to pull data from an ApShell Finance cube.

3 Prerequisites
An installed & implemented SAP Business Objects Planning and Consolidation, version for SAP NetWeaver (BPC 7.0 SP1& higher) SAP BusinessObjects Xcelsius Designer 2008 SP01 or higher Adobe Flash Player version 9 or higher Minimal debugging skill around server/web authorization (If you are a decent internet searcher, that may suffice too).

4 Security
Since the provided BPC Services for Xcelsius Integration (SXI) components live within the BPC environment, all of the standard BPC security is inherited. If a user adds a component that attempts to access data values which the user is not privileged to see, those results are filtered out within BPC before the data is returned to the component. This maintains the same high level of security which is present throughout the BPC system. This solution will work only within Active library session of BPC. Hence, once the Xcelsius dashboard is built, it needs to be published inside BPC Web. Users will be able to access only through BPC Web session.

5 Restrictions
2 Dimensions are required Only 2 Dimensions can be used (1 on row, and 1 on column) Dynamic ranges are not supported

The number of values being returned from the web service is in a static format

6 Web Service URL


After importing the dll file for the web service (instructions provided in the step by step solution section), you will have the ability to get the data in Xcelsius supported xml format. Although the XcelsiusService resides inside of BPC and is aware of your current view of the system, it still needs to know which specific pieces of data youre requesting to use inside of your component. We will outline how to create the parameters that are required to retrieve data from the XcelsiusService.

Sample URL: http://localhost:1080/OSoft/App/XcelsiusService/QueryResults.asmx/Results?AppSet=APSHEL L&App=PLANNING&showRowHeaders=true&showColumnHeaders=true&Query=MyRange:TI ME:2006.JAN,2006.FEB,2006.MAR,2006.APR,2006.MAY,2006.JUN|P_ACCT:CE0004010,CE 0004020,CE0004030,CE0004210,CE0004220,CE0004230 Breakdown: The parameter string (string after = sign) being passed into XcelsiusService is comprised of the following components: The name of the Named Range of Xcelsius being updated The Dimensions to be updated o 2 Dimensions are required o The ID of the dimension is required The members being requested from the dimensions o The ID of the members being requested is required The predefined Current View values to use o These are values that you do not want to use from the current view Basics: The parameter string is a set of arguments surrounded by an identifier. The base component of the parameter string is displayed below. All arguments to this parameter will be added between the quotations and will eventually define a simple BPC query. ?Query= Named Range: The first argument in the parameter string is the name of the Named Range from the Excel document that was used as the model for your Xcelsius component. ?Query=MyRange Column Dimension:

The next argument of the parameter string is the ID of the dimension that is going to be positioned across the columns. This follows the Named Range argument and is separated by a colon. ?Query=MyRange:ColumnDimensionID

Members requested from the Column Dimension: Following the ID of the column dimension being requested is a comma separated list of the desired members from within that dimension. You can request parent members and members with Dimension Formula, Expansion functions on parent nodes are not supported (For example, BAS(parent) cant be used in the URL). This comma delimited list is separated from the ID of the column dimension by a colon. ?Query=MyRange:ColumnDimensionID:MemberID1,MemberID2, , MemberIDx

Dimension Separator: A special character, the vertical bar, is used to separate the column dimension and member arguments from the row dimension and member arguments. ?Query=MyRange:ColumDimensionID:MbrID1,MbrID2| Row Dimension: Following the vertical bar, the next argument is the ID of the dimension that will be placed down the rows. This will be followed by a colon in the same fashion as the ID of the column dimension. ?Query=MyRange:ColumnDimID:MbrID1,MbrID2|RowDimID:

Members requested from the Row dimension: The next argument in the parameter string is a comma separated list of desired members from within the requested row dimension. You can request parent members and members with Dimension Formula, Expansion functions on parent nodes are not supported (For example, BAS(parent) cant be used in the URL). This is requested in the same fashion as the column members above. ?Query=MyRange:ColumnDimID:MbrID1,MbrID2|RowDimID:MbrID1, MbrID2, ,MbrIDx

Predefined Current View Values: The Current View values that you have predefined in your query string will override the users Current View values. To use this argument in the parameter string after you have entered the members for the Row dimension insert a vertical bar, |, followed by a Dimension:Member pair to define the dimension and member you want to override in the users Current View.

?Query=MyRange:ColumnDimID:MbrID1,MbrID2|RowDimID:MbrID1,MbrID2|CVDim:CVMembe r To add more predefined Current View values enter a | after your Dimension:Member pair followed by a new Dimension:Member pair. ?Query=Range:ColumnDimID:MbrID1,MbrID2|RowDimID:MbrID1,MbrID2|CVDim1:CVMember| CVDim2:CVMember| |CVDimX:CVMember Application Set & Application Values: The Application Set and Application values that you have predefined in your query string will override the users application set and application values. To override the Application Set Value append &AppSet= to the end of the query string followed by the value of the Application Set you want to use. To override the Application Value append &App= to the end of the query string followed by the value of the Application you want to use. Example: ?Query=Range:ColumnDimID:MbrID1,MbrID2|RowDimID:MbrID1,MbrID2|CVDim1:CVMember| CVDim2:CVMember&AppSet=ApShell&App=Finance Getting Row and Column member names: By default, the web service will not return member names. In order to get the members also, below parameters need to be added in the URL. To display the members of the row: &showRowHeaders=true To display the members of the column: &showColumnHeaders=true The parameter string above should be used in Xcelsius as a complete URL as shown in the sample at the beginning of this section.

7 Installation
7.1 Installing the BPC Data Grid
In order to use the BPC Data Grid in Xcelsius, you must first install the component using the Xcelsius Add-On Manager as covered in this section. NOTE: This latest version of this guide install the BPC Data Grid 1.1. Any models which use the old version, will need to drop the component, and recreate it again.

1. Open the Xcelisus Add-On Manager application by selecting Manage Add-Ons from the File menu while inside Xcelsius. The Add-On Manager will then open, showing all of the installed Add-Ons. Here you can install or remove them.

2. Choose Install Add-On, and browse to the supplied BPCDataGrid.xlx file on your machine, and click Open.

3. The component is now installed. Xcelsius will need to be restarted before the new component will show in the Add-Ons folder.

7.2 Installing the BPC SWF Launcher


In order to launch swf files within Content Library, the BPC SWF launcher is required. The following steps show how to install the BPC SWF Launcher. 1. Launch SAPGUI

2. Logon to your system

3. Go to transaction UJFS.

4. Launch File Service for the AppSet youd like to enable this functionality for.

5. Navigate to the documents folder and choose Upload document from PC.

6. Choose the bpcswfloader.html file which comes with this guide and click Open.

7. You will see that this file has been uploaded successfully.

8 The Step By Step Solution Building an Xcelsius Dashboard


8.1 Xcelsius Dashboard Creation Part 1 Adding the BPC Data Grid and Using Live SAP BPC Data In this step, we will use the web service to create a connection inside Xcelsius and build a simple pie chart by pulling data through the web service.

1. Launch Xcelsius (Windows Programs Xcelsius Xcelsius 2008.

2. Choose File -> New -> New with Spreadsheet

3. Choose the SampleData.xls file that comes with this guide.

4. Update cell C1 with your hostname and port.

5. Inside Xcelsius 2008, go to Data Connections to create new connection.

6. In the prompted window, click on Add and choose XML data.

7. Provide a Name and change the MIME Type to Text/xml.

8. Choose the ( Data URL.

) icon for the XML

9. Choose cell C1 and click OK. NOTE: To create a different dataset, this URL can be updated based on the details in the previous section, or the sample data sheet formulas can be updated based on the layout of this sample data sheet.

10. Check on Enable Load

11. Create a range by clicking on + button. Provide Range Name & Range as per your requirement.

12. Give a name for the range. This name should be same as the name in the URL.

13. Clicking on the excel button allows you to choose the desired rows and column. Here, we chose B27:H33 as we will be pulling 6 rows and 6 columns of data & 1 row and 1 column of member names. Once the range chosen, click OK.

14. Then, go to Usage tab and check on Refresh On Load option. Then, close the connection window.

15. Drag and drop the BPC Data Grid component from the Add-Ons section of the components list, into the Xcelsius layout editor.

16. You should then see a grid appear in the layout editor with some default data.

17. You should also see the property sheet to the far right. Click on the general tab.

18. To start by binding the Header Data property to the header row of the excel spreadsheet, click the Bind to Cell ( ) icon.

19. Here, choose cells B27:H27 to choose all the cells as part of the header row. Then click OK.

20. Choose the cells to specify the detail data by choosing the ( under Detail data. ) icon

21. In this example, choose cells B28:H33 to specify all the detailed data for the BPC Data Grid.

22. The Detail Data which is bound from the excel spreadsheet, should now be showing in the data grid in the layout editor.

23. In the File Menu, choose Preview.

24. As we flagged this for live data and we arent currently authenticated to BPC, well get Error #2032. You can still preview the sample data by clicking OK. To get live data, well show how to publish this Xcelsius model to BPC in later sections.

25. Here we see the first preview of the BPC Data Grid. As you can see, we need to do some formatting which is discussed in the next section.

8.2 Xcelsius Dashboard Creation Part 3 Formatting and Adding Exception Highlighting to the BPC Data Grid In this step, we will show how to format the BPC Data Grid and add some exception highlighting.

26. Set the properties of the Column 2006.JAN to be Right aligned and have formatting 999,9999.99. Do the same thing for 2006.FEB, 2006.MAR, 2006.APR, 2006.MAY, and 2006.JUN.

27. You will notice the changes take effect to the grid in the layout editor immediately.

28. Click on the Behavior tab. Here you can set the Entry Effect which will be played when your component is first drawn by the flash player. Set the Effect Type to WipeDown.

29. Click on the Appearance tab. Here you can change the look of the grid, such as its colors as well as the font properties. For now, we will leave all of these properties set as their defaults. You may wish to go back and play with these settings at a later time.

8.3 Xcelsius Dashboard Creation Part 4 Adding Exception Highlighting to the BPC Data Grid This section allows you to set up the alert function for the grid. Depending on the settings made here, numeric values in the grid will have an alert background color. For example, lets say that the alerts are set By value and a cells value has a value below 30, then it will be colored

green, if the value is between 30 and 70, then it will be colored yellow, and if greater than 70, it will be colored red.
30. Click on the Alerts tab.

31. Click Enable Alerts. You will then be able to modify the alert settings.

32. Set the radiobutton for As percent of target, and enter 300,000 into the target field. You can also bind this property to a cell of the excel spreadsheet by clicking the Bind to Cell icon next to the input field. Leave the Alert Thresholds values as they are for now. You can change these values by clicking in the cell, changing the value, and pressing Enter. You may also change the associated color of the range by clicking on the color picker and choosing a new color. 33. Change the colors of the thresholds as seen in this screenshot.

34. As shown in the figure to the right, nothing has changed in the layout editor because, even though we have turned on the Alerts in the Alerts tab, we still need to go to the General tab, and turn on the Alerts function at the column level.

35. Click on the General tab, and change the Alerts Enabled property for the 2006.JAN column to true. You will notice that once this property is changed, the alert colors will take effect in the layout editor.

36. Next choose File, then Preview from the main menu.

37. The component will then be drawn in the flash player. Notice the entry effect. Now, click on the 2006.JAN column header to sort this column up or down.

38. You can also move the columns around by dragging and dropping them.

8.4 Xcelsius Dashboard Creation Part 5 Adding a Trend Chart In this step, we will add a trend chart to trend sales for all the regions

39. Go to cell B35 and type Selected Row

40. Click on the BPC Data Grid

41. In the property sheet on the General Tab, choose Selected Row

42. Specify Range B37:H37 and click OK.

43. Drag the Line Chart object under Charts folder to chart area.

44. Rename the line chart to SG&A Expenses.

45. Rename Subtitle to 1st Half 2006

46. Under Category (X) Axis, type Periods, and under Value (Y) Axis, type SG&A $

47. Reference cells B27:H27 to B36:H36. Meaning B36=B27 C36=C27 D36=D27 E36=E27 F36=F27 G36=G27 H36=H27

48. Under Data, choose Data in Rows and click the ( ) icon.

49. Choose cells B36:H37 and click OK.

50. Click Preview

51. Here, you will see the line chart. When you click on a row, in the table, it will trend this within the chart.

8.5 Xcelsius Dashboard Creation Part 5 Adding the Pie Chart and Combo Box Using Live SAP BPC Data In this step, we will use the web service to create a connection inside Xcelsius and build a simple pie chart by pulling data through the web service.

52. In cell B39 type in Pie Chart Data

53. Drag the Pie Chart object under Charts folder to chart area.

54. Then, pull in Combo Box from the Selectors folder. We will use this combo box to choose the desired month data.

55. Choose combo box by placing the cursor on the combo box object.

56. Within the task pane on the right, click on this icon ( ) under labels

57. Choose the column titles from the excel in the range (in this case, C27:H27 where the period names will be returned from the web service) and click OK.

58. In the Data Insertion option, choose Column as Insertion Type.

59. For Source Data, choose the same range where BPC data will be returned on the horizontal axis.

60. In this case, C28:H33 ignoring the member names in rows and columns. Click OK after selecting the range.

61. For Destination, choose different set of 6 cells in one column. The combo box will send the source data to these destination cells depending upon the period chosen. We will be using these destination cells as source data for the pie chart. In this example, we will choose cells C40:C45.

62. Reference the source data names against the destination cells so that we can refer these names in the pie chart. To do so, set the following: B40=B28

63. Reference all the six rows: B40=B28 B41=B29 B42=B30 B43=B31 B44=B32 B45=B33

64. Click on the Pie Chart.

65. Under the General Tab, set the Chart Title as SG&A Expenses

66. Set the Subtitle as 1st Half 2006

67. In the Data section, choose Data in Columns for Values. Then, click on the excel button to choose the desired cells.

68. Under Data -> Values, click this icon ( ).

69. Specify cells C40:C45. Click OK.

70. Under Labels, choose the (

) icon.

71. Specify the cells B40:B45 now.

72. Press Save.

73. Choose the desired file name and folder.

74. We will be publishing this dashboard as a flash (swf) file in BPC web. Export this as Flash file. (Click on File Export Flash (SWF))

75. Choose the desired location and file name. Click on save. In this example, Ive specified filename SG&A Expenses.swf

76. The output model should look as follows.

8.6 Publish the dashboard in BPC Content Library To ensure the BPC user trying to use the Xcelsius model is authenticated correctly, the deployed Xcelsius model must run inside the BPC Virtual Directory on IIS. In order to do this, simply upload your generated Xcelsius model to the BPC Content Library.

1. Now, Go to BPC Web (http://<hostname:port>/osoft/ BPC Web)

2. Click on Content Library from the action pane.

3. Click on Post Document from the action pane.

4. Click Browse.

5. Choose the SGA Expenses.swf that we created from Xcelsius.

6. Click the green check.

7. Choose the users and Teams you want to grant access to. In this case, we chose All Users. Click the green check.

8. Click the green check.

9. Click the green check.

10. Click the green check.

11. Click on Add a new web page. (If you dont see this option, you do not access to create a page).

12. Give a page name. Then, click OK (Green button in the bottom).

13. Drag and drop the Website object from list to Page area.

14. Give a tile for the page and increase the height to 500 pixels from the drop down.

15. Click the green arrow in the bottom to go to next step.

16. Here we will provide the URL to the BPC SWF Loader and pass the flashfile, width, and height to the loader. To do so, replace the portions in red below to get the correct syntax: servername:port/OSoft/Common/Sh owFile.aspx?File=bpcswfloader.html &TYPE=DOC&flashfile=flashfile&wid th=number&height=number In this case, the URL is localhost:1080/OSoft/Common/Sho wFile.aspx?File=bpcswfloader.html& TYPE=DOC&flashfile=sgaexpenses. swf&width=800&height=500 Make sure you type or paste only the part after http:// in the URL. Click OK.

17. Click on Set access to this Web page.

18. Choose Teams or users from the view by and bring them to right hand side window to give them access to this page. Then, click OK.

19. Then, click on Save and show me the finished Web page. System will show the Xcelsius Dashboard now.

20. Here you will see the Xcelsius page within content library. Any changes to current view (except for the hardcoded dimensions in the Web Service URL) can be changed in the current view here to update the Xcelsius model with live BPC data. See the troubleshooting section if you are having issues in viewing your dashboard.

8.7 Setting the dashboard as starting page of BPC Web Here, we will see how we can set the above Xcelisus Dashboard as the starting page within the AppSet for BPC Web.
1. Display the dashboard from the content library.

2. In the displayed pages URL, look for parameter p_PageSeq= and note down the sequence GUID. In this case, it is tY2sQiEzWl6Ldm0CAVmw9G. We will need this to set this page as initial page.

3. This information is also available in NW ABAP layer table UJH_WEB_CONTENTS

4. Now, Go to BPC Admin (http://<hostname:port>/osoft/ BPC Administration)

5. Click on Set AppSet Parameters in the action pane. (Note that you should be authorized to do this activity. Otherwise, this option wont appear for you).

6. Look for LANDINGPAGEITEM parameter and change that to the sequence GUID which you saw in the web page URL. Then, click on Update button in the top.

7. If the parameter is not found, Maintain the parameter LANDINGPAGEITEM and provide the sequence number which you saw in the web page URL. Then, click on Update button (located in the top).

8. Now, go back to BPC web (http://<hostname:port>/OSoft/ BPC Web). Now, the first page comes with the Xcelsius Dashboard.

9 Troubleshooting
Always make sure that you see the data in XML format in a browser first before you use it inside Xcelsius. You first need to go launch BPC Web. This will make sure required authentication is done in your web session. Make sure all parameters are typed correctly in the URL and dimension & member names are spelled correctly. From the internet, download HTTP debugging tool called Fiddler. If you have the fiddler open when you run the Xcelsius Flash file, that request will be captured in the Fiddler and you can see the detailed error messages & what got returned from your BPC server. Fiddler also tells if there are any authorization issues. You may need to have Crossdomain.xml file (which is available in the internet) in the server after necessary security modification in the file. If you dont see an option which is displayed in the screen shot of this document, you dont have access for that option in BPC. o For posting a document, you would need AccessContentLibrary task access for ZFP interface. o For creating a new page in the web content, you would need CreateWebPage task access for ZFP interface.

You may get Error 2048 when you execute the dashboard inside BPC Web. This is due to security setting of Adobe Flash Player. Follow the below steps to change the flash player settings: o Go to http://www.macromedia.com/support/documentation/en/flashplayer/help/settings _manager04.html#117502. The panel you see in this link is not an image, but, your adobe flash player setting manager itself.

o Change the Global security settings to Always Allow. From this time forward, your browser will allow all flash files to display in your browser. Make sure that this is within your organization security policy. This may need to be carried out all the PCs where from the dash board will be accessed. If you get any other error, most likely it has to do with Adobe Flash Player security. Searching those error message in the internet will normally provide the solution. If you encounter access denined error , as shown below, you will need to setup page security

o To fix the problem, assign read & execute permissions to Users

Você também pode gostar