A standard use of Xcelsius for creating standalone reports based on BEx query data loaded via web services. Report interactivity is achieved by taking advantage of Xcelsius capabilities to mimic Excel pivot tables via Excel functions like SUMIF.
Web Service BEx Query Data
The starting point is represented by a BEx query similar to the one described in the first airline report. A remote function module is created to load the query data. Based on it, a web service is generated. This web service will be used by Xcelsius to load the query data into an Excel spreadsheet. Continue.
Pivot Table Concept
Once the query data is loaded into Xcelsius, an interactive list box gets initialized with possible airline options from a series of spreadsheet cells. List box data insertion functionality allows us to update a given spreadsheet cell with the current selected list box entry. All interactive elements from this report are based in one way or another to this single spreadsheet cell containing the current selected airline. Continue.
Static and Dynamic Data
Loading dynamic query data via web services in an ABAP stack is not an option for the online environment this site is hosted under. But loading data via static XML files is always an option no matter the environment. Xcelsius needs to have the xml data formatted in a certain way and because of this Xcelsius itself was used to transform the web service query data into compatible xml data. The end result is a static xml file that gets loaded every time you view the online report. Continue.
Update: Source files can be downloaded from here. The archive contains two Xcelsius xlf file (loading web service data and xml data) and the code for the remote function module used for creating the web service consumed by Xcelsius.