Posts Tagged ‘Xcelsius SDK’


Extending the Xcelsius SDK

The Xcelsius SDK as it stands today is a set of core functionality that provides developers with the ability to inject virtually any type of Flex application or component into the Xcelsius designer. The SDK offers a great deal of flexibility and essentially gives developers a blank canvas to start from.

With all of this flexibility available, which is what most developers ultimately want, the SDK can often times be a stumbling block for people trying to get started on custom component development. It never was for me personally, I took a look at some of the examples that came bundled with the SDK and was quickly off and running. However, I think that I picked it up faster because I had a lot of experience in Flex and Xcelsius, so there wasn’t a fundamental gap in my mind as to how all of the pieces fit together.

I think that the gap that causes a lot of developers who are new to the SDK to spend a lot of time up front, is trying to figure out how the entire platform fits together and how their component fits into that picture.  This makes sense, because most developers want to know what’s going on in the grand scheme of things so they can make the right development decisions at the component level.

With the way the current SDK is set up, there’s no really, really clear path for even fairly talented Flex developers (that are unfamiliar with Xcelsius) to jump in and get started without first getting mired down in the technical minutia. Like I said, the SDK offers a great deal of flexibility. It’s the brick, mortar, wood and nails you need to build a house. My thought is; is there a way to repackage the SDK to where all of this flexibility still exists, but at an easier to use level? Instead of wood and nails, could we give people highly configurable frames and still achieve the same ultimate objective?

I think this is definitely possible and have started to spec out a framework that would enable a Flex developer to come into the SDK, drag and drop a few components onto a property sheet, and with absolute minimum customization, facilitate even the most complex of Xcelsius integrations. The goal is to bypass the finer details of boiler plate property sheet operations and integrations and instead focus attention on what matters most – the guts of the actual component and making a great UI for the property sheet.

My parting questions to developers invested in the SDK are:

  1. Do you like how it’s currently structured?
  2. What if anything did you find challenging?
  3. What would make it easier to work with?
  4. What are the top 3 features you’d like to see included?

I’m gathering this feedback for a labs project that I’m working on for the upcoming ASUG event and will be able to share the result with other SDK developers. All input is welcome.

Evan DeLodder is CTO at Centigon Solutions, an SAP Partner focused on the development of cutting edge mapping technologies in the Business Intelligence space. To learn more about him, please visit our Gurus page.


Where to get SAP BusinessObjects Dashboards (Xcelsius) Add-Ons

For those of you who have looked to the “Get More Add-Ons” link inside of Xcelsius, you may have noticed that there are no longer add-ons available. Over the last year, it looks like SAP has been slowly de-commissioning the On-Demand community site to emphasize other communities. While we are sad to see it go, I assume that this link will soon point to another location; hopefully somewhere like Ecohub.

There are some realities when it comes to the Xcelsius marketplace and the SDK. The original vision to foster a marketplace for developers to contribute components never took off for many good reasons. The iStore model only works when there is a critical mass around a platform, a marketplace large enough to support commerce, and a dedicated effort to support and evolve the SDK. Instead, we have small but dedicated group of individuals and software solution providers who currently offer powerful complimentary solutions for SAP BusinessObjects Dashboards and Xcelsius. I have been fortunate to see many of them in action over the years and believe that the On-Demand store did not provide visibility to these great solutions.

So where do we go now for SAP BusinessObjects Dashboards and Xcelsius add-on solutions?


If your organization is deploying enterprise dashboards inside of BusinessObiects using SAP BusinessObjects Dashboards, the first place you can look is SAP Ecohub . This website features certified solutions not only for SAP BusinessObjects Dashboards and Xcelsius, but also other SAP enterprise applications.


The second place, and probably most important are vendor web sites and blogs that provide the level of detail and support that you would require to ultimately make a decision to use or purchase an third party solution.


A third place to find information about add on solutions for Xcelsius is at EverythingXcelsius.comResources” page. I invite anyone who creates a plugin or complimentary software solutions specifically designed for SAP BusinessObejcts Dashboards or Xcelsius to comment on this post. Perhaps from this, we can generate a permanent list of vendors and products here on EverythingXcelsius.

Hopefully this move will give customers access to certified solutions, and a good venue to host a more complete list of add-ons here to give everyone out there visibility to what is available.

Ryan Goodman is the Founder of Centigon Solutions, an SAP® software solution partner, that is strategically focused on developing add-on products for use with Xcelsius®. To learn more about him, please visit our Gurus page


Basic Custom Data Grid Component for Xcelsius

Basic Data Grid

Recently, a person new to the SDK asked how to create a custom read-only data grid component for Xcelsius.  Luckily, this is fairly easy to achieve with one read-only property integration with the SDK. This basic example could be extended to include style and selector functionality and can hopefully serve as a base for anyone interested in developing a custom grid. This isn’t performance optimized and is meant to be very simplistic, so if you do decide to run with it, you’ll need to do some basic housekeeping to get your component up to snuff.

Why would someone want this?

