Wednesday, November 14, 2007

Scope Creep

This week I was instructed to halt further development on an Access program for batch processing of invoice payments, because the project was "way over budget." Invoice payments are normally entered via a web application, but the Access program provides an interface that allows the user a much faster method of data entry & also lets the user easily reconcile the batch payments to the bank deposits.

The original definition of the program was to handle only one specific type of invoice, and that took about 16 hours or development. Fine. But then the scope was expanded to include any type of invoice, and that entailed some complex business rules for handling any payment that included both types of invoice. That change required an additional 39 hours of development. When questioned about the status, I furnished a WAG that completing the amended project would require another 8 hours, mostly for testing, and that's when they put on the brakes.

No wonder that Dilbert is so popular.

Sunday, November 11, 2007

Create web page as formatted VBA

The task:
Create an html page with VBA code with all the color-coding and indents that you see in the VBA IDE.

The purpose:
Within the VBA environment, the formatting makes it easier to work with your code, but if you copy and paste that code directly into an html document using Word or FrontPage, all the formatting is lost.

The solution:
1. From the VBA module, select all the text (Ctl-A) and copy to the clipboard
2. Open Visual Studio .NET, create a new VB Script file and paste the copied text
3. Copy and paste from the new VB Script file into a new Word document and save as .htm

The result:
The htm file looks just like it does when working within the IDE.

Saturday, November 10, 2007

Access 2007 Bible redux

This is a follow-up to my previous comments about the Access 2007 Bible.

I started out by reading every word, but after the first three chapters the authors settle down into a complete course on using Access from the ground up. Great for those just starting out, but experienced developers will find about 1,000 pages of how to create database objects, beginning VBA programming, and the like. Except for the fact that much of those activities are now squirreled away somewhere on the ribbon, nothing substantial has changed in the database design process.

The only two notable additions are the Attachment data type, and the fact that you can now format a Memo field to use rich text.

After skimming those 1,000 pages of fluff one evening, I finally reached the chapter that prompted me to buy the book in the first place - how to program the ribbon. IMHO the authors fall short on this; they suggest using a supplied sample ribbon as a starting point, instead of creating one from scratch. They also suggest downloading the (free) Visual Web Developer 2005 Express Edition to work with the XML required for the ribbon.

As an aside, they totally exaggerate the complexity of working with custom menus and toolbars in older versions. I never found this to be a challenge; the Access GUI does a fine job without writing any code. The only downside I found was that you had to create macros & attach them to the toolbar buttons. I don't normally use macros.

I have yet to try working with custom ribbons. They tell me that there is no programmable object model for the ribbon but expect (spelled h-o-p-e) that there will be add-ins forthcoming to allow integrated ribbon programming. I sure hope they're right about that.