Thursday, June 17, 2010

Fun with Heterogeneous Environments

Okay, so I did some work for a client the other day. Nothing really big, just trying to help an MS Access app I developed for them years ago limp along through it's final days/months... who knows. Anyway, some background...

This app was developed back in 2002 or 2003, can't remember anymore and at the time it was developed, the client's machines consisted of a couple different flavors of windows and Office 2000. So naturally, the app was scoped and developed in Access 2000, which was pretty cool because with ART 2000  it could even run on machines that didn't have Office installed. The app is a basic split db with and MDE front end. As they began to use the application, requests for changes in functionality and schema came and went, and things went along swimingly.

Then one day, I get a call reporting that the application does not work on a certain user's computer. When I get on site I find that the environment had changed. This particular user had the latest and greatest OS and version of Office. Suprise!! My install package would no longer work. So I fixed the install and recommended and provided a bid to convert the app into a ASP.NET intranet app. Much more flexible, easier to update, no fuss, no muss... They were not interested, and wanted to leave things the way they were, as they were moving to a new product that was an ASP.NET web app (and more spendy than my bid mind you).

---FAST FORWARD TO TODAY---

So I get a call a few months ago reporting that the client is upgrading to a new file server and would like to move the DB backend, but the front end code was throwing a bug that wouldn't allow it without a lot of complaining. I know, I know... bad developer! BAD!! I apologize for having the short-sightedness that this app would have such a long lifespan.

The request was to get rid of the errors and make it easy for the end users to relink the front end to the backend if it were ever moved again. No problem, that was the easy part. The hard part, was getting an install that would recognize and install the app on mulitple environmental flavors of OS & Office combos -- mmm... combos...  ---- Where was I?? Oh, yeah, so I did my reasearch and got my list of flavors and tried to come up with an install that would do the job w/o my having to sink a bunch of time into it. Got that to a point where I felt fairly good about, so I crossed my fingers and lined up the upgrade.

Upgrade day came and things started out not too bad, but 2 years had passed since the last time I had been out there and things changed quite a bit. Now I know what you're thinking... "My it must have been a pleasant, orderly suprise"... Wrong! It was actually a little worse than what my research had turned up. Multiple versions of Window (XP, Vista, 7) with multiple versions of Office (2k, XP, 2K3, 2K7). As if that was not bad enough, there were a few users who actually changed their drive letter assignments (i.e. C:\ was no longer the system drive). All considered, everything went fairly well, except for the machines with the wierd drive letter assignments.

I will attribute success to two things, using a batch file to open the font end using the generic MSACCESS.EXE <FILE_NAME> command line option (http://support.microsoft.com/kb/209207) and the nuggut of gold that I like to call Access 2000 Runtime. That's right Microsoft may have discontinued it but, ART 2k is awesome and can often save you in a pinch! In the end, with the smoke clearing, the client is happy with a version of the app that they can move around as they see fit so it can be used for historical purposes, and although I may not have anything to do with this app again I'm sure they will contact me other special projects as they come along. Who knows maybe this thing will go another 8 years?!!

No comments:

Post a Comment