Most likely due to performance enhancement opportunities, word-wrapping and dynamic formatting and/or dynamic selection capabilities, which are all common features desired by many who use the list view and grid-type components. If you’d like to see some of these features implemented in a subsequent blog post, leave a comment on which one(s) you’d like.

You can download the source files for the data grid here.

Evan DeLodder is CTO at Centigon Solutions, an SAP Partner focused on the development of cutting edge mapping technologies in the Business Intelligence space. To learn more about him, please visit our Gurus page.


HTML5 + Xcelsius: Local Data Storage

Xcelsius does not have a built-in feature that allows the storage of local data, a commonly requested piece of functionality. Up until very recently there has been no really easy way to accomplish it with simple client tools, and one way or another it required jumping through several hoops. Fortunately, HTML 5 brings us a feature called localStorage, which allows HTML pages to store data locally across browser sessions and after the closing of the browser window. This is one of many capabilities that HTML5 brings to the table, transforming the browser into a tool with much more potential for serving up fast, more powerful and lightweight applications.



Breaking Boundaries with Custom Components Pt 2

Last week we showed you how to share data between swf files in an SCDD dashboard. One limitation was that the shared data was not coming back up through the SCDD Excel model in a manner that native SCDD components could consume. This week, that problem has been eliminated as the example below illustrates. By using a very simple “input” and “output” component, we can share large volumes of data, not only between custom components, but with the entire SCDD model.



Gauges and Globes – Highly effective, ineffective dashboards

In his article “The Slow Death of a Gauge,” Ryan Goodman makes a number of great points about the use of gauges in dashboards and he is absolutely correct, for many reasons, gauges are not a great way to display information in a dashboard and if you are using them you should look at some of Ryan’s recommendations for alternatives.

However, there is one thing which I think he underplays and that is, in his words, “the emotional effect that Xcelsius has on customers is amazing”. Having seen and given many demos of Xcelsius in my time, I completely agree, it is a technology which not only leaves people wide-eyed and open mouthed, but more often than not, it also leaves them wanting attractive, interactive dashboards filled with their information (and for what it is worth I deam convinced there is a strong, positive correlation between the seniority of an end-user and the power of this effect!). In short, they leave the demonstration significantly more engaged in BI than when they entered. Having seen this happen over and over again, I am convinced that this “Xcelsius engagement effect” is not only a critical value in the BI life-cycle, but also leads to the bizarre concept of the effective/ineffective dashboard.

The only way something can be effective and ineffective at the same time is to be effective for one purpose whilst being ineffective for a different purpose, and this is exactly what is at work here. Business Intelligence has two great challenges:

  1. Providing high-quality, timely, usable information and analysis to end-users
  2. Engaging end-users so they actually use this information and analysis once it is delivered

And sadly, just because you deliver 1) does not guarantee that 2) will automatically follow. In fact, sometimes the more effective something is at 2), the less effective it is at 1) and vice versa. A great example of this is the XGlobe component (free to download), which is definitely at the emotional/engagement end of the spectrum. I have yet to see anyone react poorly to it, people instinctively love it. I even heard a story about a senior executive who saw it at a morning seminar and all he could talk about back at the office in the afternoon was “the dashboard with the spinning globe in it”. However, I have yet to see it put to good use in a day-to-day, operational dashboard (any references to examples are very welcome). Try spinning the XGlobe below and see what you think.

Adding such blatant “eye-candy” to demo dashboards may seem like a classic “bait and switch” tactic, but trust me, it is highly effective at drawing end-users into the BI world and engaging them. The first “demo” dashboards you show them may not be useful, but they will love them. The ones you deliver in your proof of concept can be more real-world and as likely as not, after a few weeks of production use the users will be back begging you to remove the globes and gauges to free up screen space for more data, and at that point, they are engaged, the dashboards are theirs and adoption is much more likely to follow.

Having said all that, you have to be careful with engaging end-users emotionally like this. It dramatically increases the stakes, and expectations for a quick, comprehensive delivery are all the higher. You should also be aware, that as they learn more, users will inevitably change their minds about what they want. This will require a solid infrastructure that enables delivery of robust, drillable, interactive data, quickly and easily through Xcelsius, in an easy to maintain way, but that is a topic for another day.

If this topic is of interest to you, I invite you to attend my presentation, “Visualization for Experts” at the SBOUC in Orlando, FL,  on Wednesday, October 06, 2010, 2:45PM – 3:45PM.

Donald MacCormick is a board member and strategic advisor to Antivia, an SAP® software solution partner, and creator of XWIS the Xcelsius-to-SAP BusinessObjects connectivity solution. In past years, he was a long term member of BusinessObjects and Crystal and part of the team that brought Xcelsius into the BusinessObjects portfolio.


NEWS: First FleXcelsius Bootcamp!!

Interested in learning how to use the Xcelsius SDK?  Then don’t miss this one time opportunity to learn from the best of best, none other than the FleXcelsius Gurus, as Centigon Solutions hosts the first ever FleXcelsius Bootcamp!

In this is a one of a kind boot camp, you will learn how to transform Flex components into configurable Xcelsius add-ons as well as learn how to maximize the Xcelsius SDK with your existing Flex development skills and create brand new components. Our bootcamp instructors will arm you with enough hands on experience and sample code to tackle custom component and connections for your organization’s Xcelsius dashboard initiatives.

