C
CPutnam
Here's the situation:
I have an application that I've converted to Access 2002. I've tested it
pretty thoroughly and it's ready to be distributed to users. BUT the users
already have the Access 97 application and they have a lot of custom reports
and queries that need to be exported and then imported into the Access 2002
application.
The original application creator included an Upgrade routine that the users
have often used successfully when we have needed to distribute bug fixes,
additional standard reports & queries, etc. I'm trying to use this routine
to transfer all the custom information from the Access 97 app to the
converted App.
Basically, the routine opens an initialized converted database (i.e. one
without any custom objects), then opens the Access97 database, exports the
custom objects into a temporary database, and then imports them into the
converted database which then becomes the LIVE database. Everything works
fine, mostly, except for this line:
appToolkit.OpenCurrentDatabase mvarSourceFile
(AppToolkit is defined in the declarations as: Dim appToolkit As New
Access.Application
mvarSourceFile is the location of the old application .mdb file (remember
that this file is an Access97 database).)
Apparently the .mdb file for an Access97 database can't be opened from an
Access 2002 database. BUT I have found that if I first convert the Access97
database to an Access 2002 database (ignoring the few errors I get because
of different error codes) then this line doesn't cause any problems and the
upgrade goes through okay.
If at all possible, I don't want to make the users (there are about 90 of
them spread throughout the US) have to upgrade their databases as a separate
step (this application happens to have a Front End, a BackEnd, and an extra
little database that would all need to be converted) -- Partly because
people get really worried when they see error messages even if you tell them
to ignore them and also because extra steps always leave room for user error
and more problem.
So I'm trying to figure out how to get this upgrade to just open the
Access97 database and do what needs to be done. It's okay with me if it
opens the database and does the conversion to Access 2002 on the fly if it
needs to (I suppose that the users will still get the error messages but
that doesn't seem to affect the conversion). I have read other postings
about closing the application I'm coming from when I open the other .mdb
file but I don't think that's an option because, as I explained above, I
have to import the custom objects into it. And I certainly couldn't close
the converted database before opening the Access97 database which is where
the problem lies.
I haven't been able to find anything about how to structure
OpenCurrentDatabase or OpenDatabase in order to tell the routine what
exactly it is opening and give instructions on how to do it. Does anything
like that exist?
Thanks in advance for any ideas from anyone. Carol.
I have an application that I've converted to Access 2002. I've tested it
pretty thoroughly and it's ready to be distributed to users. BUT the users
already have the Access 97 application and they have a lot of custom reports
and queries that need to be exported and then imported into the Access 2002
application.
The original application creator included an Upgrade routine that the users
have often used successfully when we have needed to distribute bug fixes,
additional standard reports & queries, etc. I'm trying to use this routine
to transfer all the custom information from the Access 97 app to the
converted App.
Basically, the routine opens an initialized converted database (i.e. one
without any custom objects), then opens the Access97 database, exports the
custom objects into a temporary database, and then imports them into the
converted database which then becomes the LIVE database. Everything works
fine, mostly, except for this line:
appToolkit.OpenCurrentDatabase mvarSourceFile
(AppToolkit is defined in the declarations as: Dim appToolkit As New
Access.Application
mvarSourceFile is the location of the old application .mdb file (remember
that this file is an Access97 database).)
Apparently the .mdb file for an Access97 database can't be opened from an
Access 2002 database. BUT I have found that if I first convert the Access97
database to an Access 2002 database (ignoring the few errors I get because
of different error codes) then this line doesn't cause any problems and the
upgrade goes through okay.
If at all possible, I don't want to make the users (there are about 90 of
them spread throughout the US) have to upgrade their databases as a separate
step (this application happens to have a Front End, a BackEnd, and an extra
little database that would all need to be converted) -- Partly because
people get really worried when they see error messages even if you tell them
to ignore them and also because extra steps always leave room for user error
and more problem.
So I'm trying to figure out how to get this upgrade to just open the
Access97 database and do what needs to be done. It's okay with me if it
opens the database and does the conversion to Access 2002 on the fly if it
needs to (I suppose that the users will still get the error messages but
that doesn't seem to affect the conversion). I have read other postings
about closing the application I'm coming from when I open the other .mdb
file but I don't think that's an option because, as I explained above, I
have to import the custom objects into it. And I certainly couldn't close
the converted database before opening the Access97 database which is where
the problem lies.
I haven't been able to find anything about how to structure
OpenCurrentDatabase or OpenDatabase in order to tell the routine what
exactly it is opening and give instructions on how to do it. Does anything
like that exist?
Thanks in advance for any ideas from anyone. Carol.