Approach User Support homepage Approach User Support
Answers to Frequently Asked Questions about Lotus Approach
Examples LotusScripts
Example databases
Links to other Lotus Approach support services

[Return to contents]

Accessing information in an Approach database on the web (WWW)

Last updated: 12 Jul 2002

If you want to publish static pages on the web, then you can use FILE / SAVE VIEW AS... / SAVE FILE TYPE = HTML. To save information as database tables on a web server use Approach's 'Saving to Internet' feature (search Approach HELP for more details). If you want to have a live database running, then you need to find an ISP that will let you do some CGI, PHP, or some other scripting, and write or buy the appropriate scripts that you need. These do not come with Approach.

You can open MySQL databases via the web using its ODBC driver with Approach, as long as the MySQL database resides on a web server and you have a connection to the internet open before attempting to open the db from Approach.

The following words of advice were contributed by Michael Cook:

I've been using Approach to develop databases and making them accessible over the web for about 1 years now. Here are the major issues:

1. The current (Jan, 2002) implementation of many ODBC database drivers are not thread safe. In your web server configuration, you need to set the ODBC drivers to a single thread configuration; assuming your web server has that ability. This applies to dBase, FoxPro, Access, and many Intersolve drivers.

2. If you delete a record using the Approach client, and do not compress the dBase table, an SQL INSERT will no longer work for your browser clients out on the web; i.e. new records will not get written to the Approach dBase table. Conversely, where your database has parent and child tables (joins), if a record is deleted or updated using a browser client, a user in an Approach client will not see the change until the dBase table is compressed. A strategy that I have used is to build in a macro or script in Approach that does a "compress" after a record is deleted, or on APR file open/file close.

3. Depending on the development environment you are in (PHP, ASP, etc.) you may have some limitations. For example, dBase tables are NOT recommended if your scripting language is PHP. The PHP documentation warns that using dBase as your back end tables will result in your tables being corrupted if more than one user accesses your database at the same time.

4. The ODBC drivers do not support indexing over multiple columns (fields), so depending on the size of your tables, searching make take quite a while. If you only need to search on one field, then you can do an SQL CREATE INDEX and index on the chosen field. This is a different index from what Approach uses. Approach uses ADX files, and the MS ODBC implementation uses MDX files. You will have to periodically recreate an MDX index using SQL when new records are added and/or deleted.

If you want to dramatically extend the capabilities of Approach and dBase, check out dB2k at

I hope this helps.


[Return to contents]

© Copyright, JohnBrown, Trademarks, Disclaimer, Acknowledgements.