• Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 536
  • Last Modified:

Server-side Access Database won't work for one of the client machines..why?

I have an Access Database (2007) which resides on a central server.  Several employees run this database through shortcuts on their machines.  All of them work great except for one lady's machine (an XP machine...most of the other client machines are Windows 7).  When she runs the database, it does open and she is able to select a record through the main-form like everyone else, but at that point a "compile error: project or library cannot be found" message is displayed.  Along with that message a "Str" function is highlighted (it goes into debug mode) in some of the VBA code.  So this Str (convert to string) function is not being recognized on her machine.  That function is run out of a standard vba reference library (which she has in her reference list).  At this point, I figured this was a corrupt library and told Office to repair itself...which it did, but the problem remains still.  A full reinstall of Office didn't fix the problem either (although I don't think it was removed completely first..someone else did the reinstall).  So, thoughts anyone?
0
David L. Hansen
Asked:
David L. Hansen
  • 3
1 Solution
 
Scott McDaniel (Microsoft Access MVP - EE MVE )Infotrakker SoftwareCommented:
That's a reference error. It means that one of the references in the application is not present on the user's machine, and you can't fix that by reinstalling Access.

The correct way to deploy an Access database (especially in a mixed-use environment) is to split the database into a BackEnd (tables only) and a FrontEnd (everything else), and then deploy the FE to each user.

You'll also need to insure that you use the "lowest common denominator" in regard to references. For example, if you're supporting users with both Office 2003 and 2010, and you need to make a reference to the Excel library, you'd need to reference the 2003 version (newer versions will "upgrade" the reference, but older versions cannot downgrade it).

Or you can use Late Binding, where appropriate. That will require reworking of your code, but it's the most foolproof way.
0
 
David L. HansenProgrammer AnalystAuthor Commented:
Thanks LSM,

The users all have Office 2007 (including the one in question).  I ran the diagnostic tool that comes with Office and it failed on the hard-drive test.  So it seems the mystery is solved.  You bring up some good points though.  I would like to separate the FE from the BE.  Any tutorials/advice you can give would be very much appreciated.  Also, with the late-binding...is that for executing code that is specific to the version of Office it sees, so that there is only one code-base but it will work on several versions?  That doesn't really apply to this group, but it peaked my interest when you mentioned it.
0
 
David L. HansenProgrammer AnalystAuthor Commented:
BTW, you've totally earned the points.
0
 
David L. HansenProgrammer AnalystAuthor Commented:
Thanks!
0

Featured Post

VIDEO: THE CONCERTO CLOUD FOR HEALTHCARE

Modern healthcare requires a modern cloud. View this brief video to understand how the Concerto Cloud for Healthcare can help your organization.

  • 3
Tackle projects and never again get stuck behind a technical roadblock.
Join Now