ERP vs. Microsoft Access


So you want to know more about why an ERP is better than a basic accounting package and some spreadsheets. I’ve mentioned that spreadsheets have a high error rate and are inherently single user. I have argued that reporting from a database is much easier to do than reporting from Excel. What might be left is the impression that using a database is the way to go. That would make some sense, and all things being equal, I would agree with you. But not me, all things are not equal.

The king of DIY databases is Microsoft Access. It’s actually a pretty decent product, with a good community of users who are, if not experts, then at least familiar. There are a couple of reasons why Access is a good choice, if you decide to go this DIY direction.

Access is relatively cheap. It’s part of Microsoft Office, although the version with Access costs more money. It’s about $300 more to get the database tools. You get a few more things, but not many more useful tools besides Access.

“Schedule” access through the built-in wizards can allow you to create some tables and forms, reports and queries at the end of a work day or two. So call that $500 of programming time and $1500 of software and you can have your item list, order table, purchase order report, etc.

Now what starts to happen is pretty serious, costing you a LOT of money over the next few days.

Shortly after creating your database and submitting your purchase orders to vendors, you realize you need to receive things. Vendors are annoying, sometimes they ship exactly what you wanted, in the exact quantity and at the price listed on the purchase order, but often they don’t. So, as time goes by, the simple access database begins an insidious march towards something deadly: COMPLEXITY!

As time goes by it gets more and more complicated.

If you were to go back in a time machine and re-evaluate everything you needed to do, you would realize that your original concept lacked any kind of checks and balances. Even if your people don’t make mistakes, your suppliers and customers do. Your database (and spreadsheets) need CROSS REFERENCES to try to catch and prevent errors. Turns out this is tricky.

Any decent database configured to do these things has to have programming. That means you have to have some Visual Basic and that’s not something anyone can do. You can hire a cheap college student to do it, but be prepared to have him for a year or two. And they won’t finish all the programming.

I have seen some amazing Access databases in my day. I’ve seen databases interact with CAD and CAM tools, calculate nesting requirements for your software, generate MRP demand, etc. When I talk to those customers, the conservative estimates are that they spent $200-300K to write the app. It is almost always a highly paid engineer or network administrator who is on staff full time. The business gets to the point where (either intentionally or not) they feel trapped. They are afraid of losing this person. Usually, when I get there, it’s because Access database technology has reached some limit (Access databases limit is about 500-800 megabytes for their usable size). Or it’s because the designer quit, retires, got hit by a bus, or won the lottery.

Checks and balances are necessary for this system to work, without them you’re half a step better than a spreadsheet, but you’re 100 meters from the finish line. They are incredibly difficult to program and create. Don’t be fooled. It’s much better to spend 10-20k on a simple ERP than to go down this path.