Posts Tagged ‘FleXcelsius’

Jun
8

Xcelsius SDK Tips

During everyday development with the Xcelsius SDK there are quite a few things that can be taken for granted once you get comfortable with the technology and process. These “for-granteds” can often be points overlooked by developers getting started with the SDK and can cause considerable pain if they’re not properly evaluated and accounted for up front.

Here are 3 points to be aware of that I’ve been meaning to cover. I was reminded of all of them again this week while fielding various related questions from people getting started with the SDK. Hopefully they can help you out.

1. Flash Shared Local Objects just got more slippery

With the most recent release of Flash Player 10.3, users can now delete Shared Local Objects with ease. Individuals could always clear out SLO’s but the most recent player release made it quick and easy to accomplish. In short, if you’re developing custom components for Xcelsius that rely on the use of SLO’s, you may want to brace for more support calls and also document and alert your users on how SLO’s are leveraged. You can bet people will be inadvertently deleting them.

2. XLP’s and XLX’s should be archived

XLP’s, or Xcelsius Add-On Packager Files, generate unique XLX installer files so that end users can install your custom components in their Xcelsius environments. XLP’s stamp XLX’s with unique ID’s that are used by the Xcelsius Add-On Manager to determine if a component that is attempting to be installed already exists in that Xcelsius environment. Long story short, if you lose your original XLP file that you used to generate and distribute your original XLX file(s) and you have to create a new XLP file and generate new XLX files for subsequent distribution to end users, you’re likely going to encounter installation issues that require any preexisting component by the same fully qualified name to be uninstalled before the new one can be installed. This obviously isn’t the end of the world but it can create confusion and should be avoided if possible.

3. Common Component Classes – First in Wins

If you have multiple add-ons that you maintain and some or all of those components leverage a set of base classes and those components and the base class functionality that they rely on can potentially or do evolve (get released) at different paces, be keenly aware that the Flash Player operates using first-class-loaded-wins. This means that any components that rely on a common class will be using the first version of that class that was loaded by the Player. If there are any inconsistencies between the first class loaded and the class functionality that a given component is actually expecting, this can create some obvious and not so obvious behaviors and/or bugs at runtime. Be sure to nail down a strategy that allows all of your components to coexist and evolve peacefully.

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.

Mar
29

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.

Mar
2

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?

SAP ECOHUB

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.

VENDOR WEBSITES

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.

EVERYTHINGXCELSIUS.COM

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

Feb
1

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.

Dec
9

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.

(more…)

Dec
7

Webinar Alert: Fast-Tracking your BI Career One Dashboard at a Time!

With all the new BI trends and themes evolving today, how do you keep your career on track?

We are excited to announce a free webinar, hosted by Xcelsius Guru and SAP Mentor, Mico Yuk and a surprise guest, that will provide a first hand look at key trends and themes within the BI industry and insight on how to take your career to the next level.

During the webinar the following important topics will discussed:

1. The future of the BI Industry and how dashboards will play an integral part
2. How to navigate your career in 2011 and take it to the next level
3. How to monopolize the emerging mobile technologies

Your Next Steps:

  • Click here to Register!
  • Mark the date on your calenders: Wednesday, December 15, 2010, at 1pm EST, 10am PST
  • Attend the webinar with your questions

We encourage anyone looking to get their BI career on track and to the next level to register today, as seats are limited. We look forward to this very exciting webinar!

Soo Tang Yuk fosters and evangelizes the ‘Xcelsius Gurus Network” and its communities. To find out more about her, please visit the About Us page.

Sep
27

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.

(more…)

Sep
23

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.

Sep
16

Break Boundaries with Custom Components

A commonly requested feature in SCDD custom components (formerly Xcelsius 2008) is the ability to share data between custom components, across separate SWF files. Usually, developers turn to Flash Vars or other methods of workaround, which present limitations and additional work. Fortunately, there is another more streamlined approach if you wish to share data between 2 SCDD swf’s. This method comes with a couple of caveats, the first being that the swf’s need to be loaded via the SCDD SWF Loader component, and second, that the 2 SWF’s share the same Application Domain (the “This” option on the SCDD SWF Loader). If you can live with these 2 requirements, this can be a powerful approach for passing large volumes of data from component-to-component while completely bypassing the Excel model, if desired.

How it’s done

To accomplish component-to-component communication across swf’s is fairly straight forward. All you need is a ModelLocator-type singleton that both component’s share data through. The components don’t even need to be the same, they just need to refer to the same ModelLocator class and corresponding ModelLocator variables in order to share data. You can see how this is done by downloading the sample source code.

Next week, we’ll explore the possibilities of sharing data globally between swf’s using this approach. Globally, meaning that any SCDD component can access the data exposed by our custom component that leverages the ModelLocator.

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 Gurus page.

Aug
18

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.