Click here to close now.


Microsoft Cloud Authors: Jordan Sanders, Carmen Gonzalez, Pat Romanski, Keith Mayer, Jayaram Krishnaswamy

Related Topics: Microsoft Cloud

Microsoft Cloud: Article

Crystal Reports XI & How It Has Changed

New Life for an Old Friend

Microsoft's bundling of Crystal Reports dates to Visual Basic 3 and since then many developers have come to rely on it to build reporting solutions. Early on some developers found the programming API too complicated and there were the typical deployment problems that happen with any product that has many versions and upgrades. There have been many improvements over the years to address developer concerns, but when Business Objects acquired Crystal Decisions a little over a year ago Crystal Reports was revitalized. Developers will see these benefits in Crystal Reports XI and the upcoming release of Visual Studio 2005 (still in beta).

I'm going to focus on how Crystal Reports XI affects developers and how it can improve reporting applications. The features that I feel are most important to .NET developers are web reporting, dynamic cascading prompting, faster data connectivity, dynamic image location, easier deployment and improved export functionality.

The overarching change in the product is that tasks that used to take a lot of coding are now built in. For example, the following line of code is all you need to add a report to an ASP.NET page and have the user preview it:

<CR:CrystalReportViewer id="CrystalReportViewer1" runat="server" Width="350px" Height="50px"
ReportSource='<%# "c:\inetpub\wwwroot\ SampleReport.rpt" %>'/>

Adding reports to your application used to mean writing a lot of integration code. The sample above indicates how much easier it is to work with reports.

Web-based Reporting
Crystal Reports has been around for over a decade, and has a reputation for being a Windows reporting tool. But that's changing.

By improving the Web reporting features, integrating reports in an Internet application becomes trouble-free and a seamless user experience. Parameters are now supported on the URL that customize Web Service reports for the user. Business Objects wants you to choose Crystal Reports for reporting services and, as an incentive, are releasing a product called Crystal Reports Server for $7,500. It includes five concurrent access licenses (CALS) and free tech-support and maintenance for a year. Business Objects has drastically cut the price on previous Crystal enterprise offerings and made it practical for small to mid-sized businesses. As an added bonus, Web Services reports are 100%-compatible with ASP.NET Forms Authentication and don't require redundant logins. Users can access your Web Service reports and never know they're on a different server. Not all .NET reporting services support this level of integration.

Current Crystal Reports .NET Web applications mean writing additional code for printing from the browser. With Crystal Reports XI (and the future VS 2005), there's a Print button on the web toolbar. Professional-looking reports are sent to the client-side printer with no coding. What a relief!

There's also a new ActiveX viewer that highlights objects individually or in groups and then copies and pastes them into HTML or Rich Text format in applications such as Word, Excel and Outlook.

New Reporting Features
One major feature that developers have to look forward to is dynamic cascading prompts. Past versions of Crystal Reports supported parameters based on a static list embedded in each report, but you couldn't have a value in a pick list constrain the values shown in subsequent pick lists. You had to build this feature with custom forms. With dynamic cascading prompts you can now show a pick list based off of live data from your database without writing any code. You can also link prompts together so that a change in one prompt affects the other prompts. In the Crystal Reports Server edition, values in a pick list can incorporate view-time security so each end user can see a customized pick list based on his own security level. Pick lists can be shared in the BusinessObjects Enterprise XI framework to improve performance and reduce database access further. They can also be scheduled so users aren't querying a large dataset for lists of values that rarely change.

The following figure shows how to create a City prompt. The dialog box lets you make the prompt static or dynamic. It also shows you how it's linked to the two previous Country and Region prompts.

How many times have you tried to print dynamic images in your report but didn't want to save the binary data to your database?

The alternative is writing a lot of code to load the images dynamically into a DataSet object and pass it to the report. Crystal Reports XI lets you print images using a text link rather than embedding the binary data in the report or dataset. Dynamic image locations give you the ability to reference an image's location and display it in the report. The image can be on a local drive, network drive or referenced via a URL address. Plus the location is formula-based so you can use any built-in functions to derive the location string.

For example, the following formula uses a database field to display an image:

"C:\Program Files\Demo\" + {Product.Graphic Image Location}

This is a huge improvement that eliminates code in your .NET application and improves performance.

