Agee Software, Inc.

Generic Tables and ASP

ASP makes good business sense. It extends HTML into a programming language that supports a large subset of Visual Basic functions. It lets you connect any Open Database Connectivity (ODBC) standard database to web forms. These databases include Microsoft SQL Server, Access MDB, Excel CSV or XLS, FoxPro, Clipper or dBase DBF, Oracle and most proprietary databases. Many industries use this technology including e-commerce, insurance, major corporations for convention reservation management, message forums about a particular subject, auction softare, those who conduct surveys or get feedback from user questionaires, and even general contractors.

Active Server Pages wouldn't be useful unless they were scalable, so your site could grow. If it is properly written, ASP is very fast even on large sites. Processing takes place on the web server, so only the HTML the user sees goes across the internet. Of course you can include Javascript, Active-X components and graphics into that HTML.

ASP is a relatively simple scripting language, but it is not a trivial task to move a large desktop application to the web. You quickly find yourself bogged down with the details of creating recordsets, adding, changing and deleting records, checking user authorization and displaying rows and columns of data. Handling each table as a special case becomes time consuming and expensive for your client.

By generalizing ASP scripts, we can cut the time it takes to add a new table to your site to minutes instead of days. You can add, change and delete records in any table. You can restrict access to records and fields in tables based on the groups a user is assigned to. If fact, the tables that keep track of those tables, users and groups can be made generic too.

Generic code is more likely to be bug free because you have fewer cases to test. With generic code, you can make changes easier because you have to make the change in one place instead of many. These benefits sound very similar to the benefits of object oriented programming or frameworks.

The downside of generic programming is that you must anticipate what the client is likely to want to do. If you try to handle all the cases, your framework becomes a complicated language itself and you gained nothing. Furthermore, changes outside the scope of your framework can take more time because of the complexity of your code. On the other hand, if you make your framework too simple, it is not robust enough for use in the workplace. The key is striking a balance.

If you carefully choose what you generalize and err on the side of simplicity, I think you will find generic ASP scripts speed and simplify putting data on the web.