At this Bootcamp you will receive:

  • 2 days of intensive hands on Flexcelsius training
  • Training material + labs source code
  • 2 functional components with source code included
  • Lunch is provided on both days
  • Perfect San Diego weather!
  • And more….

Unfortunately we only have a few seats left so Register Now!

Evan DeLodder is a Senior Software Engineer focused on the development and application of cutting edge Rich Internet Application technologies in the Business Intelligence space. To learn more about him, please visit our new FleXcelsius page.


Custom Component Style Preservation

During my time as a custom UI component developer for Xcelsius, I have encountered user interface styling and skinning loss at Xcelsius runtime and recently spoke to several developers who have experienced this issue as well. Fortunately, the workaround to preserve styles is fairly easy to apply.

The problem:

You may develop a button, canvas, list box, tree viewer or other UI component in Flex, apply inline styling directives, package it up for use in Xcelsius and view it in the Xcelsius designer without issue.  However, when you enter runtime mode in Xcelsius, your component may lose some or all of its inline styles, rendering it partially unusable or invisible. This is due to the parent Flex Xcelsius application inadvertently stripping away styles at runtime.

The solution:

For a generic solution to skinning and styling reapplication, you’ll need to reference in your project library path, the haloclassic.swc swc in the Flex SDK directory (a path similar to this C:\Program Files (x86)\Adobe\Flex Builder 3\sdks\2.0.1\frameworks\themes\haloclassic.swc). Once you have referenced the swc, create a CSS file for your component(s) that specifies all of the default skins and styles to their halo default or desired style as shown in the sample code below (full code here). This set of steps will need to be implemented as needed on a per-component basis if your components are experiencing style loss. Once you have defined your CSS file, the next step is to reference it in your component file as you would any other CSS asset.

.myButton {
backgroundAlpha: 1.0;
backgroundSize: “auto”;
bevel: true;
borderAlpha: 1.0;
borderCapColor: #919999;
borderColor: #B7BABC;
borderSides: “left top right bottom”;
borderSkin: ClassReference(“mx.skins.halo.HaloBorder”);
borderStyle: “inset”;
borderThickness: 1;


<mx:Style source=”myButtonStyle.css” />
<mx:Button label=”My Button” styleName=”myButton”/>

There is an alternate to this approach, which would be to reapply styles with ActionScript code. However, this approach is more compact and has little to no impact on your actual component files. As a best practice for visual Xcelsius components, define your styles in CSS as opposed to inline to prevent the build up of redundant style specifications.

Evan DeLodder is a Senior Software Engineer focused on the development and application of cutting edge Rich Internet Application technologies in the Business Intelligence space. To learn more about him, please visit our new FleXcelsius page.


The Future of Flash in the BI Space

With the recent back and forth battle between HTML5 and Flash and their place in the future gaining even more extensive tech-media coverage, we’ve been keeping a close ear to the arguments and have attentively followed both sides of the story since our core products and supporting technology rely heavily on Flash and Flex.

As the marketing and PR battle rages on between Apple and Adobe, blanket statements are being tossed around regarding the viability of both HTML5 and Flash technologies as if they’re competitors. So far, this debate has only served as a disservice the community in general as the misinformation train continues to board people in high places who don’t completely understand the technologies and begin to make decisions for their organizations that are driven by the general influence of external, biased companies promoting their own product interests, as opposed to properly assessing project technology needs based on other factors that have more, real world substance.

Many people have voiced their opinions on this topic and it’s certainly not breaking news though we thought it beneficial to speak directly on the future viability of Flash and Flex for enterprise Rich Internet Applications, specifically in the Business Intelligence space.



Mico’s 2010 Update – 3 New Xcelsius Gurus Must Have Books!

Hi All,

I know it’s been some time since I’ve last posted and there is soooo much going on in the Xcelsius community. To start, we now have over 1,000 members in our LinkedIn group, over 600+ followers in Twitter and we just created a new LinkedIn group dedicated to the Xcelsius SDK, FleXcelsius…and the excitement continues! I was also recently nominated to be an SAP Mentor, the first to solidly represent Xcelsius in the SAP world, a huge honor.  Most exciting is the opportunity to bring the Xcelsius Gurus network to the SAP Business Object Community (aka BOC).  I will provide a separate blog post on how this will have a positive impact on the Xcelsius Gurus network and how I see things coming together. I invite everyone to benefit and be a part of it.  Last but not least, I have spent most of the year getting the commercial side of EverythingXcelsius up and running and we are scheduled to go live before the summer.  So this is quite exciting, as we have worked with so many clients, but now will have a separate presence to display what we’ve done. :)

Now that I got that mouthful out of the way, I have been adding to my book collection and had to share three exciting new books that you must purchase. These books were written by our fellow community members, and are MUST HAVES for Xcelsius and BI Developers. You can purchase all 3 on SAP Press under the BusinesObjects category, or if you’re like me and use Amazon, feel free to purchase directly from our new reading list!