Tek-Tips is the largest IT community on the Internet today!

Members share and learn making Tek-Tips Forums the best source of peer-reviewed technical information on the Internet!

  • Congratulations strongm on being selected by the Tek-Tips community for having the most helpful posts in the forums last week. Way to Go!

3709 Error on 2003mde run under 2000 runtime 1

Status
Not open for further replies.

MrMerlotti

Technical User
Aug 6, 2005
32
GB
I have an application developed in Access 2000 and distributed with the Access 2000 runtime. I have recently added some additional functions using ADO in Access 2003 (keeping the 2000 file format - as all the original 2000 stuff has been now been updated).

The application runs fine on my 2003/XP machine - but gives the following errors when run on a 2000 OS with the 2000 runtime: "Error 438. Object doesn't support this property or method" followed by "Error 3709. The connection cannot be used to perform this operation. It is either closed or invalid in this context"

I have installed MDAC 2.7 then 2.8, and all the updates and service packs I can find.

I don't want to re-distribute the application with the 2003 runtime as the original application is in a specific directory and I can only seem to get the 2003 distribution kit to specify directories from a drop down selection. (Unless anybody knows how to specify a directory).

I'd really appreciate any help on this.
 
MrMerlotti, is your ADO libraRY referenced, in your VBE editor, on the 2000 machines?

Tools=>Refrences=> ActiveXDataObjects...
 
As I am running an .mde on 2000 runtime its a tad tricky to tell exactly what the faulty line of code is.

I'm guessing its somewhere in

Code:
Dim cn As ADODB.Connection
Dim rs As ADODB.Recordset
Set cn = CurrentProject.AccessConnection

Set rs = New ADODB.Recordset
With rs
Set .ActiveConnection = cn
.Source = "SELECT RecordID, Type, EmplCode, OpDate, CropID, OpCode, GroupID FROM Operations WHERE GroupID = '" & Group & "' AND EmplCode = '" & EmplID & "' AND HarvestYear = " & HarvestYear & " AND Type = 'In House' ORDER BY RecordID Asc"
      .LockType = adLockOptimistic
      .CursorType = adOpenKeyset
      .CursorLocation = adUseServer
      .Open
End With

Zion7 - I'm not sure how to ensure the ADO library is referenced on the 2000 machine. As it's a run time only installation I don't have a Tools option on the Access menu. Is there some other way of doing this?
 
I don't want to re-distribute the application with the 2003 runtime
So, you have to compile it with ac2000 !

Hope This Helps, PH.
Want to get great answers to your Tek-Tips questions? Have a look at FAQ219-2884 or FAQ181-2886
 
MrM., not sure if there is, with an MDE file?
But, since your code is compliling, i'm assuming it's not an
refrence issue?

Dan may be on to something....?
 
distributed with the Access 2000 runtime
Again, the MDE shoul be built with an Access 2000 full version, not a 2003 one (even in 2000 compatibility mode).

Hope This Helps, PH.
Want to get great answers to your Tek-Tips questions? Have a look at FAQ219-2884 or FAQ181-2886
 
Found a 2000 office installation and re-compiled. No joy - I think its something to do with a missing ADO/ODBC library on the 2000 runtime.

Looks like I've got to re-write the code in DAO - Or re-package to install the 2003 runtime. Thanks for all your help and suggestions
 
Version control!! Sorry think I must have got myself in a bit of a muddle with which file was which.

Ran the mdb on the 2000 machine and it threw up the AccessConnection as an error. Modified it then re-compiled the mde (I could have sworn it compiled the first time without errors) - and it now runs OK

Many many thanks to you all!
 
Status
Not open for further replies.

Part and Inventory Search

Sponsor

Back
Top