Crystal Reports for .NET made it easy to build reports from datasets and XML with just a couple of lines of code. But Business Objects, the new owner, completely rewrote its ADO.NET libraries for a huge performance increase. Visual Studio 2005 benefits because the new DLLs are included in VS 2005. There's also improved Microsoft Exchange 2000/2003 support. You can generate reports using multiple Exchange data sources such as Calendar, Journal, Tasks, Inbox, Address Book and Contact.

Users often want to take report data and manipulate it with the tools they're already familiar with. Crystal Reports supports exporting reports to PDF and the common Microsoft Office formats (Excel, Word, RTF, CSV). When exporting to Word with the RTF format, a couple of things are needed. First is an accurate report and second is easy editing.

A new export format has been introduced to cover cases where editability is most important (i.e., forms-based reporting). It doesn't use text boxes so it's easy for Word users to edit the exported document. By providing the most export options for Microsoft Office and better data connectivity to Microsoft Exchange, Crystal Reports gives you a tighter level of integration with Microsoft products than any other reporting tool available.

A feature that every developer will love is simplified deployment. There is only one merge module to deploy. In that module are properties that customize what libraries get deployed. No more trying to figure out what each merge module does and whether it's necessary or not. Crystal Reports also supports side-by-side deployment so DLL conflicts are a thing of the past. Developers can breathe another sigh of relief.

A question developers ask is how buying Crystal Reports affects their current application. Well, when you buy Crystal Reports and install it on your development computer, it recognizes if you have Visual Studio .NET installed and upgrades your .NET reporting libraries to the latest version. You get rid of the older DLLs and replace them with the new ones. Second, the integrated report designer is an improvement over the one that ships with .NET. Third, your .NET applications now share the same reporting engine as Crystal Reports XI and the reports are fully compatible with each other.

Choosing Which Version To Use
With the release of Crystal Reports XI there are significant changes in editions and packaging. The familiar Crystal Reports Standard and Professional editions offer a standalone report designer. The Developer edition has been expanded to include all the APIs required for embedding reporting into thick client applications and comes with new more flexible licensing terms for distributing reports over the Web. But, perhaps, one of the most exciting changes is the introduction of Crystal Reports Server, which includes report management, scheduling and Web distribution capabilities, as well as all of the APIs needed to integrate these capabilities into your applications. Meaning that as a developer, you no longer have to spend time building your own security and scheduling applications. Both the Professional and Developer editions come with a five named-user license for Crystal Reports Server that can be used in production, giving you the opportunity to create a reporting solution for a small number of users and decide whether to upgrade at a future date.

Overall, I think that Crystal Reports XI and the upcoming release of Visual Studio 2005 is a great benefit to .NET developers. Reports are much easier to create and require less code to run in an application.

More Stories By Brian Bischof

Brian Bischof, CPA, MCSD, is the author of the best-selling book Crystal Reports .NET Programming. You can download sample chapters and find out more information at his Web site

Comments (4) View Comments

Share your thoughts on this story.

Add your comment
You must be signed in to add a comment. Sign-in | Register

In accordance with our Comment Policy, we encourage comments that are on topic, relevant and to-the-point. We will remove comments that include profanity, personal attacks, racial slurs, threats of violence, or other inappropriate material that violates our Terms and Conditions, and will block users who make repeated violations. We ask all readers to expect diversity of opinion and to treat one another with dignity and respect.

Most Recent Comments
hakim jamali 01/09/08 04:07:49 AM EST

this article is informative accept one point which i noticed, that exporting to word is not availble in crXI. Only RTF editable export is available which loose the the basic formatting like table.

Rich 08/21/07 08:07:03 AM EDT

You mentioned in the article a figure showing dynamic cascading prompts, yet there is no figure??

chuck 04/23/05 09:18:20 PM EDT

I've used CR since VB 4. I've given up on it after using other reporting products. CR's object model for reports is way to convulted. Creating reports takes a long time. The worse part is changing datasources at run time (devlp to prod). Definitely look elsewhere if your doing Win forms, you have to install 4 merge modules. Other vendors have 1 dll. View the reports on the web is troublesome the dhtml they use is not that well formed.

Joel White 04/15/05 04:14:55 PM EDT

I've been using Crystal Reports since it was bundled with Visual basic. I recently purchased version XI and am somewhat dissapointed in the product (Mainly it's documentation). The documentation / help files are incomplete and are missing help about some export functions. And the documentation it does have is almost pointless to read, since it does not give a good description of the function and it's values.

