Copyright
2009 SAP BusinessObjects. All rights reserved. SAP BusinessObjects owns the following United States patents, which may cover products that are offered and licensed by SAP BusinessObjects and/or affliated companies: 5,295,243; 5,339,390; 5,555,403; 5,590,250; 5,619,632; 5,632,009; 5,857,205; 5,880,742; 5,883,635; 6,085,202; 6,108,698; 6,247,008; 6,289,352; 6,300,957; 6,377,259; 6,490,593; 6,578,027; 6,581,068; 6,628,312; 6,654,761; 6,768,986; 6,772,409; 6,831,668; 6,882,998; 6,892,189; 6,901,555; 7,089,238; 7,107,266; 7,139,766; 7,178,099; 7,181,435; 7,181,440; 7,194,465; 7,222,130; 7,299,419; 7,320,122 and 7,356,779. SAP BusinessObjects and its logos, BusinessObjects, Crystal Reports, Rapid Mart, Data Insight, Desktop Intelligence, Rapid Marts, Watchlist Security, Web Intelligence, and Xcelsius are trademarks or registered trademarks of Business Objects, an SAP company and/or affiliated companies in the United States and/or other countries. SAP is a registered trademark of SAP AG in Germany and/or other countries. All other names mentioned herein may be trademarks of their respective owners.
C O N T E N T S
Course introduction.....................................................................................................11 Course description.......................................................................................................12 Course audience...........................................................................................................13 Prerequisites.................................................................................................................14 Additional education...................................................................................................15 Level, delivery, and duration.....................................................................................16 Course success factors.................................................................................................17 Course setup.................................................................................................................18 Course materials..........................................................................................................19 Learning process .........................................................................................................20
Lesson 1
Creating a Visualization
Lesson introduction.......................................................................................................1 Producing interactive visualizations...........................................................................2 Presenting data visually........................................................................................2 Using visual data....................................................................................................3 Choosing the right Xcelsius product...................................................................4 Setting up a visualization with embedded data................................................4 Setting up a visualization with connected data ................................................5 Getting around in Xcelsius...........................................................................................7 Using the Xcelsius interface..................................................................................7 Using toolbars.......................................................................................................10 Using the Components Browser........................................................................14 Using the Object Browser....................................................................................17 Using the Property sheets...................................................................................18 Using the canvas...................................................................................................18 Changing the layout of the interface.................................................................19 Using document properties................................................................................20 Using global settings............................................................................................21 Finding help..........................................................................................................22 Working with your Excel workbook.........................................................................24 Designing your Xcelsius visualization..............................................................24 Designing your Excel workbook........................................................................24 Working with your Excel workbook ................................................................26 Applying best practices to your Excel workbook design...............................28 Replacing the embedded Excel workbook.......................................................29 Copying cells to the embedded Excel workbook............................................30 Using recommended Excel functions................................................................30
iii
Recognizing unsupported Excel functions.......................................................31 Visualizing data with charts.......................................................................................32 Using charts for visualization.............................................................................32 Choosing a chart type..........................................................................................32 Adding a dual axis to your chart ......................................................................39 Taking advantage of dynamic labels and titles...............................................40 Using data in ranges............................................................................................40 Activity: Setting up a chart with a data range ................................................43 Using data in a series...........................................................................................44 Defining category axis labels..............................................................................45 Activity: Setting up a chart with a data series ................................................46 Deciding when to use a range and when to use a series................................47 Anticipating future data by ignoring end blanks............................................47 Activity: Setting up a chart to ignore end blanks ...........................................48 Using Xcelsius components........................................................................................50 Understanding input and output components................................................50 Understanding single value components.........................................................50 Using single value component types.................................................................51 Working with percentages..................................................................................53 Using play options...............................................................................................55 Using the Image component...............................................................................56 Using a container component.............................................................................58 Understanding alerts...........................................................................................58 Setting up alerts....................................................................................................60 Understanding text components........................................................................62 Understanding other component types............................................................64 Understanding the Calendar component.........................................................67 Using the Trend Analyzer...................................................................................69 Adding Print and Reset buttons.........................................................................72 Understanding the History component............................................................73 Understanding web connectivity component types.......................................74 Activity: Performing "what-if" analysis ...........................................................76 Applying best practice for designing models..........................................................78 Optimizing design................................................................................................78 Removing yourself from the data......................................................................78 Starting with pencil and paper...........................................................................79 Designing a layout based on how users need to view data...........................79 Creating a mockup of the dashboard................................................................81 Following Excel best practices............................................................................82 Avoiding getting lost in the visualization........................................................83 Utilizing summarized data.................................................................................84 Choosing a component based on your data.....................................................84 Activity: Designing a visualization...................................................................85 Distributing your visualization.................................................................................87 Previewing your model and creating Snapshots.............................................87 Choosing the right output for your audience..................................................88 Making your model available to others for re-use..........................................90
iv
Lesson 2
Formatting a Visualization
Lesson introduction.....................................................................................................97 Applying formatting options.....................................................................................98 Using color schemes.............................................................................................98 Creating custom color schemes........................................................................100 Formatting text in your visualization..............................................................103 Changing the layout of components...............................................................103 Using themes and template to apply formatting..................................................105 Using themes.......................................................................................................105 Using predefined templates..............................................................................107 Using user-defined templates ..........................................................................108 Activity: Formatting a model...........................................................................110 Quiz: Formatting a visualization.............................................................................112 Lesson summary........................................................................................................113
Lesson 3
Alleviating common symptoms.......................................................................144 Activity: Creating a presentation-ready visualization..................................146 Quiz: Adding interactivity to a visualization........................................................148 Lesson summary........................................................................................................149
Lesson 4
vi
Using the Portal Data connection type with a Provider connection ..........183 Using the Portal Data connection type with a Consumer connection ...............................................................................................................................183 Activity: Using Portal Data with Dashboard Builder...................................183 Review: Connecting to Portal Data..................................................................185 Using Live Office data...............................................................................................186 Understanding the Live Office connection ....................................................186 Setting up a Live Office connection ................................................................188 Activity: Setting up the workbook for use with Live Office data...............189 Activity: Populating your embedded Excel workbook with Web Intelligence data using Live Office..................................................................190 Connecting to SAP data.....................................................................................191 Working with Business Requirements...................................................................193 Gathering business requirements....................................................................193 Deeper Investigation .........................................................................................193 Activity: Visualizing Targets............................................................................193 Analyzing an existing visualization ...............................................................194 Activity: Emulating existing visualizations....................................................194 Quiz: Creating a connected visualization .............................................................195 Lesson summary........................................................................................................196
Appendix A
Answer Key
Quiz: Creating a visualization.................................................................................201 Quiz: Formatting a visualization.............................................................................203 Quiz: Adding interactivity to a visualization........................................................204 Review: Connecting to Portal Data.........................................................................205 Review: Connecting to SAP data.............................................................................206 Quiz: Creating a connected visualization .............................................................207
vii
viii
Lesson 2
AgendaLearners Guide
ix
Course introduction
This section explains the conventions used in the course and in this training guide.
Learners Guide
11
Course description
BusinessObjects Xcelsius Enterprise 2008 enables you to transform Excel workbooks into captivating visualizations with the ability to provide interactive what-if analysis. Use Xcelsius to build engaging dashboards for executives and business users. An Xcelsius visualization provides insight into complex data and delivers confidence to those who will use it to make decisions. As a business benefit, you will be able to connect your dashboards to any data source and provide everyone in your organization with up-to-the-minute personalized data. You'll manage multiple data sources by controlling all live data connections from one central interface. You will improve your productivity by manipulating and linking your data to visually compelling analytics in a single design.
12
Course audience
This course is intended fo rinexperienced BusinessObjects Xcelsius Enterprise 2008 users who need to acquire proficiency with building interactive visualizations based on Microsoft Excel workbooks. Users of Xcelsius Present 2008, Xcelsius Engage 2008, and Xcelsius Engage - Server 2008 will find this course useful, but should be aware that some features and functionality presented in this course do not mirror the exact functionality in their version of Xcelsius.
Learners Guide
13
Prerequisites
While not required for this course, experience with these products and technologies will be helpful: Microsoft Excel
14
Additional education
Not applicable for this offering.
Learners Guide
15
16
Learners Guide
17
Course setup
Refer to the setup guide for details on hardware, software, and course-specific requirements.
18
Course materials
The materials included with the course materials are: Name card Learners Guide The Learners Guide contains an agenda, learner materials, and practice activities. The Learners Guide is designed to assist students who attend the classroom-based course and outlines what learners can expect to achieve by participating in this course. Evaluation form At the conclusion of this course, you will receive an electronic feedback form as part of our evaluation process. Provide feedback on the course content, instructor, and facility. Your comments will assist us to improve future courses. Additional resources include: Sample files The sample files can include required files for the course activities and/or supplemental content to the training guide. Online Help Retrieve information and find answers to questions using the online Help and/or users guide that are included with the product.
Learners Guide
19
Learning process
Learning is an interactive process between the learners and the instructor. By facilitating a cooperative environment, the instructor guides the learners through the learning framework.
Introduction
Why am I here? Whats in it for me? The learners will be clear about what they are getting out of each lesson.
Objectives
How do I achieve the outcome? The learners will assimilate new concepts and how to apply the ideas presented in the lesson. This step sets the groundwork for practice.
Practice
How do I do it? The learners will demonstrate their knowledge as well as their hands-on skills through the activities.
Review
How did I do? The learners will have an opportunity to review what they have learned during the lesson. Review reinforces why it is important to learn particular concepts or skills.
Summary
Where have I been and where am I going? The summary acts as a recap of the learning objectives and as a transition to the next section.
20
Lesson 1
Creating a Visualization
Lesson introduction
In this lesson, you will get to know the interface and tools available in Xcelsius. What you learn in this lesson will be the foundation for all of the workshops you complete throughout the course. After completing this lesson, you will be able to: Describe the benefits of producing interactive visualizations of your data Define the process of producing interactive visualizations of your data Get around in the Xcelsius user interface Work with your Excel workbook Visualize data with charts Use Xcelsius components Distribute your visualization Apply best practices for designing models
All visualizations allow you to interact with a copy of a spreadsheet embedded into the visualization file. You can select items from the drop-down menu in the Xcelsius visualization to change the display in the chart.
Alerts have also been set up with a "red zone" below $2750, and a target of $4000.
Creates interactive data presentations from Microsoft Excel spreadsheets. Creates live dashboards from personal and corporate data sources. Consumes new or re-uses existing Web services and live data connection feeds. Xcelsius Engage 2008 is limited to using a single web service. Creates live dashboards from personal and corporate data sources without having to manually write Web services and live data connection feeds. Xcelsius Engage-Server 2008 is bundled with Flynet Web Services Generator. Creates secure and personalized business intelligence (BI) dashboards connected to BusinessObjects Enterprise or BusinessObjects Edge Series from Business Objects, an SAP company. Easily connects to live enterprise data in SAP or BusinessObjects software.
To connect to other data sources, use the Data Manager to create live data connections that will populate your visualizations. Build and format the visualization Add a combination of useful components (for example charts, gauges, tables, and maps) to your visualization and then bind those components to cells, rows, or ranges of data in your Excel workbook. Use the property sheets to set alerts, define behavior and customize the appearance of those components. 2. Publish the visualization By clicking a single toolbar button in Xcelsius, your visualization can be produced as an interactive Flash file (SWF). Other toolbar buttons will produce the Flash file and automatically embed that Flash file in a PowerPoint presentation slide, Microsoft Word document, Outlook email message, or an Adobe PDF document. Another toolbar button creates the Flash file as well as an HTML document and folder structure that will display your Flash file in a web browser. 3. Deploy the published visualization Host your Flash file in any environment including BusinessObjects Enterprise XI 3.1. Use HTML to call your SWF file on a web server. The only requirement for the end user is current version of the Adobe Flash Player. Excel is only required at design-time, viewers are not required to have Excel to view your visualization.
Once the connection is defined you will indicate the refresh rate and direct loading and idle messages to your visualization. 4. Publish the visualization Connected visualizations allow users with the appropriate permissions to view visualizations based on live data.
2. Navigate to the appropriate location for the file. 3. In the File name field, enter a unique name for the file. 4. Click Save. The file is saved and the title bar updates to reflect the specific name for the file.
2. Navigate to and select the Xcelsius file. 3. Click Open. Note: If there is another Xcelsius file already open, you will be prompted to save that file before opening the new file. Click Yes or No as appropriate. The file opens in the Xcelsius interface.
Using toolbars
These toolbars contain all of the features that you will use most frequently when building visualizations in Xcelsius.
Standard toolbar
Button Name Description
Create a new visualization. Open an existing visualization. Save changes to the current visualization. Print the current visualization.
10
Button
Name
Description
Cut the selected components from the canvas. Copy the selected components to the clipboard. Paste any components on the clipboard to the canvas. Undo the last action. Repeat the last action that was undone. Toggle between one of two different cursor tools. The white arrow pointer allows you to click and drag components from the Components Browser to the canvas. The black crosshairs allow you to click in the canvas to add the component selected in the Components Browser. Click to add a pre-selected component to the canvas. Note: Only one of the Selection Tool and the Component Tool buttons can be active at a time.
Component tool
Import spreadsheet
Specify an external Excel workbook to replace the default or current embedded Excel workbook to act as the data source for the visualization. Use this button to launch the Data Manager, where you can create new and edit existing connections to other external data sources. Increase the size of the canvas by small increments. Decrease the size of the canvas by small increments. Reduce the canvas to align with the edges of the components on it.
Manage connections
11
Button
Name
Description
Quickly re-arrange the screen using one of four preset configurations: My Workspace Canvas Excel Canvas and Excel
Preview
Export toolbar
Button Name Description
Publish to SWF format and embed the file in a new PowerPoint slide presentation. Publish to SWF format and embed the file in a new Word document. Publish to SWF format and add the file as an attachment to a new Outlook email message. Publish to SWF format and embed the file in a new PDF document. Publish a visualization and add it to the BusinessObjects Enterprise. Users of BusinessObjects Xcelsius Engage Server 2008 will not have this option.
Export to Outlook
Export to PDF
Themes toolbar
Button Name Description
Change Theme
12
Button
Name
Description
Colors
Format toolbar
Button Name Description
Group components
Locks components together so they cannot be moved individually. Unlocks grouped components so they can be moved individually. Align the left edge of selected components. Align selected components horizontally through the middles of the components. Align the right edge of selected components. Align the top edge of selected components. Align selected components vertically through the centers of the components. Align the bottom edge of selected components. Horizontally distribute selected objects equal distances from each other. Vertically distribute selected objects equal distances from each other. Make the selected components the same width relative to the first component in the selection.
13
Button
Name
Description
Make the selected components the same height relative to the first component in the selection. Make the selected components the same size relative to the first component in the selection. Bring component to the top layer. Send component to the bottom layer. Bring a component forward one layer. Send a component backward one layer.
14
Or in a tree menu:
15
Or in a list menu:
16
Objects at the top of the Object Browser list are closest to the canvas. New components are added to the bottom of the Object Browser list. Therefore, they reside on the top-most layer of the visualization.
17
To change the order of an object relative to other objects, select the object and click the up or down arrow. To delete an object, select the object and click Delete in the toolbar.
General
Use the General Property sheet to bind the component to the data in the embedded Excel workbook. Use the Drill Down Property sheet to enable the ability to drill into a component to get more data. This functionality is available for charts only. Th Use the Behavior Property sheet to set limits on numeric values and enable dynamic visibility. Use the Appearance Property sheet to apply formatting to individual components. Use the Alerts Property sheet to color-code performance indicators. This functionality is not available for all components.
Drill Down
Behavior
Appearance
Alerts
18
Note: The canvas is increased in increments of five pixels in all directions each time you click the button. To decrease the canvas size, click Decrease canvas. Note: The canvas is decreased in increments of five pixels in all directions each time you click the button. To resize the canvas to the dimensions of the components on the canvas, click Fit Canvas to Components. To resize the canvas to the dimensions of the canvas pane in the Xcelsius interface, click Fit Canvas to Window. The canvas size adjusts as specified.
To hide a window, click the Auto Hide icon ( ). To unhide a window, move the cursor over the docked pane to display it and click the Auto Hide icon again. To apply a Quick View, from the View menu, click Quick Views and select the appropriate layout.
19
While you can use Embedded Fonts for Xcelsius 2008, for best results use Global Fonts. If working with a visualization migrated from Crystal Xcelsius 4.5, it is recommend that you avoid using embedded fonts.
20
3. To use a global font, do the following: a. Select the Use Global Font check box. b. In the associated drop-down list, select the desired font. c. Choose one of the following options: To not embed the font, select the Use Device Fonts (Fonts will not be embedded) option. To embed the font, select the Use Embedded Fonts option. 4. To add a description to the document, enter the text in the Description pane. 5. Click OK.
21
Finding help
There are several sources of help in Xcelsius: Quick Start From the Help menu, select Quick Start to show or hide the Quick Start Wizard which contains Quick Start tutorials. Xcelsius Help From the Help menu, select Xcelsius Help to display a searchable HTML version of the Xcelsius 2008 User Guide. Context-based help movies Clicking in a property sheet will play a context based help movie that walks you through concepts related to the property.
22
2. Do any of the following: To browse help topics in tree format, click the Content tabs, expand the branches of the tree, and select the help topic you want to view. To browse an alphabetical list of help topics, click the Index tab, scroll through the list, select the help topic you want to view, and click Display. To search for a help topic directly, click the Search tab, enter the keywords in the Type in the word(s) to search for field, click List Topics, select the help topic you want to view, and click Display. Note: Keep in mind that, if you enter more than one word to search for, the list includes topics that meet any of the search terms. The help topic displays in the pane on the right.
23
Tip: Design your model by first sketching it on paper. Retain this sketch during the creation of your Xcelsius visualization to help speed development and illustrate flaws in your design as early as possible.
24
You can enter highly aggregated data directly into the spreadsheet and visualize it, so there is no need for a database. You can also pull in highly aggregated data from external sources, including Web services, XML, and databases. 2. Calculation Engine In addition to Microsoft Excel having a very familiar and flexible formula language, it also provides a calculation engine. 3. Eventing Model When a cell changes, we get a data change event. This event is primarily used to instruct Excel to recalcuate cell values, but this data change event can be used to kick off other processes too. A visualization with embedded data uses only the data and formulas from the original Excel file. The visualization is completely self-contained, and does not rely on either Excel or on external data sources once it is exported to a SWF file format.
A connected visualization also uses the formulas and metadata from Excel. In addition, it allows you to configure connectivity to data from BusinessObjects Enterprise or any other external XML-compliant live data source to connect directly to your published SWF visual (visualization). Once the visualization is deployed, Excel and Xcelsius are no longer needed: they are tools used only during design time. Once the visualization is exported to a SWF file format, it relies only on the external data source for live data connectivity.
Note: Users of BusinessObjects Xcelsius Engage Server 2008 do not have this option.
25
26
Tips for working with the embedded Excel workbook: Although the embedded spreadsheet is a fully functioning Excel spreadsheet, not all Excel functions are supported. Xcelsius 2008 does not support macros, conditional formatting, and some formula functions. Xcelsius 2008 supports moving bound data ranges. For instance, if your chart source data range needs to be moved down a row to fit in the title, simply select the range and move it to its new location. Xcelsius 2008 retains the new information and references the new range. However, if only part of the range is moved, the bound cell reference remains the same. If only part of the range is moved and you want the new location referenced, you must open the component's Properties panel and rebind the cell reference to the new location. The embedded spreadsheet allows you to change the sort order of your data. However, this action is not read as an event by Excel, and as such does not prompt Xcelsius to update in design mode. The new sort is reflected in Preview mode or the exported visualization. An update can also be forced by rebinding the range in the component. Tips for working with Excel. Imported data overwrites all data in the current embedded spreadsheet but the components retain their cell-binding locations. You can copy and paste cells between Xcelsius 2008 and Excel. Excel values and formulas can be copied into Xcelsius 2008, but conditional formatting of cells is not retained. Xcelsius 2008 opens an instance of Excel that runs in the background. Although you can open a second instance of Excel, you cannot copy formulas between the instances. If you need to use Excel and Xcelsius 2008 files simultaneously, first open Xcelsius 2008, and then open your Excel files using the Windows Explorer. If you need to keep Excel and Xcelsius 2008 files synchronized, make your updates in the Xcelsius 2008 embedded spreadsheet and then export the data to an Excel spreadsheet.
27
Xcelsius 2008 imports Excel files by copying the spreadsheet data and inserting the data into the Xcelsius 2008 embedded spreadsheet. Once data is imported, it is no longer linked to the original Excel spreadsheet. Any changes you make to the original Excel file do not appear in the embedded Excel workbook, nor do any changes to the embedded spreadsheet appear in the original Excel file. If you are using Excel 2003, you can see your default toolbars. Toolbar buttons not related to working with the data are disabled (Save, Open, Print, and so on.). These disabled buttons are functions that are handled by Xcelsius. The embedded Excel workbook is saved when the XLF model is saved using the Xcelsius Save functions. If you are using Excel 2007, you can see the ribbon displayed at the top of the program. In addition to the disabled buttons, the drop-down menus are disabled in the ribbon. You can add Excel functionality to the embedded Excel workbook by right-clicking any Excel toolbar and adding the toolbar with the desired functions.
28
For more information on Xcelsius 2008, including best practices, forums, and white papers, refer to the following Web sites. Xcelsius 2008 Features http://www.businessobjects.com/product/catalog/xcelsius/ Xcelsius 2008 SAP Community Network https://www.sdn.sap.com/irj/sdn/crystalreports-xcelsius Business Objects Webinar Series https://www.sdn.sap.com/irj/scn/businessobjects-webinars Other useful sources of information for Xcelsius 2008 on the Web: Interactive Data Visualization blog by Ryan Goodman: http://ryangoodman.net/blog/ The Xcelsius Journal: http://www.xcelsiusjournal.com/ DataPig Technologies Xcelsius Tips and Tricks (Crystal Xcelsius 4.5): http://www.datapigtechnologies.com/XcelsiusMain.htm
29
The contents of the source spreadsheet are imported into the embedded Excel workbook for the Xcelsius file. Note: You can make changes to the contents of the embedded workbook because the Xcelsius file is not connected to the original spreadsheet. If you re-import the original spreadsheet, any changes you have made to the embedded content will be overwritten.
30
To see the list of Excel functions that are supported by Xcelsius 2008, search for Supported Excel Functions in Xcelsius Help (Press F1 or select Xcelsius Help from the About menu). Database functions such as dsum and dcount may also slow the performance of your Xcelsius model. To view a full list of Excel functions that Xcelsius supports, consult the Xcelsius 2008 User Guide.
31
Line chart, Area chart XY chart, Bubble chart Bar chart, Stacked bar chart Pie chart, Radar chart OHLC chart, Candlestick chart
32
Line chart
A single- or multi-line chart is ideal for showing tendency over a period of time. Use this chart in models that emphasize a trend line or a continuing sequence of data. The Dual Axis feature allows you to plot a series on either the Primary or Secondary axis with this chart.
Pie chart
A pie chart represents the distribution or participation of each slice (item) over a certain total that is represented on the overall value.
OHLC chart
An OHLC chart is used primarily to display stock data. Each marker corresponds to the four stock price values, which are represented as lines attached to the marker.
33
Candlestick chart
A candlestick chart is used primarily to display stock data. Each marker corresponds to four stock price values - open, high, low, and close - which are represented as colors.
Column chart
A single- or multi-column chart is ideal for showing and comparing one or more items over a period of time or in a specific range of values. The Dual Axis feature allows you to plot a series on either the Primary or Secondary axis with this chart.
34
Bar chart
A single- or multi-bar chart is ideal for showing and comparing one or more items over a period of time or in a specific range of values. The Dual Axis feature allows you to plot a series on either the Primary or Secondary axis with this chart.
35
Combination chart
A combination column and line chart is ideal for displaying a range of values and a trend line for those values. The Dual Axis feature allows you to plot a series on either the Primary or Secondary axis with this chart.
Bubble chart
A bubble chart is a powerful analytic tool that lets you compare a group of items or series based on three different parameters. It has an X axis and a Y axis to represent the item location over the chart area, and a Z value to represent the item size.
36
XY chart
An XY chart displays data that requires two dimensions to complete the analysis. The XY chart shows each data point as a result of the intersection of X values and Y values.
Area chart
An area chart is a variation on the line chart where the area below the line is filled in to give greater impact to the visualization. The usual area charts are enhanced in Xcelsius with transparency effects, which make them a very effective visualization for comparing trends. The Dual Axis feature allows you to plot a series on either the Primary or Secondary axis with this chart.
37
Radar chart
A radar chart allows easy comparison of values in a radial layout.
38
Charts with a dual axis can also be used to visualize two units of measure on one trend line.
You can use the Dual Axis feature on these charts: Line chart Column chart Stacked column chart Bar chart Stacked bar chart Combination chart Area chart Stacked area chart
39
It is always a best practice to bind labels and titles to a cell in your embedded Excel workbook, rather than specifying them manually. Binding labels to cells ensures that your components are updated if you re-import the source file, provided the cell reference hasn't changed. If you enter the value manually, changing the information in the source file and re-importing it does not have any effect on those properties.
Note: Some fields are never updated, even if the source file is re-imported. These are known as static data sources, and they are available only in rare situations, such as the display status key for dynamic visibility.
40
41
The Property sheets change to reflect the configurable properties for the chart.
2. On the General property sheet, for the Chart, Subtitle, Category (X) Axis, and Value (Y) Axis fields, which provide labels for the chart, do one of the following: To manually enter labels, type the titles in the appropriate fields. To bind the labels for the chart to the values in specific cells, click the button to the right of each field to activate the Select a range dialog box, select the cell, and click OK. 3. Select the By Range option.
42
The restriction on using a data range is that all of the data that you want to represent in your chart must be located in a contiguous block in the Excel file. It can be a single column or row, or multiple columns or rows, but all of the data must be located together. If you are dealing with multiple columns or rows, Xcelsius automatically creates series for the data based on the cells you select. 4. Click the button to the right of the field associated with the By Range option to activate the Select a range dialog box. 5. In the embedded workbook, select the range of cells that contains the appropriate values. 6. Click OK. 7. Select the Data in Rows or Data in Columns option as appropriate. 8. Click Preview. The chart now displays the actual values from your source file.
Instructions
1. Create a new Xcelsius document and save it as GrossSales2007.xlf . 2. Import the data in the Chart_Range.xls workbook from the Activity_Resources folder into GrossSales2007.xlf. 3. Add a column chart to the canvas and enter or bind the titles to the data as appropriate. 4. Bind the column chart to the data range containing the gross sales for 2007. Tip: Make sure to include the monthly headings so that category labels are automatically created. You should have five series based on the data range. 5. Resize the chart and the canvas as required and preview the model.
43
6. Save your changes. Compare your visualization to SOLUTION_GrossSales2007.xlf in the Activity_Resources folder to check your work.
If possible, try to set up your data so that you can use a data range instead of defining the series one at a time. It's a good way to streamline the process of developing your models.
44
You cannot define the category axis labels until you have specified at least one data series for the chart. Once the option is enabled, you can define the labels by using the cell selector button to the right of the Category Labels(X): field to select a range of cells from your Excel file that will label your horizontal axis. In the example above, the abbreviations for each month used as category labels would be found in the cell range at Sales!$B$16:$M$16.
45
10.Click OK. 11.Select the Primary Axis or Secondary Axis option to determine which axis to plot the series on. 12.Repeat steps 4 to 11 for each series. 13.Click the button to the right of the Category Labels (X) field to activate the Select a range dialog box. 14.In the embedded workbook, select the range of cells that contains the appropriate values. 15.Click OK. The chart now displays the actual values from your source file.
Objective
Bind a chart to multiple blocks of data
Instructions
1. Create a new Xcelsius visualization and save it as JanuaryGrossSales2006-2008.xlf. 2. Import the Chart_Series.xls spreadsheet into the new document, or copy and paste the data on January Gross Sales for all three years into the embedded workbook. 3. Add a Line Chart to the Canvas and enter or bind the titles to the data as appropriate. 4. For the line chart, create three series for 2006, 2007, and 2008. Bind each series to the January data for all regions. 5. Bind the category axis labels to the regions. 6. Resize the chart and the canvas as required and preview the model.
46
7. Save your changes. Compare your visualization to SOLUTION_JanuaryGrossSales2006-2008.xlf in the Activity_Resources folder if you need to check your work.
47
an option called "Ignore Blank Cells" to have the chart ignore those blank cells until they are populated with data. This eliminates the need to update the chart's binding each time you capture new data. For example, if you have a spreadsheet that captures data on a monthly basis but the values for November and December are not yet available, select Ignore Blank Cells "In Values" for the missing data in your series. To ignore an entire series, select "In Series."
Objective
Ignore end blanks in a chart
Instructions
1. Create a new Xcelsius document and save it as NumberOfOrders2008.xlf. 2. Import the Chart_End_Blanks.xls spreadsheet from the Activity_Resources folder into the new visualization, or copy and paste the data on Number of Orders for 2008 into the embedded Excel workbook. 3. Add a stacked column chart to the canvas and enter or bind the titles to the data as appropriate. 4. Bind the chart to the data range that contains the number of orders for all months in 2008. Tip: Make sure to include the monthly headings so that category labels are automatically created.
48
5. On the Behavior property sheet, configure the chart to ignore blank values. 6. Resize the chart and the canvas as required and preview the model. Your model should look something like this:
7. Save your changes. A solution file called SOLUTION_NumberOfOrders2008.xlf is included in the Activity_Resources folder if you need to check your work.
49
50
in a chart or other component in your model, you can manipulate the single value component to determine what happens to the displayed output. Some single value components can also be used for output, such as the gauge and the progress bar, to read an existing value in a cell.
Note: Unless you are using a single value component for output only, you should not bind it to a cell that contains a formula if you do, you cannot change the value it displays.
Slider
This represents a variable that can be modified to affect other components in the form of a bar with a marker that you can slide up and down to change the value.
Dial
This represents a variable that can be modified to affect other components in the form of a mechanical dial.
Gauge
This represents a single value output and illustrates where the value lies within a range. The gauge should only be used to show output values, though it can be set up for input if you activate the play options; however, most users only recognize it as an output component, as on a car dashboard.
51
Progress bar
This represents a value that changes and fills the progress bar area depending on its value. This can also be used as input if you activate the play options.
Spinner
This represents a variable that can be modified to affect other components. Users can interact with the spinner by clicking the up and down arrows to increase or decrease the value, or by entering a value into the text box.
Play control
This increases the value of a cell in your model systematically. The buttons next to the play button speed up the process of scrolling forward or back through the values, while the buttons on the outside jump back or ahead to the next increment.
Value
This represents a single cell of your Excel file. You can click and drag up and down or double-click and manually enter a value.
52
The Property sheets change to reflect the configurable properties for the single value component.
2. On the General property sheet, for each required field, do one of the following: To manually enter the values, type the values in the appropriate fields. To bind the values for the component to the values in specific cells, click the button to the right of each field to activate the Select a range dialog box, select the cell, and click OK. Note: Most single value components include a Title field and a Data field. However, this is not the case for all components. Refer to the online help for assistance in determining how to configure each type of component. 3. Select any additional options for the component, as required. Note: The options available depend on the type of component.
53
Define the increment size in decimal format. Define the number format for values as Percent.
2. On the Behavior property sheet, set the required increment size. To increment the slider by 1% at a time, enter the decimal value .01.
3. On the the Text tab of the Appearance property sheet, do the following: a. In the table, select the Value option. b. In the Number Format drop-down list, select Percent. c. In the Decimal Places field, enter 0.
54
55
2. In the Play Time (seconds) field, enter the amount of time during which the single value component plays from the minimum limit to the maximum limit. 3. If desired, select either of the following options: To automatically reset the single value component back to the minimum limit once it reaches the maximum limit, select the Auto Rewind check box. To automatically restart playing through the values, select the Auto Replay check box.
Some options available when working with the image component are: Linked files During the creation of your model, indicate the URL to your image. During runtime, the image is loaded from that location. The file size of your model will be smaller with linked files, which reduces the loading time. The biggest advantage is that the model doesn't need to be re-published if the graphic or animation changes. Update the graphic in its external location and your model will display the new graphic during runtime. Embedded files If you choose to embed a loaded image, it becomes part of the completed model so you can publish and distribute your model as a standalone file which provides faster performance if you couple the graphic with dynamic visibility. Note: If you link to an image file, Xcelsius will generate a sub-folder with the same name as the SWF during export and put the image in that folder. You cannot change the location of the image once it is published or else the SWF will not be able to find the image and it will not be able to load that image. Block Mouse Events
56
When layering components in your model, users can still click and activate controls even though they are hidden beneath other components. This means you can create a custom button by layering a background component on top of a toggle button, icon, or check box, and resizing the components as appropriate. If you do not want the control active, the Block Mouse Events setting will disable the controls below the image component. Transparency Use this slider to determine the transparency of the animation or image file.
2. Click Import. The Open dialog box displays. 3. Navigate to and select the image or animation. 4. Click Open. 5. Do any of the following: To resize the image based on the size of the component, select the Resize Image to Component check box. Note: Ideally, you should select this option prior to importing the image. To embed the images in the Xcelsius file so that connectivity is not required, select the Embed File check box. Note: You cannot embed another Xcelsius SWF file. To change the transparency level of the background, click and drag the Transparency selector to the appropriate level, or manually enter the percentage in the associated field. To prevent actions related to the background, select the Block Mouse Events check box. To hide the background color of the SWF so that the components behind it are visible, select the Hide SWF Background Color check box.
57
Panel Container
The panel container groups components into a single scrollable container. A panel container is very useful when trying to display a single component (for example, a table) that is larger than the space available on the screen. The panel container also allows editable groups without using the properties window.
Tab Set
The tab set container allows you to layer components directly on top of one another, and then selectively display one of the components when the tab that contains the component is clicked. A tab container is very useful when trying to display several large components that do not need to be visible at the same time.
Understanding alerts
Alerts are color cues that you add to components to describe the value as it compares to a target value. When the value falls within the threshold range for that alert, it is given the color assigned to that range. You can set your own threshold values, specify a percentage of a value, or bind the threshold values to cells in your embedded Excel workbook. You can also define how the thresholds are calculated and specify the formatting that is applied when those thresholds are achieved.
58
Alerts are not available for all components, depending on what type of data the component is intended to display. Components that display portions out of the whole, like the pie chart and the area chart, do not support alerts. You also cannot set alerts for multi-series charts (try using a selector and a chart that references a single series instead). You can use alerts with a few selectors too (Combo Box, Icon, Label Based Menu, List Box, List Builder, and Ticker). In the following visualization, an alert is used to code each bar in the bar chart. Green bars indicate the total sales are above the target values for that line. Yellow means sales were equal to target, and red indicates that sales were below target.
59
Setting up alerts
The following steps are involved in setting up alerts:
60
To set up alerts
1. Select the component on the canvas and activate the Alerts property sheet.
2. Select the Enable Alerts option. Note: Whether you can activate alerts and which types of alerts are available depends on the type of component. 3. Select one of the following alert types: As Percent of Max Value Note: The maximum value is defined on the General property sheet.
61
As Percent of Target By Value The other options for the Alerts property sheet are activated or deactivated based on the type of alert selected. 4. If you selected the As Percent of Target option, do one of the following: To manually enter the target, type the value in the field. To bind the target to the value in a specific cell, click the button to the right of the field to activate the Select a range dialog box, select the cell, and click OK. 5. To define the threshold levels for the alert, do any of the following: To change the thresholds for an existing level, click the cursor in the From or To cell in the table, type the new value, and click the cursor outside of the cell to commit the change. To add a new level, enter the upper threshold for the level in the field above the table and click Add. To define the thresholds automatically based on values in the embedded workbook, select the Use a Range check box, click the button to the right of the field to activate the Select a range dialog box, select the range of cells, and click OK. 6. To define the colors for the threshold levels, do one of the following: To define the colors automatically, select the Enable Auto Colors check box. If desired, click the Color Selector for the auto colors and select a different predefined gradient or create a custom color scheme. To define the colors manually, select the level, click the Color Selector for the level, and select the appropriate color for the level. Repeat for all levels. 7. Under Color Order, select one of the following options to define how the threshold levels are ordered and how colors are assigned to them: Low values are good Middle values are good (percent alerts only) High values are good 8. Under Alert Location, select one of the following options to define where the alert color displays: Background Marker Value
62
Input Text
The Input Text component is a single entry field that allows users to enter text. Users can enter long strings, but the display is limited to the physical size of the component.
Label
The Label component is a simple text label that is not intended for input. This can be used to create additional titles, labels, and help text.
63
The Property sheets change to reflect the configurable properties for the component.
2. On the General property sheet, choose one of the following: To bind the label to the value in a specific cell, select the Link to Cell option, click the button to the right of the field to activate the Select a range dialog box, select the cell, and click OK. If appropriate, click Apply Cell Formatting to retain the formatting from the embedded Excel workbook. To manually enter the label, select the Enter Type option and type the label in the text box. 3. To apply HTML formatting, select the Enable HTML Formatting check box. 4. For input components, under Data Insertion, do the following: a. To display the data in the text component by default, select the Insert Data On Load check box. b. Click the button to the right of the Destination field to activate the Select a range dialog box. c. Select the cell. d. Click OK.
64
Calendar
The calendar selector allows you to select a date or display a date from the embedded Excel workbook.
Trend Icon
This display component indicates positive versus negative values using color-coding. It is similar to an alert. The Trend Icon changes its pointing direction, depending on the value of the cell to which it is linked: If the value is positive, the arrow points up. If the value is zero, the symbol is neutral. If the value is negative, the arrow points down.
History
The History component is linked to a data point and records the value of that point every time it changes. It can also be configured to record the value at a set time interval.
65
Panel Set
The Panel Set component combines the functionality of the Image component and the Panel container. Each pane in the panel set can contain its own image or animation.
Source Data
The Source Data component indexes the selected source data range. This component does not have a visual display; it works within the visualization in combination with other components and allows you to push data into other cells simply by changing the value of the component's Selected Index.
Trend Analyzer
The Trend Analyzer combines data analysis and visualization. The component analyzes spreadsheet data and inserts data points for a trend line into the spreadsheet, which can then be added to a component in your visualization.
Print Button
The Print Button launches the Print dialog box when clicked during runtime. The print button is part of the canvas and will be visible in the printout. Only components visible at the time the Print button is clicked will be visible in print. If you have dynamically visible components then only those currently visible on the screen will print.
66
Reset Button
The Reset Button returns the visualization to its original state. Users can interact with the components, then click the button to clear their changes.
Grid
The Grid component is a dynamic table that represents a group of rows and columns of content. The Grid lets you show the data just as it is on any table, or perform data modification that can impact other components. The Grid component differs from the Spreadsheet and List View components in that rather than being a static representation of the data table, the user can click the cells of the Grid and type new values or drag the values higher/lower.
67
2. On the General property sheet, for the Title field, do one of the following: To manually enter the value, type the value in the Title field.
68
To bind the value for the component to the value in a specific cell, click the button to the right of the Title field to activate the Select a range dialog box, select the cell, and click OK. 3. Under Data Insertion, do the following: a. In the Insertion Type drop-down list, select the appropriate type. Tip: To view a help movie explaining how the Day and Date insertion types work, click the info icon next to the drop-down list. b. For the Destination, Month Destination, and Year Destination fields, do one of the following: To manually enter the values, type the values in the appropriate fields. To bind the values for the component to the values in specific cells, click the button to the right of each field to activate the Select a range dialog box, select the cell, and click OK. Note: The interactive calendar component can be used for output only by adding the component without specifying the destination cells for input.
The statistical analysis calculations are assigned to the client (SWF). The component appears on the canvas.
69
70
The Property sheets change to reflect the configurable properties for the component.
3. On the General property sheet, for the Data field, do the following: a. Click the button to the right of the Data field to activate the Select a range dialog box. b. Select the cells to be analyzed. c. Click OK. 4. Under Trend/Regression Type, do one of the following:
71
To have Xcelsius determine the best type of analysis, select the Use Best Fit option. To specify the type of analysis, select the Select a type option and select the thumbnail for the desired type. 5. For the Analyzed Data Destination field, do the following: a. Click the button to the right of the Analyzed Data Destination field to activate the Select a range dialog box. b. Select the cells set up in step 1 to store the data. c. Click OK. 6. If desired, under More Options, bind the other available destinations. 7. Adjust the properties of the chart to include the new column in the data range of the chart.
2. On the General property sheet, for the Label field, do one of the following: To manually enter the value, type the value in the Label field.
72
To bind the value for the component to the value in a specific cell, click the button to the right of the Label field to activate the Select a range dialog box, select the cell, and click OK. 3. For the Print button, on the Behavior property sheet, set the print scale.
73
b. Select the cells to be checked for changes. c. Click OK. 3. Under Data Insertion, do the following: a. Click the button to the right of the Data Destination field to activate the Select a range dialog box. b. Select the cells to be checked for changes. c. Click OK. 4. Choose one of the following options: To display changes whenever values in the cells specifed in the Data field change, select the When Value Changes option. To display changes at regular intervals, select the On Interval option and specify the duration of the interval in the associated field.
Slide Show
The Slide Show component is useful for displaying a large number of images. Unlike the normal Image Component, which requires that you first import the file, the External Slide Show component loads the image at the URL specified in the URL data source. By adding the URLs in the Excel file, you can select images and define the behavior to indicate the rate at which the slide show should progress.
URL Button
The URL Button component allows you to link to a URL within your model. When the button is clicked, the website specified opens in either the same window or a new window. You can use a single URL, or link to a dynamic cell and have the visual model dynamically drive what URL the end user can open. Note that a user's ability to link to this information requires Internet connectivity.
74
2. On the General property sheet, for the Label and URL fields, do one of the following: To manually enter the values, type the values in the appropriate fields. To bind the values for the component to the values in specific cells, click the button to the right of each field to activate the Select a range dialog box, select the cell, and click OK. 3. Under Window Options, in the Open In drop-down list, select one of the following options: To open the URL in a new window, select New Window. To open the URL in the same window and overwrite the model, select This Window.
75
The Property sheets change to reflect the configurable properties for the component.
2. On the General property sheet, for the URL (JPEG or SWF File) field, do one of the following: To manually enter the value, type the value in the URL field. To bind the value for the component to the value in a specific cell, click the button to the right of the URL field to activate the Select a range dialog box, select the cell, and click OK. 3. On the Behavior property sheet, under Transition Behavior, select the appropriate options for the transitions in your slide show.
Objectives
Link a single value component Build alerts Use the reset button
Instructions
1. Create a new Xcelsius document and save it as RevenueForecast.xlf. 2. Import the What_If.xls spreadsheet from the Activity_Resources folder into the new Xcelsius visualization.
76
3. Add three gauges to the canvas and bind them to the title and total value for the Revenue, Bookings, and Deferred columns. 4. Set the scale maximum for the Revenue and Bookings gauges to 10,000. For the Deferred gauge, set the minimum to -5000 and the maximum to 5000. 5. Enable alerts for each gauge as a percentage of target value, where high values are good for the Revenue and Bookings gauges, and low values are good for the Deferred gauge. 6. Add three dials to the canvas and bind them to the title and target value for the Revenue, Bookings, and Deferred columns. 7. Set the scale maximum for the Revenue and Bookings dials to 10,000. For the Deferred dial, set the minimum to -5000 and the maximum to 5000. 8. Add a background, a chart title, and the reset button to the canvas for presentation. 9. Preview the model. Your model should look something like this:
10.Save your changes. A solution file called Solution_RevenueForecast.xlf is included in the Activity_Resources folder if you need to check your work.
77
Optimizing design
When you work with Xcelsius, you have access to many components that you can combine with over 100 supported Excel functions. Because of the free-form design capabilities of Xcelsius, you have the flexibility to design a wide array of visualizations. With this flexibility there is a line between what you can do with the product versus what you should do for business users - keep the visualization simple and easy to use so they can quickly analyze their key performance indicators and drive action from analysis. These design and deployment best practices are covered in more detail in this unit. Remove yourself from the data Start with pencil and paper Design the layout based on how users need to view the data Create a mockup of the dashboard Follow Excel best practices Don't get lost in the visualization Utilize summarized data
Do...
Think about the questions end users will answer with your visualization. Answer these questions:
78
"Who will use the dashboard?" "What decisions need to be made?" "What data do users need to make those decisions?" Involve stakeholders in a mind mapping session. Have them sketch process flow diagrams or brainstorm simple lists. These activities assist you in identifying the metrics or key performance indicators that should be included in your visualization. First concentrate on the business problem you are solving with your dashboard. The data source and query response are key components of the dashboard, but you don't want those considerations to hinder the initial brainstorming process.
Don't...
Focus on data issues by starting with questions such as: "Which database will we use?" "How do we get permissions and establish connections?" "Which tables?"
Do...
Start with a pencil and paper or a whiteboard in a collaborative setting to sketch out your visualization and note how users will travel between components to answer business questions. Focus on how users need to visualize the information.
Don't...
Start by creating graphs in Excel or formatting data. Open Xcelsius and begin dragging components to the Canvas without first sketching out the visualization.
Do...
Use selectors to create multiple dimensions for drill down. Combine components and create layers of information that create a natural workflow for accessing information. Show the most important information first.
79
Build a dashboard that allows a business user to see the total sales for all regions for any given product and then view the quarterly trend or drill down to a monthly view. This dashboard design satisfies all these requirements by utilizing best practices.
Don't...
Waste valuable space with useless graphics. In this example, gauges require the end user to do a mental calculation of the total sales for all regions. Over-crowd a screen with too many charts unless it is absolutely necessary to display them together so the users can have a holistic view to draw their analysis.
80
This dashboard shows what not to do when designing the layout for your dashboard. It requires the user to unnecessarily scroll to select products. There is no clear metric for gauges. The user cannot compare the relative values - is $2350 a good or excellent sales number? The Quarterly Total Sales title is ambiguous: quarterly sales for what? The Monthly Total Sales values are represented as a bar chart when the trend should be visualized in a line.
Do...
Allow stakeholders and end users to share the dashboard so they can gain perspective and insight into how the dashboard truly applies to the business scenario. Simulate how an end user will interact with the dashboard to view metrics and supporting analytics.
81
Build a static view of sample data using methods that streamline the production time. Notice that only the Regional Sales, All Products, and Monthly selectors work in this mockup of the dashboard. Set yourself up to quickly make changes and adjustments without having to rework the dashboard.
Don't...
Try to make the first draft of the dashboard a production-ready final product. Even if your planning process is efficient, you will find that changes to your dashboard will be necessary based on feedback from the stakeholders. Once the stakeholders feel they can effectively use the dashboard, you can then work toward connecting and scaling your dashboard for production.
82
IF OR IF AND CONCATENATE Note: The CONCATENATE function may slightly slow down a model. It is recommended that you use the ampersand "&" to join cells (for example, =A1&B1). Note: Using an Xcelsius selector component with the Insert Filtered rows option yields a faster running Xcelsius visualization than using Excel lookup formulas. INDEX
Do...
Create an intuitive and easy-to-use interface. Use titles and font size effectively. Use text colors that are easy to read.
Don't...
Use a background that makes it hard to read the text. Use a selector that is not necessary for the task. Make charts too small for good trend analysis. Show tabular data that does not assist views in taking action or making decisions.
83
Use different legends for different components in the same visualization. Use a pie chart where the series are not true representations of the contribution as a whole.
Don't...
Use non-summarized data.
84
Objective
Plan the design of a spreadsheet and model
Instructions
1. Open Design_RawData.xls from the Activity_Resources folder. 2. Familiarize yourself with the data contained in Design_RawData.xls. 3. On a piece of paper, draw an Xcelsius visualization with a layout that accommodates the required charts. 4. Organize the data in your workbook so that it can accommodate the needed charts, and can be easily updated when new data becomes available. Try to incorporate the best practice of using the existing functions and cells in the workbook so that dynamic functions are more easily referenced and managed rather than manually manipulating and rebuilding the spreadsheet whenever new data is available.
85
Note: A pivot table may be best suited in this scenario because it allows you to link to summarized data based on the raw data. Remember that although pivot table functions are not supported in Xcelsius, you can still reference the data displayed in a pivot table. 5. Launch Xcelsius and create a new model. 6. Add the chart components you drew in your paper Xcelsius model to your canvas. 7. Import your Excel spreadsheet containing the data from step 2. 8. In Xcelsius, link each chart component in your canvas to data in your Excel workbook. 9. Present your Xcelsius model layout and Excel workbook design to the class. 10.Save your Xcelsius model layout as MyProject.XLF. You will re-use this XLF file and Excel workbook in a later activity.
86
87
To preview a model
1. On the standard toolbar, click Preview. 2. To export a snapshot of your model to another format, perform the following steps: a. From the File menu, select Snapshot and choose the appropriate menu command for the desired format. b. Navigate to the appropriate location for the file. c. In the File name field, enter a unique name for the file. d. Click Save. 3. To exit preview mode, click Preview again.
Once your model is complete, you can publish it in multiple formats. Regardless of the format you choose (for example, email, HTML, PowerPoint, and so on), a SWF file is embedded inside the output. To view the visualization, your audience needs both a Flash player and the program associated with that output. The format you choose depends on the data you are using and your intended audience. PDF and PPT desktop formats maintain the security of your Business Objects Enterprise connection, if applicable.
Flash (SWF)
This option creates a SWF file that you can then embed in other files, run as a SWF in a Flash Player, or call from an HTML file. If you double-click the file from Windows Explorer and have a Flash Player installed, the SWF opens in your default web browser.
AIR
Adobe AIR is a cross-operating system runtime that lets developers combine HTML, Ajax, Adobe Flash, and Flex technologies to deploy rich Internet applications (RIAs) on the desktop. Adobe AIR allows developers to use familiar tools such as Adobe Dreamweaver CS3, Flex Builder 3, Flash CS3 Professional, or any text editor to build their applications and easily deliver a single application installer that works across operating systems. A web browser enables a user to interact with content and applications typically located on a website on a server. Adobe AIR builds upon capabilities and technologies used in the browser to enable deployment of applications on the desktop. Adobe AIR complements the browser
88
by providing users and developers with a choice about how to deliver and use applications built with web technologies.
HTML
This option creates a SWF file and an HTML file that calls that SWF file using the following HTML code:
<HTML> <HEAD> <TITLE>FILENAME.swf</TITLE> </HEAD> <BODY> <OBJECT classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://fpdownload.adobe.com/pub/shockwave/cabs/flash/swflash.cab#version=9,0,0,0" WIDTH="800" HEIGHT="600" id="myMovieName"> <PARAM NAME="movie" VALUE="FILENAME.swf"> <PARAM NAME="quality" VALUE="high"> <PARAM NAME="bgcolor" VALUE="#FFFFFF"> <PARAM NAME="play" VALUE="true"> <PARAM NAME="loop" VALUE="true"> <PARAM NAME=bgcolor VALUE="#FFFFFF"> <EMBED src="HTML_TEST.swf" quality=high bgcolor=#FFFFFF WIDTH="800" HEIGHT="600" NAME="myMovieName" ALIGN="" TYPE="application/x-shockwave-flash" play="true" loop="true" PLUGINSPAGE="http://www.adobe.com/shockwave/download/index.cgi?P1_Prod_Version=ShockwaveFlash"> </EMBED> </OBJECT> </BODY> </HTML>
There are two optional advanced topics when you export your SWF into a Web page: 1. Pass values into your Xcelsius 2008 SWF as it loads using Flash Variables: Use the Flash Variable connection in Xcelsius 2008 to define the Flash Variable names and where to store them in the spreadsheet when they are passed in at runtime. When you export your SWF as HTML, the current values for the Flash Variables from the spreadsheet are also generated in the OBJECT and EMBED tag. For more information on passing Flash Variables into a SWF, see http://www.permadi.com/tutorial/flashVars/. Note: Flash Variables are passed into Xcelsius as the SWF loads, so Flash Variable values do not trigger a data change in the spreadsheet. If you want an XML or Web service data connection, run and use those values with the Refresh on Load option for each connection (by the time Refresh on Load is called, the Flash Variable values have already been stored in the spreadsheet). 2. Pass values from Xcelsius 2008 out to JavaScript: FSCommand is a standard Flash call that Xcelsius 2008 makes available via the FSCommand connection. Note: For more information on using FSCommand with JavaScript, see http://www.moock.org/webdesign/flash/fscommand/index.html. There are certain restrictions to Adobe Flash when you want to call out to JavaScript; see the section Flash Player Security for more information.
89
PDF
This option creates a new Adobe PDF document with your model embedded in it, which is particularly useful for creating interactive reports.
PowerPoint
This option creates a new Microsoft PowerPoint presentation PPT file with your visualization embedded as an object on a slide inside the PPT file. You may copy the object to other slides or PPT files, or you can copy the entire slide to another PPT file.
Outlook
This option creates a new Microsoft Outlook email message with your model attached as a SWF file.
Word
This option creates a new Microsoft Word document and embeds a SWF of your visualization in the document. The embedded visualization is dynamic and interactive.
90
To export a model
1. From the File menu, select Export and choose the appropriate menu command for the desired format: Flash AIR HTML Business Objects Platform PDF PowerPoint Slide Outlook Word
The Export dialog box displays. 2. Navigate to the appropriate location for the file. 3. In the File name field, enter a unique name for the file. 4. Click Save.
91
A. B. C. D. E.
Click and drag components from the Components Browser to the canvas. Preview the model to test the interactive behavior.
F.
Convert to SWF format and embed the file in a new PDF document. G.
2. What are valid methods for bringing data from Excel into an Xcelsius model? 3. What Property sheet would you use to indicate performance using color coding? 4. Match the type of chart to its function.
Function A chart that represents the distribution or participation of each slice (item) over a certain total that is represented on overall value. A chart that allows easy comparison of values in a radial layout. A chart that allows you to compare several variables over a period of time by adding one variable on top of another within a column. A chart that displays data that requires two dimensions to show each data point as a result of the intersection of X values and Y values. Chart
A chart that lets you compare a group of items or series based on three E. Pie chart different parameters. It has an X axis and Y axis to represent the item location over the chart area, and a Z value to represent the item size.
5. Several of the following items are Excel best practices when working with Xcelsius. Which one is not an Excel best practice?
92
a. Organize your data. b. Keep functions and logic at the top. c. Use colors, labels and borders. d. Use tabs for larger spreadsheets. e. Use lightweight functions that work. 6. A chart is bound to the embedded Excel workbook by Range (Data in Rows) to the workbook shown below. How can you specify the behavior of the bound chart so that it does not display the July values until those cells contain data?
7. Which of the following methods will produce an Excel .XLS file that contains a copy of the data in the embedded Excel workbook in an .XLF file? a. From the Data menu, select Export . b. From the File menu, select Snapshot Current Excel data. c. From the File menu, select Export Word. d. From the File menu, select Preview File Snapshot current Excel. 8. Which files created in BusinessObjects Xcelsius Enterprise 2008 can be sent to BusinessObjects Enterprise? a. .HTML (Hypertext Markup) b. XLS (Excel) c. SWF (Xcelsius Flash)
93
94
Lesson summary
After completing this lesson, you are now able to: Describe the benefits of producing interactive visualizations of your data Define the process of producing interactive visualizations of your data Get around in the Xcelsius user interface Work with your Excel workbook Visualize data with charts Use Xcelsius components Distribute your visualization Apply best practices for designing models
95
96
Lesson 2
Formatting a Visualization
Lesson introduction
In this lesson, you will learn to unleash the power of customization. Xcelsius gives you a huge degree of freedom to customize your visualization. Change colors, text, and layout to reflect the nature of your project and the spirit of your company. After completing this lesson, you will be able to: Apply formatting options Use themes and templates to apply formatting
97
98
99
2. In the tree, select the color scheme. The theme colors appear in the Preview pane. 3. Ensure the Apply to Existing Components check box is selected. 4. Click OK. The color scheme is applied to the components on the canvas.
100
101
3. In the Name field, enter a unique name for the color scheme. 4. Do any of the following: To change a color in the palette, select the color swatch and edit the values for it or click the cursor on the desired color in the spectrum. To automatically create a color scheme based on a specific color, select the color swatch and select the Auto Match Colors check box. If desired, change the degree to which the automatically matched colors resemble each other by clicking and dragging the associated slider to the appropriate position. To define the color scheme at a more detailed level, click the Advanced Settings link to display the additional options. Click the appropriate tab, click the Color Selector for the element to be edited, and select the new color. Repeat as required for all elements.
102
5. Click Save. The custom color scheme is applied to the components on the canvas.
To format text
On the Text tab of the Appearance property sheet, do any of the following: To change the font, select a font from the drop-down list. Note: By default, the font is set to Verdana. If you choose to use non-embedded fonts in the visualization, you can use the font box to change the font for the component. To set the font size, type a number in the field or select a number from 8 to 72 from the drop-down list. To format the text, click Bold, Italic, and/or Underline. To align text, click Align left, Center, or Align Right. To customize the font color, click the Color Selector and select a color from the palette.
Charts
103
Component
Layout Option
No layout options Image sizing, Thumbnails, Number of Labels Displayed, Transparency, Filter Gap, Markers, Enable Background, Show Ticker Background, Button Separation, Auto Replay, Show Gridlines, Gridlines, Custom Column Widths Transparency Wrap text, Transparency Show button background, Transparency No layout options Show button background, Transparency
104
Using themes
A theme is a collection of object properties that change the look or style of the components used in your model. There are nine themes available: Admiral Aero Aqua Elan Graphite Halo theme Nova Windows Classic
When you apply a theme to your model, sometimes your components change. This happens because some themes have fewer components available than other themes. For example, the Aqua theme has six gauges and the Graphite theme only has two gauges available. If you choose a gauge that is available in the Aqua theme, then change the theme to Graphite - the gauge will be changed to one that exists in Graphite. To use a theme, select the thumbnail image. All theme settings are applied to all of the components in your model.
105
To apply a theme
1. From the Format menu, click Theme.
106
2. Select the appropriate theme. The theme displays in the Preview pane. 3. Click OK. The theme is applied to all components.
107
To open a template
1. From the File menu, click Templates. The New from Template dialog box displays. 2. In the Category pane, select the appropriate category. 3. In the Items pane, select the appropriate template. The template displays in the Preview pane. 4. Click OK. Note: If there is another Xcelsius file already open, you will be prompted to save that file before creating a new file based on the selected template. Click Yes or No as appropriate. A new file is created in Xcelsius based on the template.
108
Note: This is especially important if you are creating multi-layer presentations or reports by importing other models. Using a template ensures that all of the disparate models have a consistent format.
To save a template
1. Open the visualization you intend to use as a template. 2. From the File menu, click Save As. The Save As dialog box displays. 3. Navigate to the location of the Xcelsius templates: C:\Program Files\Business Objects\Xcelsius\assets\template\New. The path may be different, depending on how Xcelsius was installed. 4. In the File name field, enter Demo.xlf. 5. Click Save. The template is saved and can be accessed in the New from Template dialog box. If you desire a preview picture for your template, continue with the remaining steps.
109
Follow the remaining steps to setup a thumbnail SWF image to visually identify your template in the New from Template dialog box. 6. From the File menu, select Export > Flash (SWF). 7. In the File name: field of the Export dialog box, type Demo.swf and place the SWF in the same folder as the XLT used for the template. 8. From the File menu, click Templates. The New from Template dialog box displays. The Demo template is visible.
Objectives
Create a custom color scheme Create a new template
Instructions
1. Create a new Xcelsius visualization. 2. Create a new custom color scheme called RU4REAL and set the colors as follows:
Color Color 1 Color 2 Color 3 Color 4 Color 5 Color 6 Color 7 Color 8-10 R 0 204 224 255 110 72 90 255 G 0 34 146 241 179 119 48 255 B 0 41 47 45 88 186 141 255
3. Under Advanced Settings, change all background elements to black and all text elements to white. 4. Save the custom color scheme. 5. Set the global font for the template to Arial.
110
To set the global font, consult the procedure named To change document properties located in the unit named Getting around in Xcelsius found in the lesson Creating a Visualization. 6. Add the following components to the canvas: Column chart Two gauges Dial Accordion selector
7. Change the theme to Halo and reapply the custom color scheme. Your model should look something like this:
8. Save the Xcelsius file as a template called RU4REAL. Note: You must save the file to the correct folder for it to be available as a template. 9. Open the New from Template dialog box to confirm that your template is available. 10.Create a new document based on Template 1 and confirm whether you can apply your RU4REAL custom color scheme to it. 11.Reset the color scheme to Current Theme Colors and the theme to Nova. A solution file called SOLUTION_RU4REAL.xlf is included in the Activity_Resource folder if you need to check your work.
111
112
Lesson summary
After completing this lesson, you are now able to: Apply formatting options Use themes and templates to apply formatting
113
114
Lesson 3
115
Using selectors
Introduction
In this unit, you will use selectors to change the data presented in your models. After completing this unit, you will be able to: Add a selector Understand data insertion Use each data insertion type in selectors Set default values for selectors Use alerts in selectors Import graphics as selectors Use a table as a selector Use a drill down to create a selector from a chart Use the List builder selector to select multiple items Create interactive maps
Adding a selector
The selector serves as the primary method for users to interact with the Xcelsius models by toggling data or the visibility of charts. Selectors facilitate an intuitive end user interface that enables easy navigation, filtering, and drilling down into information. Use selectors to: Transform static visuals into dynamic visual models Copy rows and columns of data within the Excel spreadsheet from a source location to a target destination that can be read by a chart or another output component Define parameters for ad hoc queries against a live data source or reporting applications Toggle different visuals within the dashboard to appear or disappear (coupled with dynamic visibility) Open child dashboard SWF files within a parent SWF Accomplish the same function as Excel lookup functions, but without the drop in performance.
116
displays data for sales of Computers. By selecting just the computers sales data, the bar chart is simpler to read than if you had included sales data for computers, laptops, and table PCs.
There are several different ways to have a selector copy data from the source range to the destination range. Not all of these methods are available with all selectors.
Insertion Type Description
Position
Each selection inserts its position into a destination range. For example, if you use a radio button, the first button label will have a position of 1
117
Insertion Type
Description
assigned to it, the second button label will have a position of 2 assigned to it, and so on. This option is commonly used to toggle a lookup formula or dynamic visibility. Label Each selection inserts its label into a destination range. For example, if you use a label-based menu selector that contains country names, the country name is inserted into the destination range with each selection. This option is commonly used to toggle a lookup formula or dynamic visibility. Each label is associated with a single value, and each selection inserts the associated value into a destination range. For example, if you are using a radio button to display countries and sales values, with each selection the respective sales amount will be inserted into the destination range. This option is used with a wide range of formulas and components. Row Each selector item represents one row of data. With each selection, the selector inserts the respective row into the destination cells. For example, if you use the list box to display annual sales by state, the selector contains the 50 state names. Each state has data that shows the amounts over a period of time. With each selection, the selector takes the respective row and copies the row into the destination range. You can then link a chart to the same destination range. This option is commonly used to toggle data within other output components, such as charts and gauges. Column Each selector item represents one column of data. With each selection, the selector inserts the respective column into the destination range. For example, if you use the list box to display annual sales by state, the selector contains the 50 state names. Each state has data that shows the amounts over a period of time. With each selection, the selector takes the respective column and copies it into the destination column. You can then bind a chart to the same destination column. This option is used to toggle data within other output components, such as charts and gauges. Filtered Rows The selector creates a button for each piece of unique data. When each button is pressed, only data that matches the filter is returned.
Value
118
Insertion Type
Description
Status List
This is one of the most powerful functions. Each selector item is bound to a contiguous range of cells in the spreadsheet. When an item is selected, the application inserts the number 1 into the respective cell. All other cells contain the number 0 (zero). Xcelsius recognizes that when the Dynamic Visibility of a component is bound to a cell that contains the number 1, the component is displayed and that numbers other than 1 mean the component is not displayed.
119
The Property sheets change to reflect the configurable properties for the selector. The available fields depend on the type of selector.
2. On the General property sheet, for the Title, Labels, and Display Data fields, if available, do one of the following: To manually enter a single value, type the value in the appropriate field. To manually enter multiple values for the Labels field, click the list icon to the right of the field to open the Labels dialog box, enter the names in the Label Name column for each numbered item. To add a label, enter the name in the Type a label field and click Add. To delete a label, click the X icon for the row. To re-order labels, click the up and down arrows.
120
To bind the values for the component to the values in specific cells, click the button to the right of each field to activate the Select a range dialog box, select the cell, and click OK. Note: Not all of these fields are available for all selectors. Refer to the online help for assistance in determining how to configure each type of component. For image components, refer to the additional steps for adding graphics, To embed images in a graphic selector and To link images from a URL in a graphic selector. 3. Under Data Insertion, do the following: a. If applicable to the selector, in the Insertion Type drop-down list, select the appropriate type. Tip: To view a help movie explaining how each insertion type works, click the info icon next to the drop-down list. b. For the Source Data and Destination fields, do one of the following: To manually enter the values, type the values in the appropriate fields. To bind the values for the component to the values in specific cells, click the button to the right of each field to activate the Select a range dialog box, select the cell, and click OK. Note: For the accordion menu selector, you must also create categories to group the labels. Use the same technique as when manually creating series for a chart. Components for which you can specify display data, such as the List View and Spreadsheet components, can be used for output only by binding to the display data without specifying the source data and destination for input.
121
4. Select any additional options for the component, as required. Note: The options available depend on the type of component.
122
2. Select the Enable Alerts option. 3. For the Alert Values field, do the following: a. Click the button to the right of the Alert Values field to activate the Select a range dialog box. b. Select the cells. c. Click OK. 4. Select one of the following alert types: As Percent of Target By Value 5. If you selected the As Percent of Target option, do one of the following: To manually enter the target, type the value in the field.
123
To bind the target to the value in a specific cell, click the button to the right of the field to activate the Select a range dialog box, select the cell, and click OK. 6. To define the threshold levels for the alert, do any of the following: To change the thresholds for an existing level, click the cursor in the From or To cell in the table, type the new value, and click the cursor outside of the cell to commit the change. To add a new level, enter the upper threshold for the level in the field above the table and click Add. To define the thresholds automatically based on values in the embedded workbook, select the Use a Range check box, click the button to the right of the field to activate the Select a range dialog box, select the range of cells, and click OK. 7. To define the colors for the threshold levels, do one of the following: To define the colors automatically, select the Enable Auto Colors check box. If desired, click the Color Selector for the auto colors and select a different predefined gradient or create a custom color scheme. To define the colors manually, select the level, click the Color Selector for the level, and select the appropriate color for the level. Repeat for all levels. 8. Under Color Order, select one of the following options to define how the threshold levels are ordered and how colors are assigned to them: Low values are good Middle values are good (percent alerts only) High values are good
124
2. To embed the images in the Xcelsius file so that connectivity is not required, select the Embedded option. 3. Click Import. The Import Thumbnail dialog box displays.
4. Click the folder icon for the first item. The Open dialog box displays. 5. Navigate to and select the image that corresponds to the label with the same number. 6. Click Open. 7. Do any of the following: To add another image, click Click to Add Images and repeat steps 4 and 5. To delete an image, click the X icon for the row. To re-order labels, click the up and down arrows. Note: Ensure that the order of the labels and images are the same, as Xcelsius uses the numbers of the labels and images to match them.
125
To manually enter the URLs, click the list icon to the right of the field to open the Labels dialog box, enter the names in the URL column for each numbered item. To add a label, enter the name in the Type a label field and click Add. To delete a label, click the X icon for the row. To re-order labels, click the up and down arrows. Note: Ensure that the order of the labels and URLs are the same, as Xcelsius uses the numbers of the labels and images to match them.
Display
You can treat tables as output components like a chart. Although spreadsheet data may be too complex for some audiences, other individuals who use your models may prefer to work with tabular data. By using the table component, you can present that tabular data in an attractive, interactive format that matches the rest of your presentation.
Tip: Temporarily add a table to your model and preview the model to easily identify data errors in your components.
Selector
As with other selectors, you can click on a row in the table selector to populate related charts with the data for that item. When you define data insertion for a table being used as a selector, use the labels insertion type.
126
127
3. In the Series Name Destination field, ensure that the field is bound to the correct series. 4. In the Insertion Type drop-down list, select the appropriate type. Tip: To view a help movie explaining how each insertion type works, click the info icon next to the drop-down list. 5. For each series, in the Source Data and Destination fields, do the following: a. Click the button to the right of each field to activate the Select a range dialog box. b. Select the cell. c. Click OK. 6. Under Interaction Options, in the Insert On drop-down list, select the action that prompts the drill down. 7. Under Default Selection, in the Series and Item drop-down lists, select the series and data point that is active by default for the drill down.
128
Objectives
Configure a selector Set up drill down for a chart to act as a selector
Instructions
1. Create a new Xcelsius document and save it as SalesByBranch_ProductDetail.xlf. 2. Import the Selector_Drilldown.xls spreadsheet into the embedded workbook. 3. Add a large tab set container component to the canvas and create two tabs called Sales by Branch and Product Detail. 4. On the Sales by Branch tab, add a list box selector to the canvas and bind it to the labels, source data, and destination on the Sales by Branch worksheet. Choose the appropriate insertion type based on the data.
129
5. Add a column chart to the canvas and bind the title, subtitle, and data as appropriate. Bind the category axis labels to the fiscal years. Tip: The chart should be bound to the same cells as the destination for the selector. If you use the series option, you can update the title of the series dynamically by binding it to the label that is copied to the destination cells. 6. Resize the components and the canvas as required and preview the model. Your model should look something like this:
7. On the Product Details tab, add a pie chart to the canvas and bind it to the titles, data, and labels on the Product Details worksheet. Use the summary data. 8. Configure the pie chart for drill down by binding it to the source data and destination. Use the detailed data and choose the appropriate insertion type based on the data. 9. Add a line chart to the canvas and bind the title, subtitle, and data as appropriate. Bind the category axis labels to the months. Tip: The line chart should be bound to the same cells as the destination for the pie chart selector. 10.Resize the components and the canvas as required and preview the model.
130
11.Save your changes. A solution file called SOLUTION_SalesByBranch_ProductDetail.xlf is included in the Activity_Resources folder if you need to check your work.
131
The Property sheets change to reflect the configurable properties for the map.
2. On the General property sheet, for the Title field, do one of the following: To manually enter the value, type the value in the Title field. To bind the value for the component to the value in a specific cell, click the button to the right of the Title field to activate the Select a range dialog box, select the cell, and click OK. 3. For the Region Keys field, do one of the following: To manually edit the region keys that are predefined for the map, click the list icon to the right of the Region Keys field to open the Region Keys dialog box, edit the names in the Region Key column for each item, and click OK.
132
To bind the values for the region keys to the values in specific cells, click the button to the right of the Region Keys field to activate the Select a range dialog box, select the cells, and click OK. Note: The values in the embedded Excel workbook must be in the same order as the regions listed in the Region Keys dialog box to match up. 4. For the Display Data field, do the following: a. Click the button to the right of the Display Data field to activate the Select a range dialog box. b. Select the cells. c. Click OK. 5. Under Data Insertion, do the following: a. In the Insertion Type drop-down list, select the appropriate type. Tip: To view a help movie explaining how each insertion type works, click the info icon next to the drop-down list. b. For the Source Data and Destination fields, do one of the following: To manually enter the values, type the values in the appropriate fields. To bind the values for the component to the values in specific cells, click the button to the right of each field to activate the Select a range dialog box, select the cell, and click OK. Note: The map component can be used for output only by adding the component without specifying the destination cells for input.
133
Objective
Configure a map for display and selection
Instructions
1. Create a new Xcelsius document and save it as USA_Population.xlf. 2. Import the Interactive_Map.xls spreadsheet into the embedded workbook. 3. Add a USA map to the canvas and bind it to the display data in the workbook. 4. Choose the appropriate insertion type based on the data to use the map as a selector and bind it to the source data and destination. 5. Enable alerts for the map based on percent of target. Bind the map to the target values for each state in the workbook. Set the thresholds at minimum to 90%, 90% to 100%, and 100% to maximum and specify that high values are good. 6. Add a column chart to the canvas and bind the title, subtitle, and data as appropriate to show the detailed data for each state. Bind the category axis labels to the years. Tip: The chart should be bound to the same cells as the destination for the map selector. 7. Resize the components and the canvas as required and preview the model.
134
8. Save your changes. A solution file called SOLUTION_USA_Population.xlf is included in the Activity_Resources folder if you need to check your work.
135
136
When the destination cell has a value of 'Quarterly Trend', the Quarterly Regional Sales bar chart displays.
137
138
Fade in
This effect gradually changes the display of the entire component from transparent to solid. This effect reveals the component by first showing the entire left side of the component and then gradually revealing more and more of the right side of the component.
Wipe Right
Wipe Right-Down
This effect reveals the component by first showing a small portion of the upper-left part of the component and then gradually revealing more and more
139
Effect
Description
of the right part of the component while more and more of the lower part of the component are displayed.
Using formulas
When dynamic visibility is based solely on data insertion, the dynamic visibility for a component should always be tied to a specific selectable item. The status cell can only contain a single value at any given time, and a unique value is used to represent each selectable item. You can use formulas in your Excel source files to extend the functionality of dynamic visibility so that you can define visibility for a component based on multiple selectable items. To do this, follow these three steps: 1. Define the insert in cells You will still be using a selector to enable dynamic visibility. As with other models that use this functionality, you will specify the target cells for the selector. To support the use of a formula, one of the cells must contain information that is unique to each selectable item, such as its name. Make note of the cell reference for this location. 2. Create a formula In another cell in the Excel file, you will create a formula that looks up information in the cell where the unique value is located. The most common function to use in Excel is the IF formula, which you will construct as follows: IF(OR(cell=value, cell=value), value_if_true,value_if_false) Set up the parameters like this: Cell Enter the location of the unique identifier for the selectable item. Value Enter the value inserted in the cell for the selectable item (such as the name of the item). You can either enter a specific value, or you can include a cell reference. The simplest technique is to enter 1. Value_if_false Enter an alternate value, which will not trigger dynamic visibility. The simplest technique is to enter 0. Value_if_true Enter a value that you will use to trigger dynamic visibility. 3. Set up dynamic visibility For the component that will be dynamically visible, use the location of the formula, rather than the target cell for the selector, as the display status cell, and specify the Value_if_true
140
value as the display status key. When the user makes a selection, the item is inserted into the target cell, which triggers the formula to determine whether the value meets the logical test or not. If it meets the logical test, the cell displays the Value_if_true value, thereby triggering dynamic visibility for the component.
141
Objective
Set up a selector to trigger dynamic visibility
Instructions
1. Create a new Xcelsius document and save it as Regional_Sales.xlf. 2. Import the Dynamic_Visibility.xls spreadsheet into the embedded workbook. 3. Add a label-based menu to the canvas and bind it to the labels in the workbook. Choose the appropriate insertion type to use the labels to trigger dynamic visibility and bind it to the destination in the workbook. 4. Add five column charts to the canvas and bind the titles and data for each to the data for Asia PAC, EEMEA, Europe, Latin America, and North America. Bind the category axis labels to the years.
142
5. Set up dynamic visibility for each chart using the selector destination as the status and the label as the key. 6. Resize the components and the canvas as required and preview the model. Your model should look something like this:
7. Save your changes. A solution file called SOLUTION_Regional_Sales.xlf is included in the Activity_Resources folder if you need to check your work.
143
Troubleshooting interactivity
Introduction
In this unit, you will learn to troubleshoot your model to resolve unintended behavior in your visualization. After completing this unit, you will be able to: Troubleshoot with the Spreadsheet Table component Alleviate common symptoms
Values in the model will go blank or "null out." Chart will show in design mode, but not in published/exported visualization.
Design mode shows data directly from the Excel workbook, but during preview, Xcelsius recompiles using its own Flash-based algorithms independently of Excel. Open-ended ranges also causes the "exceeded maximum row limit" error. Nulling out is also a result of using an unsupported formula/syntax. ODBC connection to the spreadsheet is not supported in Xcelsius.
Cell ranges in Excel formulas should not be open-ended. For example =SUM(A:D) should include the row reference as well, such as =SUM(A1:D4).
144
Symptom or behavior
Issue
Remedy
(QaaWS, Live Office, Crystal Report, and so on). Error message "Excel is busy" when opening an XLF with an embedded Excel spreadsheet. Excel spreadsheet uses an Excel Add-in or Macro that is not supported in Xcelsius. This can also be caused by a rogue process on the computer that conflicts with Office automation between Xcelsius and Excel. Dynamic formatting is not supported in Xcelsius. Remove Add-ins and Macros from Excel workbook. Uninstall or disable apps that interact with Microsoft Office and Excel.
Dynamic formatting in the Excel workbook does not appear in the Xcelsius model. In a workbook that uses dynamic formatting, values in the model will go blank or "null out." Chart will show in design mode, but not in published or exported visualization. Error: "Truncation occurred. Exceeded __ rows."
Caused by a Component or Excel function using a large range that exceeds the defined row limit. The row limit is found under Data > Maximum Rows. Also, the user may be using a formula with an open-end cell range. Performance begins to degrade when the workbook is over 1 MB. Many people attempt to work with a spreadsheet that contains many values, formulas, and so on that are not pertinent
Change row limit (Data > Maximum Rows) or avoid using formulas with open-ended cell ranges. Use only a spreadsheet with required values.
Slow performance when building the model, importing the model, and exporting the model.
Make sure that all erroneous items such as charts, pictures, and all values that will not be consumed in the Xcelsius model be removed.
145
Symptom or behavior
Issue
Remedy
to the dashboard they are creating in Xcelsius. Cannot bind cells to components. Protecting the spreadsheet prevents Xcelsius from accessing the protected cells. Links to external workbooks prevents Xcelsius from accessing the protected cells. Xcelsius does not support XLS files created in OpenOffice. Make sure the spreadsheet is not protected in any way.
Error message "Links to external workbooks are not supported." Error message "Excel is busy."
Make sure the spreadsheet does not contain any links to external workbooks. Make sure spreadsheet was created using Microsoft Excel (Windows) and not an .xls file created using OpenOffice. Make sure the embedded spreadsheet is not configured to open up multiple sessions.
You have already completed a design for this visualization in the activity Designing a visualization. Now you will create a visualization that uses that design and data from Design_RawData.xls.
Objective
Complete the visualization based on the design, incorporating various concepts learned in the course
Instructions
1. Open MyProject.XLF saved from the activity titled: Designing a visualization.
146
2. Review the charts you included on your canvas. Add additional components and modify your workbook to accommodate the additional interactivity requirements: a. Use a selector to display a single country at a time. b. Use a List component to display customers with net sales that meet or exceed a preset goal. 3. Preview and test the model. 4. Save and export the model to Flash. 5. Present your Flash model to the class describing how you designed your workbook and Xcelsius components.
147
148
Lesson summary
After completing this lesson, you are now able to: Use selectors Add dynamic visibility Troubleshoot unintended behavior
149
150
Lesson 4
151
Step 1.
Step 2.
Step 3. Step 4.
When developing and deploying a connected model, you can push or pull data from the XML-compliant database directly to the SWF file. The SWF file still uses the self-contained business logic from the Excel file, but refreshes with live XML data. Using one of the available connectivity methods eliminates the need to manually refresh data in Excel or Xcelsius unless there are changes required to the logic or visual appearance of the model.
152
New Connections Query as a Web Service (QaaWS) Note: This connection type is only available in Xcelsius Engage 2008 and BusinessObjects Xcelsius Enterprise 2008. Web Service Connections XML Data Connections FlashVariable (flashvars) Portal Data Crystal Report Data Consumer FS Command LiveCycle Data Services (LCDS)
Existing Connections Excel XML Maps Live Office connections While you cannot add a new Excel XML Maps connection type or a Live Office Connection type using the Data Manager, the Data Manager automatically detects when these connection types are present in an Excel workbook that has been imported. Each connection has a Definition tab to organize the details of your connection. Some connection types also have a Usage tab to customize how your connection will load and refresh data. While most connection types will allow multiple connections, you may only have one connection for the Portal Data, Flash Variable, or Crystal Reports Data Consumer connection types.
To add a connection
1. From the menu bar, click Data. 2. From the Data menu, select Connections. The Data Manager dialog box appears. 3. Click Add and select a connection type from the list. The new connection will appear in the left hand pane. 4. Configure Definition and Usage options as required.
To remove a connection
1. From the menu bar, click Data. 2. From the Data menu, select Connections. The Data Manager dialog box appears. 3. In the left hand pane, select the connection you would like to remove. The definition tab will appear in the right hand pane. 4. Click X to remove the connection.
153
154
Definition tab
Range Name Enter a name for the range, or click the cell selector to select a cell in the spreadsheet. Range Type Select one of the following from the dropdown menu: Cell the data range consists of a single cell Row/Column the data range is in a single row or a single column Table the data range has more than one column or row Range Click the cell selector button to select a range from the spreadsheet. Access Select one of the following from the dropdown menu: Read an external application will be able to be read data in the range Write an external application will be able to be write data into the range Read/Write an external application will be able to be read data in the range and write data into the range
To prepare your provider and consumer visualizations for External Interface connections
1. Launch Xcelsius 2008. 2. Create a new provider visualization. 3. In the Data Manager, add an External Interface connection. 4. In Definition, click +. 5. In Range Name, enter a range name. 6. In Range Type, select Row/Column. 7. Use the cell selector button to bind Range to the the range of insert-in cells. 8. In Access, select Read. 9. Click Close. 10.Save the provider visualization. 11.Export to HTML and save. 12.Create a consumer visualization. 13.In the Data Manager, add an External Interface Connection. 14.In Definition, click +.
155
15.In Range Name, enter a range name. 16.In Range Type, select Row/Column. 17.Use the cell selector button to bind Range to the insert-in. 18.In Access, select Write. 19.Click Close. 20.Save the consumer visualization. 21.Export the consumer visualization to HTML in the same location as the provider visualization. 22.Re-use HTML provided in the consumer HTML and provider HTML in your own custom Javascript code to customize the interactivity of the two SWFs.
Objective
Create two Xcelsius visualizations. The first visualization should provide data to the second visualization. The second visualization should consume data from the first visualization.
Instructions
1. Launch Xcelsius 2008. 2. Open US_Revenue_Provider_EIC.xlf from this folder: \\..\Activity_Resources\Lesson 4\ExternalInterface\Start\ 3. In the Data Manager, add an External Interface Connection. 4. In Definition, click the + button. 5. In Range Name, enter UsMapData. 6. In Range Type, select Row/Column. 7. Use the cell selector to bind Range to cells D55 to L55. 8. In Access, Select Read. 9. Click Close. 10.Save US_Revenue_Provider_EIC.xlf to My Documents. 11.Export the visualiation as HTML named US_Revenue_Provider_EIC.html in My Documents. 12.Open US_Revenue_Consumer_EIC.xlf from this folder: \\..\Activity_Resources\Lesson 4\ExternalInterface\Start\ 13.In the Data Manager, add an External Interface Connection.
156
14.In Definition, click the + button. 15.In Range Name, type in UsMapData. 16.In Range Type, select Row/Column. 17.Use the cell selector to bind Range to cells D55 to L55. 18.In Access, select Write. 19.Click Close. 20.Save US_Revenue_Consumer_EIC.xlf in My Documents. 21.Export to HTML as US_Revenue_Consumer_EIC.html. Note: US_Revenue_Consumer_EIC.html must be in the same folder as US_Revenue_Provider_EIC.html. 22.Open Activity_EIC_Code_Start.html in Internet Explorer. 23.In Internet Explorer, from the View menu, select Source. Keep the Notepad window open so you can paste code into Notepad in a following step. 24.Open US_Revenue_Provider_EIC.html from My Documents in Internet Explorer. 25.In Internet Explorer, from the View menu, select Source. 26.Copy all code between the <body> and </body> tags (the object tags and everything in between the object tags) and paste that code into Activity_EIC_Code_Start.html following the comment that reads Note to Learner: Paste Provider.html here 27.Edit the id option in the OBJECT tag so that id="myMovieName" is replaced with id="usMapProvider". 28.Save Activity_EIC_Code_Start.html as Activity_EIC_Code.html in My Documents and keep open. 29.Open US_Revenue_Consumer_EIC.html in Internet Explorer. 30.In Internet Explorer, from the View menu, select Source. 31.Copy all code between <body> and </body> (the <object></object> tags and everything in between the <object></object> tags) and paste that code into Activity_EIC_Code.html in My Documents following the comment that reads
<!--Note to Learner: Paste Provider.html here-->
32.Edit the id option in the OBJECT tag so that id= "myMovieName" is replaced with id="usMapConsumer". 33.Save Activity_EIC_Code.html and close Notepad. 34.Open Activity_EIC_Code.html from My Documents in Internet Explorer. If no data is returned, first verify that you have correctly identified your ranges in the connection (the Range Names of the Consumer and Provider files must match). Next, verify that the definition of the Consumer connection has the Access set to Write. Verify that the object ID in your html matches the Range Name in your EIC connection in the Data Manager.
157
Finally, ensure that you have completed the optional procedure titled To set the Flash Player Security Settings to trust all local drives.
158
A sample query result can be generated from Xcelsius that displays the XML structure based on the data range to be replaced with XML. During runtime, an XML Data connection requires some server-side scripting to facilitate the querying of data and formatting of the XML to a specific structure required by Xcelsius. To refresh the data in visualization, you can initiate this query and format process on every load, at periodic intervals, or when a trigger cell meets your criteria.
159
<?xml version="1.0" encoding="UTF-8" ?> <col> - <data> - <variable name ="q1"> - <row> <column>Jan</column> <column>Feb</column> <column>Mar</column>
160
- </row> - <row> <column>149984.20000000001</column> <column>124561</column> <column>135432</column> - </row> - <row> <column>87736.399999999994</column> <column>78565</column> <column>81234</column> - </row> - <row> <column>97472.5</column> <column>104567</column> <column>89045</column> - </row> - <variable> - </data>
The XML Data connection lets you use send and load functionality simultaneously through one URL. The send ranges are sent to the URL prior to retrieving the load data. This lets you create scripts which examine the sent data and return data that corresponds to the values sent -much like a web request. For example, if a date was sent to a server script, the script could return the sales figures for that date. Excel ranges are mapped to XML using a row-column structure. For example, a one-row, three-column range named "ExampleRange" would be represented in XML with:
<variable name="ExampleRange"> <row> <column> Row1 Column1 value </column> <column> Row1 Column2 value </column> <column> Row1 Column3 value </column> </row> </variable>
where "Row1 Column1 value" would be the actual value of the cell in the first row and first column of the range, and so on. The entire group of ranges is encapsulated within <data> tags. During a load, XML is translated into Excel ranges using the reverse process.
161
may be displayed but the most common is Unable to Load URL: http://boe-server:8080/dswsbobje/services/session. A cross domain policy file is a simple XML file that gives the Adobe Flash Player permission to access data in a given domain without displaying a security dialog. The cross domain policy file on your web server controls which SWF files, running on which domains, can access your web server. When placed in a root folder of a server, it tells the Flash Player to allow direct access to data on that server, without prompting the user to grant access. Either download or create a crossdomain.xlm file and place it in the root folder of all necessary servers to allow the Adobe Flash Player used by Xcelsius 2008 access across domains. For example, for use between different BusinessObjects Enterprise servers, the crossdomain.xml should go in the associated Tomcat folders on each server. Location: C:\Program Files\Business Objects\Tomcat\webapps\ROOT. Here is an example of a cross domain policy file that allows any SWF, runningon any domain, access to your web server. This file needs to be placed in the root folder of your web server:
<?xml version="1.0"?> <!DOCTYPE cross-domain-policy SYSTEM "http://www.macromedia.com/xml/dtds/cross-domain-policy.dtd"> <cross-domain-policy> <allow-http-request-headers-from domain="*" headers="*" secure="false" /> <allow-access-from domain="*" secure="false" /> </cross-domain-policy>
There is an example crossdomain.xml setup file included with your BusinessObjects Enterprise installation. It is on the SDQA3 in the \\..\Tomcat55\webapps\ROOT\ folder and is a real world example you can view to see how the file is set up. In the Activity_Resources folder, you will find another crossdomain.xml file, which should work on any server for any purpose, setup with wildcards for any domain.
162
Selecting Enable Load will load XML data at the URL into the Load Ranges when the connection is triggered. 9. Click the Add (+) button to add a new range. 10.Bind the Range field to the range of empty cells from the spreadsheet that will contain your data. 11.Click the Usage tab. 12.Select Refresh on Load if desired. 13.Select Refresh every and indicate the desired automatic refresh rate if desired. 14.If desired, bind the Trigger cell field to a cell in the embedded Excel workbook and indicate the update method. Update methods include When Cell Updates, When Value Changes, or When Value Equals. 15.If desired, specify the Loading Message and Idle Message. 16.If desired, bind the Loading Message and Idle Message to a cell in the embedded Excel workbook. 17.If desired, select Enable Load Cursor and/or Disable Mouse Input on Load. 18.Click Close.
Optional Procedure: To set the Flash Player Security Settings to trust all local drives
Note: This procedure is only required if you encounter a Flash Player Security message (for example #2148 or #2170).
1. Go to http://www.macromedia.com/support/documentation/en/flashplayer/help/settings_manager04.html 2. In the Adobe Flash Player Settings Manager, select the Global Security Settings tab. 3. Select Always Allow. 4. Click Edit locations. In the Always trust files in these locations: drop down, select Add location 5. Click Add location. 6. Click Browse for folder. 7. Select the My Documents folder and click OK. 8. Repeat steps 5 through 7 for all folders where files will be stored during the course.
163
Scenario
You will define the XML structure used in the sample model called Total_Sales.xlf found in the Activity_Resources folder. This will ensure the model can connect to the XML data file and updated information is correctly displayed.
Instructions
1. Open Total_Sales.xlf from the Activity_Resources folder. Look at data in the embedded Excel workbook and familiarize yourself with the structure of the data. 2. Bind the Data field for the SuperBounce Tennis Balls Gauge to cell F5. 3. Use the Data Manager to add an XML Data connection. 4. Name the connection Total Sales. 5. Select Enable Load. 6. Add a range and name it by binding the Name field to cell C1. 7. Bind the Range field to the B2 to E5 range in the embedded Excel workbook. 8. Click Preview XML. Save the XML file as Total_Sales.xml. 9. In the XML Data URL field, type the full path to Total_Sales.xml file on your desktop. For example, C:\Documents and Settings\<UserName>\Desktop\Total_Sales.xml. 10.Change the MIME Type to Text. 11.On the Usage tab, set the connection to refresh every ten seconds and close the Data Manager. 12.Format the gauge for SuperBounce Tennis Balls so that it displays currency with zero decimal places. 13.Save Total_Sales.xlf. 14.Export the visualization as a SWF named Total_Sales.swf and save in the same location as Total_Sales.xml. 15.Open Total_Sales.swf. If you receive an error (typically #2148 or #2170) when doing this activity, execute the optional procedure titled: To set the Flash Player Security Settings to trust all local drives 16.Open Total_Sales.xml in an XML editor. 17.Test connectivity by changing the last value in the SuperBounce Tennis Balls group to 1,000,000. Save the file and observe Total_Sales.swf. The gauge for SuperBounce Tennis Balls should change within ten seconds of saving Total_Sales.xml.
164
After the Excel file has been set up, the next step is to build your visualization and configure the XML Map Options. For information on setting up the Excel file with an XML map, refer to the online help in Microsoft Excel.
Benefits
The Excel 2003 XML maps allows for the incorporation of XML data with any XML structure or schema into an Xcelsius model. This method provides a lot of flexibility and can be quickly and easily deployed into existing processes that output XML.
Intermediate Process
To initiate this method, some server-side scripting is required to facilitate querying and creating the XML file or stream. There are no requirements on the outputted XML structure or schema. This process can be scheduled based on the frequency that the data needs to be refreshed or can be set up as a dynamic query through HTTP. The XML file or stream must be successfully loaded into Excel as an XML map before importing into Xcelsius.
XML Format/Structure
The XML can be formatted as a physical file or can be returned as streaming XML. The XML must be accepted by Excel to be successfully leveraged as a live data source in a visual model.
Workflow
Import data into Excel and Map XML. Excel generates a generic schema based on the XML structure.
165
166
Activity: Connecting to XML with an existing definition using Excel XML maps
Objectives
Set up XML maps in a Microsoft Excel file Connect an Xcelsius visualization to XML data using an embedded Excel workbook that uses Excel XML maps
Scenario
You are an Xcelsius developer building a connected visualization based on an XML file called product_revenue.xml from the Activity_Resources folder. Build a model with a column chart to display the data from the XML file then test functionality after publishing the model by changing the value of the Tennis cap product from 76296 to 100000. Notice how the column chart in the model changes based on the new value.
Instructions
1. Edit the product_revenue.xml file using an XML editor to see the XML structure. Review the data stored in the file then close the file. 2. Open a new workbook in Excel. 3. To import an XML file into Excel, click Data > XML > XML source. 4. Click XML Maps in the XML source window. 5. Click Add and navigate to the location of product_revenue.xml in the Activity_Resources folder. 6. Select the XML file and click Open. 7. Click OK. 8. Click and drag the root folder to cell C5. 9. To see data from the XML file, right-click cell C5 and select XML > Refresh XML data. 10.Save the Excel file as Product_Revenue.xls and close Excel. 11.Open Xcelsius and import the file. 12.Add a column chart to the canvas. 13.Bind the Data field of the column chart to the range of cells defined by C6:D10. 14.Select Data > Connections. 15.Click Add then select Excel XML Maps. 16.Select the XML map available in the Excel spreadsheet. 17.Notice the XML Data URL is already populated with the XML file location. 18.Select the Usage tab.
167
19.Under Refresh Options, select the Refresh Every check box and specify a 10-second refresh interval. 20.Click Close. 21.Save the visualization as Excel XML Map.xlf. 22.Export the visualization as a SWF named Product_Revenue.swf. 23.Close Xcelsius. 24.Open Product_Revenue.swf. 25.Open product_revenue.xml in an XML editor. 26.Test connectivity by changing the value for Tennis cap to 1,000,000. 27.Save the file. Within ten seconds, the visualization should refresh and display the updated data in the chart.
168
Benefits
A visualization connection by a Web Service to data can perform real-time queries against a database using out-of-the-box point-and-click connectivity. Assuming that there are Web Services available, this is the easiest method for connecting an Xcelsius visualization to live data using ad hoc queries.
169
170
9. Bind the Read From field to a cell in the embedded Excel workbook where the Web Service should look for input data for the input type selected. Repeat steps 8 and 9 for all required input values. 10.Select an output value. 11.Bind the Insert In field to a cell in the embedded Excel workbook where the Web Service should place the returned data for the output type selected. 12.Click the Usage tab. 13.Select Refresh on Load if desired. 14.Select Refresh every and indicate the desired automatic refresh rate if desired. 15.If desired, bind the Trigger cell field to a cell in the embedded Excel workbook and indicate the update method. Update methods include When Cell Updates, When Value Changes, or When Value Equals. 16.If desired, specify the Loading Message and Idle Message. 17.If desired, bind the Loading Message and Idle Message to a cell in the embedded Excel workbook. 18.If desired, select Enable Load Cursor and/or Disable Mouse Input on Load. 19.Click Close.
Scenario
You have been asked to create a currency conversion model. The WSDL URL has been supplied to you in the spreadsheet along with a list of country names and codes used by the WSDL. This visualization requires an Internet connection.
Instructions
1. Create a new visualization. 2. Replace the embedded Excel workbook with currency converter.xls. 3. Add a List Box selector titled 'From' that displays country names. 4. Under Data Insertion, specify a Row insertion type. The source data comprises the Country Codes and Country Names columns (G7 through H157) and the destination is the yellow range titled From Country (B7 and C7). 5. Add another List Box selector titled 'To' that displays country names. 6. Under Data Insertion, specify a Row insertion type.
171
The source data comprises the Country Codes and Country Names columns (G7 through H157) and the destination is the yellow range titled to Country (B10 and C10). 7. Add a Label and link it to cell D7 (the blue Conversion cell) in the embedded Excel workbook. Increase the size of the font on the label if necessary. 8. Copy the WSDL url from cell H2 in the embedded Excel workbook to your clipboard.
http://www.webservicex.net/CurrencyConvertor.asmx?wsdl
You may also want to use one of these alternate Web Services: http://www.flash-db.com/services/ws/stockHistory.wsdl http://api.google.com/GoogleSearch.wsdl http://soap.search.msn.com/webservices.asmx?wsdl http://www.webservicex.net/usaddressverification.asmx?wsdl http://www.weather.gov/forecasts/xml/DWMLgen/wsdl/ndfdXML.wsdl 9. Add a Web Service Connection using the Data Manager. 10.Name the connection Currency Converter. 11.Paste the URL from your clipboard to the WSDL URL field and click Import. 12.In the Input Values window, bind FromCurrency to cell B7 and bind ToCountry to cell B10. 13.In the Output Values window, bind ConversionRateResult to cell D7 . 14.Select the Usage tab. 15.Under Refresh Options, select Refresh on Load and click Close. 16.Add a Connection Refresh Button to the Canvas. 17.On the General Property sheet of the Connection Refresh Button, select the Currency Converter check box to force the query to refresh when the button is clicked. 18.On the Behavior Property sheet, bind the Trigger Cell to cell D7 and select When Value Changes. 19.Save the visualization as currency converter.xlf. 20.Preview the visualization to test the connection to the Web Service. 21.Export the model as a SWF named currency converter.swf. 22.Open currency converter.swf and verify that the model reflects the country selected.
172
173
To connect to Crystal Reports data using a Crystal Report Data Consumer connection
1. Create a new blank Xcelsius visualization. 2. Starting in cell B1 of your embedded Excel workbook, create a column header for each field in your Crystal Report. 3. Starting in cell A2 of your embedded Excel workbook, create a row header for each record in your Crystal Report. 4. Designate a range in the embedded Excel workbook where your Crystal Report data will reside by changing the fill color of the cells in that range to yellow.
174
5. From the toolbar, click Manage Connections. 6. From Add drop-down menu, click Crystal Report Data Consumer. 7. On the Definition tab, bind the Row Headers field to the Row Header cells in the embedded Excel workbook. See image in Step 3 for an explanation of Row Header cells. 8. Bind the Column Headers field to the Column Header cells in the embedded Excel workbook. See the image in Step 3 for an explanation of Column Header cells. 9. Use the Cell Selector button to bind the Data field to the cells that contain your data in the embedded Excel workbook. 10.If desired, type a description for the Data Connection in the Description field that will be saved with the file. 11.Click Close.
Scenario
Based on the Crystal Report 2008 file provided called Electronic Sales.rpt, build an Xcelsius 2008 visualization that displays a column chart to visualize the data in the Electronic Sales report. Once the visualization is exported to a flash file, embed the SWF file in the Electronic Sales report.
175
Instructions
1. Launch Crystal Reports 2008 and open Quantity_Sold_CR.rpt from the Activity_Resource folder in Preview mode to see where to place the Xcelsius visualization and what data will appear. If you are prompted for credentials, use the CMS system name, user name, and password assigned to you by your instructor. 2. Launch Xcelsius 2008. 3. In the embedded Excel workbook, set up the columns that will represent the fields from the Crystal Report. Name one column header, cell B2, as Store Name and cell C2 as Quantity Sold. Select cells B3 to C15 and highlight them yellow to indicate that these cells will be the data in your connection. 4. Add a Column Chart to the canvas and bind the data field to the cells. 5. In the Data Manager, add a Crystal Report Data Consumer connection. 6. In the Definition tab, bind the Row Headers field to the range B3 to B15. 7. Bind the Data field to the range C3 to C15. 8. Click Close. 9. Save file as Quantity_Sold_CR.xlf and export as Quantity_Sold_CR.swf. Note: When you preview the visualization, no data is visible. 10.Close Xcelsius 2008 and go to Crystal Reports 2008 and view Quantity_Sold_CR.rpt in Preview mode. 11.From the Insert menu, select Flash. 12.In the Insert Flash Object window, click Browse and select the Quantity_Sold_CR_swf file and embed it in the RHb section of the Crystal Report. 13.Right-click on the Xcelsius chart and select Flash Data Expert. The Flash Data Binding Expert appears. 14.On the Xcelsius Data tab, expand Report Fields and drag efashion_query.Store Name to the Insert Row Label box beneath it. 15.On the Xcelsius Data tab, expand Report Fields and drag efashion_query.Quantity Sold to the Insert Data Value box beneath it. 16.Click OK. 17.From the View menu, click Print Preview. You will see the data from the Crystal report reflected in the Xcelsius Column chart.
176
177
178
10.Bind the Read From field to a cell in the embedded Excel workbook where the Web Service should look for input data for the input type selected. Repeat steps 8 and 9 for all required input values. 11.Select an output value. 12.Bind the Insert In field to a cell in the embedded Excel workbook where the Web Service should place the returned data for the output type selected. 13.Click the Usage tab. 14.Select Refresh on Load if desired. 15.Select Refresh every and indicate the desired automatic refresh rate if desired. 16.If desired, bind the Trigger cell field to a cell in the embedded Excel workbook and indicate the update method. Update methods include When Cell Updates, When Value Changes, or When Value Equals. 17.If desired, specify the Loading Message and Idle Message. 18.If desired, bind the Loading Message and Idle Message to a cell in the embedded Excel workbook. 19.If desired, select Enable Load Cursor and/or Disable Mouse Input on Load. 20.Click Close
Scenario
You have sales data for each of your stores in BusinessObjects Enterprise. You have extracted the data to an Excel workbook (Quantity_sold.xls ). Build an Xcelsius visualization that allows users to retrieve data for a particular store and year from the Enterprise using Query as a Web Service.
Instructions
1. Launch Query as a Web Service. 2. Click New. 3. In Web Service Name field, type Quantity_Sold_<unique-identifier>. Use the last three digits of your login ID (for example Quantity_Sold_S01, Quanity_Sold_S02, Quantity_Sold_S26, etc.) as your unique identifier. 4. Click Next.
179
5. Select eFashion universe from Universe folder. 6. Click Next. 7. Select Store name from Store Class, Quantity Sold from Measures class, in query filters place Year equals to Prompt <Enter value(s) for <Year> 8. Click Next. 9. Select the value 2004. 10.Once data is returned in window panel, click Publish. 11.Click To Clipboard. Your WSDL should like this: http://<webserver>:8080/dswsbobje/qaawsservices/?def&cuid=<unique CUID> Note: The unique CUID could look like this:
http://twdf0281:8080/dswsbobje/qaawsservices/?def&cuid=ATqWz_tXHCFAkxrgd.NX8.4
12.Close Query as Web Service. 13.Launch Xcelsius. 14.Replace the embedded Excel workbook with Quantity_sold.xls from the Activity_Resources folder. 15.Add a Combo Box selector to the canvas and bind the Year field to the values in G5:G7. 16.Add a Column Chart to the canvas and bind the Data By Range field to the Store Name and Quantity Sold columns (C6:D26). 17.Select Data in Rows. 18.Click Manage Connections. 19.Click Add, then select Query as a Web Service. 20.In the Definition Tab, name the connection Quantity_Sold. 21.Paste http://<webserver>:8080/dswsbobje/qaawsservices/Quantity_Sold?WSDL from the clipboard into the WSDL URL field and click Import 22.In the Input Values window, select Enter_value_s_for_Year and bind it to the Select Year yellow destination cell in the embedded Excel workbook (Cell H4). 23.In the Output Values window, select Row Fields and bind the Insert In field to the range defined by C6 to D26. 24.In the Usage tab under Refresh Options, select Refresh on Load. This option ensures that the cell range (C6 to D26) contains data when the visualization is first opened. 25.Add a Connection Refresh Buttonto the canvas. 26.On the General Property Sheet of the Connection Refresh Button, select the check box for Quantity_sold.
180
27.On the Behavior Property Sheet, bind the Trigger Cell field to the destination cell of the List Box in the embedded Excel workbook (H4). 28.Select When Cell Changes. 29.Click Preview. 30.Verify that the visualization is working correctly and click Preview. 31.Save the visualization as Quantity_Sold_QAAWS.xlf in the \\..\My Documents\Favorites\ folder. 32.Export to a SWF (Flash file) named Quantity_Sold_QAAWS.swf to the \\..\My Documents\Favorites\ folder. 33.Open Quantity_Sold_QAAWS.swf and observe the model refresh based on combo box selection.
181
182
The List Box Type allows the designer to specify set values that can be selected by the user. Text, Number, Check Box, and Date allow the user to enter any value into the parameter. If the value they enter is not compatible with the visualization, the correct behavior will not occur. The List Box type eliminates this issue because the user must select from values the designer provides.
183
Objective
To build two Xcelsius models that will be displayed in a Corporate Dashboard. The intent is to have one xcelsius model talk to the another model based on what is selected by the user.
Instructions
1. Launch Xcelsius 2008. 2. Open US_Revenue_Provider.xlf found in this folder:
\\..\Activity_Resources\Lesson 4\Portal\Start\
3. In the Data Manager, select Portal Data. 4. In Connection Type, select Provider. 5. In Range Name, type in USMap. 6. In Range Type, select Row. 7. In Range, bind the range of cells from D55 to L55. 8. In Usage Tab, select cell D55 as the Trigger cell. 9. Click Close. 10.Save your visualization. 11.Export the visualization to BusinessObjects Enterprise as a Flash file named US_Revenue_Provider.swf that resides at this location: All > My Favorites. 12.Open US_Revenue_Consumer.xlf. 13.In the Data Manager, select Portal Data. 14.In Connection Type, select Consumer. 15.In Range Name, type in USMap. 16.In Range Type, select Row. 17.Use the cell selector button to bind Range to this range of cells: D55 through L55. 18.Save the visualization. 19.Export the visualization to BOE as a Flash file named US_Revenue_Consumer.swf that resides at this location: All > My Favorites. 20.Log into Infoview as Administrator. 21.Go to Dashboard, and select My Dashboard. 22.Select Add Dashboard. 23.Save the Dashboard as Portal Dashboard at this location: All > Public Folders > SAP Business Objects Training > BOX310. 24.Go to Edit Dashboard.
184
25.In the Analytic Toolbox, select Personal Analytics and navigate to this location: All > My Favorites. 26.Drag US_Revenue_Provider.swf and US_Revenue_Consumer.swf to the Dashboard. 27.Select Content Linking. 28.In the Content Linking window, select US_Revenue_Provider as the Source Analytics and select US_Revenue_Consumer as the Target Analytics using the checkbox. 29.Click OK. 30.Save the current dashboard. 31.Click OK. 32.Exit Edit Mode.
185
186
187
3. On the Definition tab, click the View that you want the LiveOffice connection to refresh against. Note: If your Excel spreadsheet contains more than one View, you can choose one, some, or all of the Views listed in the Views area of the Definition tab. Only the data from the Views you choose will be refreshed when the Xcelsius visualization is refreshed. You can increase the range of cells that your Xcelsius 2008 visualization is able to accommodate so that if the data grows, your Xcelsius visualization will continue to analyze the full data set properly. In the Ranges area of the Definition tab, you will see the cell ranges that have been imported for the selected view. To increase the original range that you selected: a. Click the range that you want to adjust. b. Click the cell selector button under the Ranges area. c. Select a new range from your spreadsheet and click OK. The new cell range is reflected in the field next to the cell selector button. 4. On the Usage tab, set the refresh options you want. Refresh on Load automatically refreshes the data whenever you open the file. Refresh on Interval automatically refreshes on the time interval you specify. The time is measured in seconds. If you do not select either of these options, the refresh will be manual. You will need to add and configure a Connection Refresh button to the visualization, which the end user can click to refresh the connection. 5. Export your visualization to any format you choose. Depending on what option you chose in step 4, the Xcelsius 2008 Visualization will be refreshed when you open it, when you click the Connection Refresh Button, or at the set time interval.
Views
The Views area lists the Live Office Views that are used as data sources in the XLF file.
Ranges
The Ranges area lists the Excel ranges that can be selected for refresh in the XLF file. The ranges are split into headings and data grid.
188
Click the Cell Selector button below the Ranges area to select a different range of cells to refresh.
Activity: Setting up the workbook for use with Live Office data
Objective
Build an Excel workbook populated with data from a Live Office connection to a Web Intelligence report
Scenario
You need to prepare a workbook for use with Xcelsius that pulls data from a Web Intelligence report. Understand the process to build a spreadsheet of an OnDemand Live Office Connection against a Web Intelligence document.
Instructions
1. Launch BusinessObjects Enterprise Java Infoview. This application can be found at Start>Programs> BusinessObjects XI 3.0> BusinessObjects Enterprise > BusinessObjects Enterprise Java Infoview. 2. Log in using the user name and password provided by your instructor. 3. Select DocumentList, Select New > Web Intelligence Document. 4. From the universe list, select the eFashion Universe. 5. Select Store Name from Store Class, Quantity Sold from Measures class, in query filters place Year equals to Prompt Enter Year: 6. Click Run Query, select value 2004. 7. Save Web Intelligence document as Quantity_Sold in the All > My Favorites folder. 8. Log out of Infoview. 9. Launch Microsoft Excel. 10.From the LiveOffice menu, select Insert > Web Intelligence Content. The Log onto BusinessObjects Enterprise dialog box appears. 11.Log in as Administrator with a blank password once Validation succeeded and OK button is active. 12.Navigate to All > My Favorites, select the Quantity_Sold report and click Next. 13.In the Choose Data window, click the block in the window which displays the Web Intelligence document and click Next. 14.In the Summary window, in the Live Office Object Name(s) field, accept the name that is already displayed, Quantity_sold document part. Click Finish. The block of data will now be in the spreadsheet. To set up the cell that will accept the year values to answer the prompt in Web Intelligence, you must set up a refresh-on-demand cell. 15.From the LiveOffice menu, select Properties for All Objects.
189
This is where you will see the information of the Live Office objects. 16.Make sure the Refresh Setting has OnDemand selected. 17.Select Quantity_sold document part and click the Refresh tab. 18.From the LiveOffice menu, select Refresh All Objects. This refreshes the data in the embedded Excel workbook and connects to the Web Intelligence document. 19.You should see a prompt window, enter 2005 and click OK. 20.From the LiveOffice menu, select Properties for All Objects. The Prompt tab appears. 21.From the Prompts tab, select the Enter year row and click Prompt Values. 22.Select the Choose Excel data range option. 23.Use the cell selector button to bind the data range to $E$2 and click OK. 24.Click OK to close the Specify Prompt Values window. 25.Click Ok to close the Properties for All Objects window. Year values appear in a drop-down menu in the E2 cell. 26.Save the workbook as Quantity_Sold_My_LiveOffice.xls.
Activity: Populating your embedded Excel workbook with Web Intelligence data using Live Office
Objective
To build a visualization based on an embedded Excel Workbook that uses a Live Office connection to an On Demand Web Intelligence report
Scenario
You need to prepare an Excel workbook for use with Xcelsius that pulls data from a Web Intelligence report. Understand the process to build a spreadsheet of an OnDemand Live Office Connection against a Web Intellgence document.
Instructions
1. Launch Xcelsius. 2. Replace the embedded Excel workbook with Quantity_Sold_LO.xls, from Activity_Resources. Note: You may also use the Live Office-enabled workbook named Quantity_Sold_My_LiveOffice.xls you created in the previous activity named Setting up the workbook for use with Live Office data. 3. Add a Column Chart to the canvas.
190
4. Bind the Title field to cell B1. 5. Bind the Subtitle field to cell E2. 6. Bind the Data by Range field to cells B2 through B14. 7. On the Behavior tab, select the appropriate option to suppress the missing values. 8. Add a Combo Box to the canvas above the Column chart. 9. Edit the label values. You will only use three values: 2001, 2002, and 2003. Remove the extra labels from the list. 10.Click OK. 11.To insert the label names into the spreadsheet, select Label from the Insert Option list. 12.Bind the Label Insert In field to E2. This cell contains a bound parameter, so any change to the parameter value triggers a data refresh, returning only the records from the selected year. 13.Using the Data Manager, add a Live Office connection. The visualization recognizes the Live Office part that is already in the Live Office-enabled workbook. 14.In the Usage tab of your Live Office connection, check Refresh on Load and Refresh on Trigger, bind E2 to the Trigger Cell and select the When Cell Updates option. 15.Click Close. 16.Save file as Quantity_Sold_LO.xlf and export file as Quantity_Sold_LO.swf. 17.Close Xcelsius and open Quantity_Sold_LO.swf and verify the functionality of your visualuzation.
Setting up QaaWS to connect to the OLAP cube to access SAP data To set up QaaWS to connect to the OLAP cube to access SAP data in a Crystal Report
These are high level steps that describe the procedure required for using data from SAP in an Xcelsius visualization.
191
2. Publish to your BusinessObjects Enterprise. 3. Create Live Office-enabled workbook that consumes Crystal Report data. 4. Save your Live Office-enabled workbook to your Enterprise. 5. Create a new visualization using Xcelsius. 6. Import data from the Live Office-enabled workbook that you saved to your Enterprise. 7. Create a new visualization using Xcelsius. 8. Create a new connection using the Data Manager. 9. Add and binds components to the data you imported in step 7. 10.Export and save to your Enterprise.
192
Deeper Investigation
Xcelsius visualizations are highly adept at displaying information, but making sure that information is helpful before you begin your Xcelsius visualization can help avoid re-work and wasted effort. Be prepared to ask additional open ended questions to help understand how the visualization will be used. Ensure that you know precisely who the audience will be. Sometimes the real need behind a business requirement isn't expressed in the initial request.
Scenario
You and your teammates work for an oil company that wants to evaluate the impact of two variables (changing market price of crude oil and the average US production cost) on the company's profit per day and production costs per day. In addition, the company needs to know which states are meeting their target given the changing value of those two variables.
Instructions
1. Review the data in well production3.xls from the resource CD. 2. Sketch a mockup of your visualization on paper. Your mockup should include a map-based alert for each state, and single value components that show the effects of changing crude oil market prices and the average US production costs. 3. Create a visualization that meets the business scenario above.
193
4. Export your SWF and prepare to present your visualization to the other students in class.
Scenario
You and your teammates have been assigned to design a visualization that mimics a competitors scanner selector tool.
Instructions
1. Review the data in scanners.xls from the resource CD. 2. Create a visualization that mimics the functionality in scanner_selector.swf. 3. Export your SWF and prepare to discuss how you created your visualization to the other students in class.
194
195
Lesson summary
After completing this lesson, you are now able to: Use live data sources Connect to XML data Connect to data using an existing Web Service Connect to Crystal Reports data Connect to BusinessObjects Universes using Query as a Web Service Use Live Office data Work with Business Requirements
196
Appendix A
To set up an LCDS
1. Install LCDS & Xcelsius LCDS Connector. 2. Use FlexBuilder/Eclipse to create a new LCDS project and some sample feeds. 3. Deploy the LCDS project to Tomcat. 4. Use the LCDS Connector to attach an Xcelsius visualization to the feed for Real-time data stream visualization.
197
Connecting to Sharepoint
Introduction
After completing this unit, you will be able to: Add Xcelsius visualizations as SharePoint web parts
Adding Xcelsius visualizations as SharePoint web parts To set up SharePoint web parts for use in Xcelsius visualizations
This demonstration provides the high level steps required to add Xcelsius visualizations as SharePoint web parts
1. Create a document library in SharePoint. 2. Add an Xcelsius Web Part to the SharePoint Web Part Gallery. 3. Create a Web Part Page. 4. Verify that the document library appears on your SharePoint home page.
198
Answer Key
This section contains the answers to the reviews and/or activities for the applicable lessons.
199
200
A. A. A. A. A. A. A.
2. What are valid methods for bringing data from Excel into an Xcelsius model? Answer: Copy from Excel and paste into the embedded Excel workbook in Xcelsius Import external Excel workbook into embedded Excel workbook Enter data manually into the embedded Excel workbook in Xcelsius 3. What Property sheet would you use to indicate performance using color coding? Answer: Alerts. 4. Function
Chart
A chart that represents the distribution or participation of each slice (item) over a certain A. total that is represented on overall value. A chart that allows easy comparison of values in a radial layout. A chart that allows you to compare several variables over a period of time by adding one variable on top of another within a column. A chart that displays data that requires two dimensions to show each data point as a result of the intersection of X values and Y values.
A. A. A.
A chart that lets you compare a group of items or series based on three different A. parameters. It has an X axis and Y axis to represent the item location over the chart area, and a Z value to represent the item size.
5. Several of the following items are Excel best practices when working with Xcelsius. Which one is not an Excel best practice?
201
Answer: d. Use tabs for larger spreadsheets. 6. A chart is bound to the embedded Excel workbook by Range (Data in Rows) to the workbook shown below. How can you specify the behavior of the bound chart so that it does not display the July values until those cells contain data?
Answer: From the Behavior property sheet, select Ignore Blank Cells - In Series. 7. Which of the following methods will produce an Excel .XLS file that contains a copy of the data in the embedded Excel workbook in an .XLF file? Answers: a. From the Data menu, select Export . b. From the File menu, select Snapshot Current Excel data. d. From the File menu, select Preview File Snapshot current Excel. 8. Which files created in BusinessObjects Xcelsius Enterprise 2008 can be sent to BusinessObjects Enterprise? Answers: b. XLS (Excel) c. SWF (Xcelsius Flash) e. XLF (Xcelsius design)
202
203
204
205
206
207
9. True or False: In the WSDL file created by Query as Web Service, there is no data displayed in the WSDL file. Answer: True, the only details are stored in the WSDL file is information pertaining the definition of the query but no actual secured data is exposed in the file. 10.When can the model refresh the data from the Existing Live Office Connection? Answer: You can refresh via interval set in the Exisitng Live Office Connection or by Trigger cell via the Connection button. 11.True or False. You can have more than one Live Office connection in your workbook. Answer: True. You can have more than one Live Office connection, and those connections can be for more than one type of data source (for example, a Crystal Report instance, a Web Intelligence On Demand document, or a Universe). You may also have connections to multiple cell ranges with data bound to different ranges of cells.
208