Why Does Crystal Reports ALWAYS kick my Axx - Part XI

Yes I know it's been a while since I blogged about my *favorite* development tool... but that's only because I haven't had to touch it!

That smooth series of events was shattered yesterday with me experiencing the Thrill of Victory and Agony of Defeat in multiple cycles... and as you can guess it involved Crystal Reports.

So here's the deal... I'm working inside what a fellow developer called a 'Draconian' environment..NET 2.0 is the 'standard' although I installed 3.5 SP1 on this box (and either they haven't noticed or decided not to complain). Add to all that the fact that the web app suite is old-school as well. I've recently dragged it into.NET 2.0 kicking and screaming (me, not the software).

So two days ago I had the genius idea of using Ajax in the app. Of course with.NET 3.5 SP1 I didn't need to do anything to get that goodness, but remember my user's and my target is 2.0. I downloaded the 1.0.61025.0 version of the binaries. I imported them and set the resources to 'local'.

After some early-adoption issues I got the Ajax stuff that I wanted working... booya! oh wait, would it work on a user's machine... So I backed up the server files, and deployed the new. Still worked here. I went to a user's machine and it worked there as well... cool:)

I started working on the next form and it was a search form that leads to a Crystal Report and of course when I tried to run the report it puked and died... sigh... and this one was a new one on me...

Could not load file or assembly 'System.Web.Extensions, Version=2.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35' or one of its dependencies. The located assembly's manifest definition does not match the assembly reference. (Exception from HRESULT: 0x80131040)

So back to Google and found lots of posts about it, and lots of idiotic comments from "developers" that apparently troll forums just to see if they can insult people looking for help and pi$$ me off in the process. To all of you: when you get done working on "Hello World" and start building real applications, good luck getting assistance!

Sorry, just had to get that out of my system:)

Gave up at the end of the day on that one. Came in today with 2 choices: either find a way to get around that or restore from version control.

Back to Google, then Bing and hey, here's a post that looks good... and wow although that looks like a dirty hack, it works:

https://geekswithblogs.net/jwhitehorn/archive/2007/07/03/113660.aspx

and thanks a bunch to Jason Whitehorn for that post.

That lead to a repeat of yesterday... check it out on this box, push it to the server and try it on a user's machine.

That lead to a Crystal Report with a bad link reference on it. The report displayed which was the problem I had been trying to resolve, but the link needed to be fixed.

This is a small report... only 8 subreports. So I opened the subreport in question, fixed the reference, saved it, re-imported it into the main... oops, it doesn't know where the xsd file is... that means I hadn't touched this since the new machine was delivered... not a big deal, we have the technology. I pointed it at the right place, then throught I should check the other 7 reports... yep... they all needed to be touched. I'm starting to shake now... this is way too much interaction with Crystal Reports and I just have this feeling it's going to poot.

And it did.

It wanted the database credentials... why? I was able to find and open it in the subreport and nothing in any underlying whatever changed.

So I started my normal mode of dealing with Crystal Reports: make a change, save, close the project, turn around 3 times to the left, twice to the right, have someone else push the build button, you know the process.

No go... sigh... I finally got it to where I had the report back no problem, but my change wasn't in there.

So I nuked the subreport out of the main, and re-inserted it and wow... that worked!

I just know when you call customer service for this POS that the response somehow involves waving a dead chicken over your head and quacking like a duck... but I'm dang glad that it's working, and I hope I don't have to touch it again for a while...

All-in-all one good link and a few rants, hope the link helps someone else!

This article is part of the GWB Archives. Original Author: Dave Campbell

New on Geeks with Blogs

  • We Won The One Award I Actually Care About

    Full Scale made the Inc. 5000 for the fifth year straight, the 12th listing across my three companies. Here is why the one award you cannot buy is worth stopping for.

  • Your Customers Build the Features Now

    I let a tool I liked sit dead for a year rather than build the features I wanted. An MCP server meant I never had to, and your customers can do the same to your product.

  • Get the Size of a Directory in Linux the Easy Way

    du -sh for the quick answer, ncdu for the cleanup, df for the disk itself: every command for checking directory size in Linux, plus why du and df never agree.

  • Vim Search and Replace: The Ultimate Guide

    One :%s command replaces every match in a file before a find dialog would even open. The Vim substitute patterns worth the muscle memory: flags, ranges, capture groups, and multi-file edits.