@ThingsExpo Stories
Microservices are a very exciting architectural approach that many organizations are looking to as a way to accelerate innovation. Microservices promise to allow teams to move away from monolithic "ball of mud" systems, but the reality is that, in the vast majority of organizations, different projects and technologies will continue to be developed at different speeds. How to handle the dependencies between these disparate systems with different iteration cycles? Consider the "canoncial problem" in this scenario: microservice A (releases daily) depends on a couple of additions to backend B (re...
Container technology is shaping the future of DevOps and it’s also changing the way organizations think about application development. With the rise of mobile applications in the enterprise, businesses are abandoning year-long development cycles and embracing technologies that enable rapid development and continuous deployment of apps. In his session at DevOps Summit, Kurt Collins, Developer Evangelist at, examined how Docker has evolved into a highly effective tool for application delivery by allowing increasingly popular Mobile Backend-as-a-Service (mBaaS) platforms to quickly crea...
Too often with compelling new technologies market participants become overly enamored with that attractiveness of the technology and neglect underlying business drivers. This tendency, what some call the “newest shiny object syndrome” is understandable given that virtually all of us are heavily engaged in technology. But it is also mistaken. Without concrete business cases driving its deployment, IoT, like many other technologies before it, will fade into obscurity.
We all know that data growth is exploding and storage budgets are shrinking. Instead of showing you charts on about how much data there is, in his General Session at 17th Cloud Expo, Scott Cleland, Senior Director of Product Marketing at HGST, showed how to capture all of your data in one place. After you have your data under control, you can then analyze it in one place, saving time and resources.
The Internet of Things is clearly many things: data collection and analytics, wearables, Smart Grids and Smart Cities, the Industrial Internet, and more. Cool platforms like Arduino, Raspberry Pi, Intel's Galileo and Edison, and a diverse world of sensors are making the IoT a great toy box for developers in all these areas. In this Power Panel at @ThingsExpo, moderated by Conference Chair Roger Strukhoff, panelists discussed what things are the most important, which will have the most profound effect on the world, and what should we expect to see over the next couple of years.
Growth hacking is common for startups to make unheard-of progress in building their business. Career Hacks can help Geek Girls and those who support them (yes, that's you too, Dad!) to excel in this typically male-dominated world. Get ready to learn the facts: Is there a bias against women in the tech / developer communities? Why are women 50% of the workforce, but hold only 24% of the STEM or IT positions? Some beginnings of what to do about it! In her Day 2 Keynote at 17th Cloud Expo, Sandy Carter, IBM General Manager Cloud Ecosystem and Developers, and a Social Business Evangelist, wil...
PubNub has announced the release of BLOCKS, a set of customizable microservices that give developers a simple way to add code and deploy features for realtime apps.PubNub BLOCKS executes business logic directly on the data streaming through PubNub’s network without splitting it off to an intermediary server controlled by the customer. This revolutionary approach streamlines app development, reduces endpoint-to-endpoint latency, and allows apps to better leverage the enormous scalability of PubNub’s Data Stream Network.
Apps and devices shouldn't stop working when there's limited or no network connectivity. Learn how to bring data stored in a cloud database to the edge of the network (and back again) whenever an Internet connection is available. In his session at 17th Cloud Expo, Ben Perlmutter, a Sales Engineer with IBM Cloudant, demonstrated techniques for replicating cloud databases with devices in order to build offline-first mobile or Internet of Things (IoT) apps that can provide a better, faster user experience, both offline and online. The focus of this talk was on IBM Cloudant, Apache CouchDB, and ...
Cloud computing delivers on-demand resources that provide businesses with flexibility and cost-savings. The challenge in moving workloads to the cloud has been the cost and complexity of ensuring the initial and ongoing security and regulatory (PCI, HIPAA, FFIEC) compliance across private and public clouds. Manual security compliance is slow, prone to human error, and represents over 50% of the cost of managing cloud applications. Determining how to automate cloud security compliance is critical to maintaining positive ROI. Raxak Protect is an automated security compliance SaaS platform and ma...
I recently attended and was a speaker at the 4th International Internet of @ThingsExpo at the Santa Clara Convention Center. I also had the opportunity to attend this event last year and I wrote a blog from that show talking about how the “Enterprise Impact of IoT” was a key theme of last year’s show. I was curious to see if the same theme would still resonate 365 days later and what, if any, changes I would see in the content presented.
Most of the IoT Gateway scenarios involve collecting data from machines/processing and pushing data upstream to cloud for further analytics. The gateway hardware varies from Raspberry Pi to Industrial PCs. The document states the process of allowing deploying polyglot data pipelining software with the clear notion of supporting immutability. In his session at @ThingsExpo, Shashank Jain, a development architect for SAP Labs, discussed the objective, which is to automate the IoT deployment process from development to production scenarios using Docker containers.
Countless business models have spawned from the IaaS industry – resell Web hosting, blogs, public cloud, and on and on. With the overwhelming amount of tools available to us, it's sometimes easy to overlook that many of them are just new skins of resources we've had for a long time. In his general session at 17th Cloud Expo, Harold Hannon, Sr. Software Architect at SoftLayer, an IBM Company, broke down what we have to work with, discussed the benefits and pitfalls and how we can best use them to design hosted applications.
The Internet of Things (IoT) is growing rapidly by extending current technologies, products and networks. By 2020, Cisco estimates there will be 50 billion connected devices. Gartner has forecast revenues of over $300 billion, just to IoT suppliers. Now is the time to figure out how you’ll make money – not just create innovative products. With hundreds of new products and companies jumping into the IoT fray every month, there’s no shortage of innovation. Despite this, McKinsey/VisionMobile data shows "less than 10 percent of IoT developers are making enough to support a reasonably sized team....
Just over a week ago I received a long and loud sustained applause for a presentation I delivered at this year’s Cloud Expo in Santa Clara. I was extremely pleased with the turnout and had some very good conversations with many of the attendees. Over the next few days I had many more meaningful conversations and was not only happy with the results but also learned a few new things. Here is everything I learned in those three days distilled into three short points.
DevOps is about increasing efficiency, but nothing is more inefficient than building the same application twice. However, this is a routine occurrence with enterprise applications that need both a rich desktop web interface and strong mobile support. With recent technological advances from Isomorphic Software and others, rich desktop and tuned mobile experiences can now be created with a single codebase – without compromising functionality, performance or usability. In his session at DevOps Summit, Charles Kendrick, CTO and Chief Architect at Isomorphic Software, demonstrated examples of com...
As organizations realize the scope of the Internet of Things, gaining key insights from Big Data, through the use of advanced analytics, becomes crucial. However, IoT also creates the need for petabyte scale storage of data from millions of devices. A new type of Storage is required which seamlessly integrates robust data analytics with massive scale. These storage systems will act as “smart systems” provide in-place analytics that speed discovery and enable businesses to quickly derive meaningful and actionable insights. In his session at @ThingsExpo, Paul Turner, Chief Marketing Officer at...
In his keynote at @ThingsExpo, Chris Matthieu, Director of IoT Engineering at Citrix and co-founder and CTO of Octoblu, focused on building an IoT platform and company. He provided a behind-the-scenes look at Octoblu’s platform, business, and pivots along the way (including the Citrix acquisition of Octoblu).
In his General Session at 17th Cloud Expo, Bruce Swann, Senior Product Marketing Manager for Adobe Campaign, explored the key ingredients of cross-channel marketing in a digital world. Learn how the Adobe Marketing Cloud can help marketers embrace opportunities for personalized, relevant and real-time customer engagement across offline (direct mail, point of sale, call center) and digital (email, website, SMS, mobile apps, social networks, connected objects).
The Internet of Everything is re-shaping technology trends–moving away from “request/response” architecture to an “always-on” Streaming Web where data is in constant motion and secure, reliable communication is an absolute necessity. As more and more THINGS go online, the challenges that developers will need to address will only increase exponentially. In his session at @ThingsExpo, Todd Greene, Founder & CEO of PubNub, exploreed the current state of IoT connectivity and review key trends and technology requirements that will drive the Internet of Things from hype to reality.
Two weeks ago (November 3-5), I attended the Cloud Expo Silicon Valley as a speaker, where I presented on the security and privacy due diligence requirements for cloud solutions. Cloud security is a topical issue for every CIO, CISO, and technology buyer. Decision-makers are always looking for insights on how to mitigate the security risks of implementing and using cloud solutions. Based on the presentation topics covered at the conference, as well as the general discussions heard between sessions, I wanted to share some of my observations on emerging trends. As cyber security serves as a fou...