R
Richard Grossman
Access 2000 db located on fileserver (domain server)
Workstations with Windows 2000, all windowsupdates applied
Office 2000 on workstations, all officeupdates applied
This app has been working fine for years from
workstations with Windows 98.
Client bought and installed new workstations with Windows
2000.
Many many errors pop up in various places in the
application when run from Windows 2000. The Windows 98
workstations all are still working fine.
The users can access the database, but they get "object
invalid or not found" and "Expression too complex or not
found" errors. They can OKAY past them and continue
working, strangely enough.
I believe from about 10 hours of investigation that some
of the errors are caused by forms with subforms. After
showing a 3rd separate form (or grid) in front of them
(for example to select a client or order to display),
then when that other form closes, the new form is being
activated differently than before. I believe the subform
is being activated first whereas previously the main form
was being activated first.
This error is very very difficult to trace because if I
place a breakpoint before the error, the act of debugging
and bringing up the debugger window prior to hitting F5
to continue prevents the error from occurring.
I have fixed one form by deactivating the subform prior
to bringing up the 3rd form in front.
However, there are about 40 forms in this app, and I
didn't write it, so it is very time-consuming to find and
fix these errors.
I am not convinced this is the only source of this error
or that this is the root source.
For example, I could not reproduce the error in Access
2003 running on my Windows XP dev machine (with dev
database copy on local machine as well). But I replaced
all references to currentDB with dbEngine(0)(0), and
defined all variables that store recordsets as recordsets
(previously they were just dim'd, so they would be
variants).
After making these fixes, I then was able to reproduce
the users' reported problems on my machine! I then
investigated further and found that by getting rid of the
subform before popping another 3rd form or window in
front of it, and then restoring the subform *after* focus
was firmly returned to the primary form.
However, this would have to be applied everywhere there
is a form and subform and dialog is popped in front.
Is there any way to restore the prior behavior?
Workstations with Windows 2000, all windowsupdates applied
Office 2000 on workstations, all officeupdates applied
This app has been working fine for years from
workstations with Windows 98.
Client bought and installed new workstations with Windows
2000.
Many many errors pop up in various places in the
application when run from Windows 2000. The Windows 98
workstations all are still working fine.
The users can access the database, but they get "object
invalid or not found" and "Expression too complex or not
found" errors. They can OKAY past them and continue
working, strangely enough.
I believe from about 10 hours of investigation that some
of the errors are caused by forms with subforms. After
showing a 3rd separate form (or grid) in front of them
(for example to select a client or order to display),
then when that other form closes, the new form is being
activated differently than before. I believe the subform
is being activated first whereas previously the main form
was being activated first.
This error is very very difficult to trace because if I
place a breakpoint before the error, the act of debugging
and bringing up the debugger window prior to hitting F5
to continue prevents the error from occurring.
I have fixed one form by deactivating the subform prior
to bringing up the 3rd form in front.
However, there are about 40 forms in this app, and I
didn't write it, so it is very time-consuming to find and
fix these errors.
I am not convinced this is the only source of this error
or that this is the root source.
For example, I could not reproduce the error in Access
2003 running on my Windows XP dev machine (with dev
database copy on local machine as well). But I replaced
all references to currentDB with dbEngine(0)(0), and
defined all variables that store recordsets as recordsets
(previously they were just dim'd, so they would be
variants).
After making these fixes, I then was able to reproduce
the users' reported problems on my machine! I then
investigated further and found that by getting rid of the
subform before popping another 3rd form or window in
front of it, and then restoring the subform *after* focus
was firmly returned to the primary form.
However, this would have to be applied everywhere there
is a form and subform and dialog is popped in front.
Is there any way to restore the prior behavior?