Archive for October, 2011

Making sense of Crystal Reports SDK and APIs

Published by Ron Keler in Crystal Reports on October 27th, 2011 | No Comments »

If you are looking to integrate Crystal Reports into your application, you have many ways to go about it. You can find oodles of information about the different options, pros, cons, differences and user guides, tips and tricks galore in the product documentation and over the web. The purpose of this post is to cover some high level differences between some major choices, and explain in simple terms some key factors that I believe will play into your decision into which integration option to use.
First, you will need to take your pick of technology: .net or java. For most people this would be a no brainer since most developers are predisposed to one vs the other. Since my disposition is toward Java, I will cover the choices related to it, although the .net options are pretty much the same, there is an equivalent SDK/API in .net for every java options mentioned here (religious arguments aside…). You will face three major choices on how to integrate Crystal:
- Using openDocument API
- Using the Viewers Java SDK (which in itself contains several choices) or
- Using the RAS (Report Application Server) Java SDK (of course this branches as well)
Here are some high level descriptions of each of those options with some key considerations:
The openDocument API is the simplest and most common way to integrated pretty much any BusinessObjects content into an external web based application. It provides a variety of url query strings that can be used to call content from the BO repository, from webi, to crystal, dashboards and more. This API is simple to use, quick to integrate and develop with, and provide good level of customization and flexibility through the variety of parameters that can be processed over the URL. It requires no programming knowledge, and anyone with basic understanding of web technology can learn how to use it (the only caveat to that can be authentication). However, it does have limitations in terms of ability to customize and control presentation and behavior of the integrated content. For example, using the openDocument API, you will have very limited, or no control, over the many Crystal viewers choices you might want to control, such as control of prompts screens, group tree, or toolbars. You will also be passing all the information you will be feeding into the report (including a session token used for authentication) over the URL, in plain sight, which may pose a security problem for some applications.
So, if you are looking for better control of the viewer, and tighter security control, you might be looking at the viewers SDK next. The Viewers SDK does require some java programming knowledge, and in return provides much more flexibility and control over the report presentation and integration. It provides several implementation, including tag libs and JSF options, so can cater to several flavors. Using the viewers SDK developers can control report dimensions, display different tool bar options, and choose how to present and embed Crystal Reports in their web applications. It is a rich SDK, and can address most presentation needs. However, it too has some limitations in terms of the ability to manipulate more of the “guts” of the Crystal .rpt file. Enter the RAS SDK.
The RAS SDK is the richest and most complex Crystal java SDK, and provides the most flexibility, control and security. For example, using the viewers SDK, you may pass parameter values to the report object, but these would be passed through the viewer itself, making them visible to the client. While using the RAS SDK you can modify the report selection criteria on the fly, on the server side, before the viewer is even initiated and without passing to the client any parameter info. Of course, all this power means more complexity and more code that can be written to accomplish more sophisticated reporting use cases and integration scenarios.
So, which integration option is right for you? Consider your reporting use cases, the level of sophistication you require in your integration and your security requirements to determine if openDoc will suffice, viewer SDK will be needed for tighter integration, or full control is what you need, using the RAS SDK.

An Elegant Solution to a BI Problem

Published by Larry Rosenblum in BI At Large on October 23rd, 2011 | No Comments »

My wife thought it was strange that I got excited when I looked at the cash register receipt as we left the shoe store. Usually a receipt is the beginning of a discussion about why we spent more than we planned, but in this case it was different.

“Look,” I said, “This is neat. A portion of the $10 coupon that we used has been assigned to each of the two pairs of shoes.”

“Why is that neat?” she asked.

Taking the rare opportunity brought about by her interest in my fixation with data, I continued to explain that one of the challenges in BI was allocating costs down to the lowest level. People want to see margin at the product level, but that can be hard to calculate when costs (or discounts) are assigned at a higher level. Often, it is tough to pin down the business rules needed to do the allocation.

This shoe store chain solved the problem. The business rule was determined and applied right at the point of sale. Any downstream system, including a data warehouse, would have this information. Problem solved.

