Home | Contact Us | FAQ | Search & Site Map | Link to Us
Sign In | Join | Other 45 Sites in Network
Home
Discussion GroupsFormsForms ProgrammingQueriesModules / DAO / VBAReports / PrintingMacrosDatabase DesignSecurityConversionImporting / LinkingSQL Server / ADPMultiuser / NetworkingReplicationSetup / ConfigurationDeveloper ToolkitsActiveX ControlsNew UsersGeneral 1General 2
Access DirectoryToolsTutorialsUser Groups
Related Topics
SQL ServerOther DB ProductsMS OfficeMore Topics ...

MS Access Forum / General 1 / August 2006

Tip: Looking for answers? Try searching our database.

Type Mismatch Error Fixed when Move ADO reference up - Why?

Thread view: 
Enable EMail Alerts  Start New Thread
Thread rating: 
sara - 24 Aug 2006 14:06 GMT
I have an A2K database that has links to 3 of my other databases
(external links) to run some reports.  The coding in any of the 4 is
pretty simple.

Recently when we make a new .mde for the "main" database, the first
time we run our reports (all executed from code from a form), we get a
Type Mismatch Error on the line:

   Set db = CurrentDb

I go into Tools/References and move MS DAO 3.6 up above my external DB
references and above OLE automation, and make a new mde.
The problem goes away.

The problem is occuring in the MAIN db (not any of the referenced dbs).

The only thing that has changed is that we started using Access 2003 to
do some editing.  Of course, we use A2K to make the mde.

Anyone have any thoughts?  Aside from the fact that it's annoying, I am
worried something else is wrong and I'm just lucky to have it fixed
with the move of the reference.

Thanks
sara
Allen Browne - 24 Aug 2006 14:26 GMT
Each version of Access uses a different binary for the compiled version of
the code. They are backwards compatible (e.g. Access 2003 can read an Access
2002/3 format file compiled into an mde on Access 2002, but not the other
way around.) So, when you have been editing the MDB on 2003, and then open
it in 2000, Access is supposed to silently recompile in the 2000 code, and
everything should run sweetly. In practice that does not happen reliably.

We have found it necessary to explicitly decompile whenever you switch back
to an older version. To decompile, make a backup copy, and enter something
like this at the command prompt while Access is not running. It is all one
line, and include the quotes:
   "c:\Program Files\Microsoft office\office\msaccess.exe" /decompile
       "c:\MyPath\MyDatabase.mdb"
Then restart Access (without running any startup code, e.g. hold down the
Shift key), and compact (again holding down Shift.) Then open in the old
version.

It may also help to be explicit about the libaray you want when you declare
references that could be another library, e.g.:
   Dim db As DAO.Database
   Dim rs As DAO.Recordset
   Dim fld As DAO.Field

And the other crucial aspect is to make sure all versions have at least SP8
for JET 4:
   http://support.microsoft.com/kb/239114

Signature

Allen Browne - Microsoft MVP.  Perth, Western Australia.
Tips for Access users - http://allenbrowne.com/tips.html
Reply to group, rather than allenbrowne at mvps dot org.

>I have an A2K database that has links to 3 of my other databases
> (external links) to run some reports.  The coding in any of the 4 is
[quoted text clipped - 21 lines]
> Thanks
> sara
sara - 24 Aug 2006 14:39 GMT
Thank you, Allen.  I'm so glad it's not me!

There are only 2 of us who even write queries and reports (and I am the
only one who writes code), and IT wanted us to upgrade to 2003,
thinking that it would be simple, and he could upgrade to 2003 for new
users.  I suspected this wasn't a "workable plan", and you have now
confirmed that for us.  THANKS!

Also, I have been using your Change Tracking with tremendous success -
thanks for that, too.  It is really easy to install and use.  At an
upcoming user group meeting, one of the group's organizers said he'd
explain what all your code was doing as well.

Thanks for all your help!  I'd never have made it this far without it.
Sara

> Each version of Access uses a different binary for the compiled version of
> the code. They are backwards compatible (e.g. Access 2003 can read an Access
[quoted text clipped - 53 lines]
> > Thanks
> > sara
Allen Browne - 24 Aug 2006 15:02 GMT
That's great, Sara.

It's worth experimenting with the /Decompile.

Signature

Allen Browne - Microsoft MVP.  Perth, Western Australia.
Tips for Access users - http://allenbrowne.com/tips.html
Reply to group, rather than allenbrowne at mvps dot org.

> Thank you, Allen.  I'm so glad it's not me!
>
[quoted text clipped - 73 lines]
>> > Thanks
>> > sara
David W. Fenton - 24 Aug 2006 18:16 GMT
> Recently when we make a new .mde for the "main" database, the
> first time we run our reports (all executed from code from a
[quoted text clipped - 5 lines]
> external DB references and above OLE automation, and make a new
> mde. The problem goes away.

That makes no sense to me at all, as DAO is not necessary to use
CurrentDB, as it is available both through DAO and as a property of
the Application object.

Signature

David W. Fenton                  http://www.dfenton.com/
usenet at dfenton dot com    http://www.dfenton.com/DFA/

 
Sign In
Join
My Latest Posts
My Monitored Threads
My Blog
My Photo Gallery
My Profile
My Homepage

Start New Thread
Enable EMail Alerts
Rate this Thread



©2008 Advenet LLC   Privacy Policy - Terms of Use
This website includes both content owned or controlled by Advenet as well as content owned or controlled by third parties.