Can not open any more databases

J

Jeff C.

I'm getting a "Cannot open anymore databases" error message when a user
tries to bring up a report in print preview. It doesn't happen the first
time, it may take 10+ times for this error to come up. They are running the
Access Runtime 2000 on Windows XP. They are current with all their Office
2000 Updates. We can't duplicate this error in our office. Does anyone
have any ideas on what is causing this error?
 
6

'69 Camaro

Hi, Jeff.

Error #3048 is usually caused by your database application trying to handle
too many tables at the same time. There are 2048 "table handles," or
TableID's, available for Jet 3.51 and 4.0 (1024 TableID's for Jet 3.0 and
3.5) that Access requires when dealing with each table or linked table.

TableID's are used for the following:

- Tables
- Queries
- Bound forms and reports
- Modules for forms and reports
- Combo boxes and list boxes whose row source is a table or query
- Data Access Objects (DAO) Recordsets in code
- Domain functions, such as DLookup( ), DCount( ), et cetera.

If this error is caused by the application using too many TableID's, then
ensure that every Recordset used in code is explicitly closed and the
Recordset variable set to Nothing before the variable goes out of scope. If
this is occurring only after the report is opened multiple times, then
you'll likely fix the problem by explicitly closing and setting objects to
Nothing in at least one code module.

If this isn't enough to prevent the error message from recurring, then the
alternatives are to reduce the number of combo boxes that meet the above
listed criteria, simplify complex queries, or to unlink some of the tables
(linked tables require twice as many TableID's) and place these tables in
the database file.

Reducing the number of any of the items on the list above will help reduce
the number of TableID's in use. The important thing to remember is the
total number of TableID's in use at the same time needs to be prevented from
exceeding the limit.

This error has also been reported to be caused by implicitly referring to
the value of a checkbox in an If...Then block statement. If this is the
case, then the solution is to explictly refer to this value, instead.

HTH.

Gunny

See http://www.QBuilt.com for all your database needs.
See http://www.Access.QBuilt.com for Microsoft Access tips.

(Please remove ZERO_SPAM from my reply E-mail address, so that a message
will be forwarded to me.)
 
V

Van T. Dinh

Check in code that open the Report or in the Report itself. If you open the
database object with CurrentDB or similar, make sure you set the object to
Nothing when you finish.

A WorkSpace can have upto 255 (?) database objects and Access uses some
internally. You may get the error posted after a while if you don't set it
to Nothing.
 
Top