I had a good afternoon. Two new pairs of shoes and a little BI happiness to go along.

Extend SAP Dashboard visualizations and capabilities with google charts integration

Published by Ron Keler in Uncategorized, Xcelsius on October 20th, 2011 | No Comments »

Back in January, i wrote about Google Charts, and how they stand to shake the BI and data visualization world. Well, over the past months, not only the charts collection has grown substantially and now includes many nontraditional charting options, like maps, and dynamic icons, google gwt now includes a data visualization library that can produce quite stunning results. But even with no programming skills, google charts url api continue to provide any web developers with a simple way to mashup and extend their application by integrating interesting chart images. SAP Dashboards (Xcelsius) can certainly benefit from this as well. Using the Slideshow component, which can render images located on the web, you can add new kinds of charts, dynamic icons, and even data driven maps to your dashboard. In this example, you can see maps, box charts, venn charts and QR codes generated via google charts and integrated via the slideshow component into an Xcelsius dashboard. Of course, any web based reporting tool, webi or crystal included, as well as obiee and many others, can benefit from this technique. You can find the xlf for this example here. If you found an interesting way to use google charts in your BI or data visualization project, please feel free to share.

Would you pick strong planning or strong execution for your BI project?

Published by Ron Keler in BI At Large on October 13th, 2011 | 1 Comment »

If you had to choose, would you pick strong planning or strong execution for your BI project?

Any project can be thought of along the lines of planning and execution. BI projects are of course no exception. Some projects emphasize one over the other, some look to strike a balance. Individuals working on the projects typically tend to be stronger on one or the other: some are great at planning, strategizing, architecting and gathering requirements, while others are great at building, prototyping, developing and executing. The nature of the projects matters as well. So, when you consider a BI project, would you emphasize the planning activities or try to focus on execution?
BI projects are typically more of an explorative journey than a plotted trip from point a to point b. They are riddled with unknowns and questions. Very often, it’s not clear what kind of information will be unlocked by organizing data. It’s also typically not clear what would be the best way to display the data to derive the most useful information. This typically leads to unknowns around the data organization. There are numerous technological, procedural, organizational and political hurdles to overcome. Defining business terms and then translating those definitions into the enormous amounts of  rows and columns that are spread across many databases is not only technically challenging, it requires constant dialogue between the people who are working with the technical details, and those who are working with the abstraction layers of information.
This unique nature of BI projects, constantly swinging between technology and business is why i would pick execution over planning if presented with the choice above. Strong execution means agility, attention to detail and pragmatic approach to solving ever changing challenges. Naturally, execution has to follow an underlining plan, or architecture, otherwise you will end up with a messy mash of components that cannot scale or work in concert, but as long as there is a reasonable amount of planning, focusing on strong execution in your BI project is what will bring you success.

Centigon GMaps Plugin example – MA counties, towns and traffic stats

Published by Ron Keler in Xcelsius on October 5th, 2011 | No Comments »

Maps are a very powerful way to visualize data and bring information to users in an attractive and usable manner. Maps help make data intuitive and fun and encourage usage of information. Xcelsius comes equipped with a variety of out-of-the-box maps that work well for certain use cases. If your geo data is fairly static, and is organized along the lines supplied in one of those maps, they work well. However, more often than not, your Geo data is sporadic, dynamic and messy in geo-political terms. If that is the case, or if you are looking for a powerful and dynamic mapping data visualization, look no further then Centigon’s Gmap plugin for Xcelsius (SAP Dashboard). I can write about how simple and intuitive it is to use, about how it seems to include anything you ever wanted to do with a map in Xcelsius, or about how fun and exciting users find it to be. But rather than that, i decided to build this example. I found some information about counties and towns in MA, along with some traffic data. Then, i staged the data in an Xcelsius model to produce this visualization. You can pick any country in MA, and the map will plot the towns in that county. The green icons include traffic data when you click on them, the blue ones, do not. The chart at the bottom provides county demographic data. You can find the xlf here. Enjoy.

© BI HAPPY
CyberChimps