Can't create MDE

T

Tom

Hello,
I am getting the dreaded "Microsoft Access was unable to create an MDE
database" error message on my FE db. Here's the situation:
The FE has tables which are linked from three different BE db's. I have
converted all of them to Access 2002 db's as well as the FE I am trying to
make an MDE file from. All of the other 3 db's created the MDE files without
hassle, although none of them have linked tables. The FE I am trying to
create the MDE from also has a few tables of its own. So, I relinked all of
the tables from the new MDE BE db's, but I am still getting the error.
After spending some time searching the NET I found many people with this
problem, but never found any real solutions. All of the "try this" replies I
saw, never had any confirmations that anything had worked. One said to
compile the db after the failur and that should tell me the problem. When I
went to compile it, the Compile utility was unavailable.
Help!!! :)
TK
 
J

Joan Wild

There was little point in making the backend mdbs into mdes, as there is no
impact on tables.

If the compile menu item is disabled, perhaps your database is in 2000
format, even though you are using 2002.

The default database format is 2000 - you can change this in Tools, Options.

You cannot create a mde in 2002 from a 2000 version mdb.

Convert the frontend to 2002 format (tools, database utilities, convert...).
Then go into any module and use Debug, Compile. Then compact the database,
and try to convert to mde.
 
T

Tom

Joan,
Thanks for the response, but I had done all that before I did anything with
the Back Ends. I had read on one of the threads I found on the Internet that
if the db was connecete to other db's, then they all had to be MDE's. Is
that not true?
It is true that all the db's are/were in 2000 format, but I had converted
them to 2002 before trying to create the MDE. This is happening on all my
Front Ends and I have 4.
On Microsoft's site they talked about having too many objects and using
light forms and reports. I am not about to go back through all my forms and
get rid of the modules and try to figure some other way to do what they are
doing - that would be crazy and the whole point of the MDE is to hide the
code so why do I have to get rid of it to hide it??
Anyway, any other suggestions for me to try??
Thanks in advance.
TK
 
J

Joan Wild

Tom said:
Joan,
Thanks for the response, but I had done all that before I did anything with
the Back Ends. I had read on one of the threads I found on the Internet that
if the db was connecete to other db's, then they all had to be MDE's. Is
that not true?

No it isn't.
It is true that all the db's are/were in 2000 format, but I had converted
them to 2002 before trying to create the MDE. This is happening on all my
Front Ends and I have 4.
Anyway, any other suggestions for me to try??

Try decompiling. Make a copy of the frontend. Launch it using
"path to msaccess.exe" "path to mdb" /decompile.
Close Access. Then reopen Access and your mdb. Then recompile and compact.
Ensure that the database titlebar says '2002 format'.

If that doesn't work, try importing all objects to a new database (ensure
it's 2002 format).
 
T

Tom

Joan,
Thanks again. I had tried the decompile routine with no luck, but I did not
try creating a new db in 2002 format. I will try that and let you know how
it turns out.
Thanks.
TK
 
T

Tom

Joan,
The new db did not work either. I forgot to mention before that this is a
secured db. I don't think that should matter though as the BE's are secured
too and they created the MDE files with no problems.
The back ends which worked have the following setups:
1 is nothing but tables
1 has 1 form and several modules - this is a library which is referenced in
all the front ends.
1 has tables and a couple of forms and queries (it is an archive db) - very
small in comparison to the front ends I am trying to create the MDE's from.
All three of these are linked to the front end that I am trying to create
the MDE from.
That about covers all the bases I think. This is quite frustrating
considering how easy it is supposed to be and how easily the back ends
worked.
Thanks for all your help.
TK
 
T

TC

In Access 97, if you use any methods of the DBEngine object - say,
OpenDatabase - and you do not include the DBEngine<dot> before the method
name - this can cause strange errors in certain cases; including the
inability to create an MDE. I have personally had this error, myself. The
solution is to ensure that all uses of methods of the DBEngine object, do
include the DBEngine<dot> part. So: DBENGINE.OpenDatabase, not just
OpenDatabase. (Similarly for any/all other applicable methods.)

See if that is your problem.

TC
 
T

Tom

This is Access 2002 that I am using.
TK

TC said:
In Access 97, if you use any methods of the DBEngine object - say,
OpenDatabase - and you do not include the DBEngine<dot> before the method
name - this can cause strange errors in certain cases; including the
inability to create an MDE. I have personally had this error, myself. The
solution is to ensure that all uses of methods of the DBEngine object, do
include the DBEngine<dot> part. So: DBENGINE.OpenDatabase, not just
OpenDatabase. (Similarly for any/all other applicable methods.)

See if that is your problem.

TC


MDE's.
 
T

TC

Fine. But who says that the problem has gone away in that version? Various
Access problems have appeared in the microsoft knowledgebase for a95, then
a97, then a2k, & so on...

You don't have any other options, no?
Try what I suggest :)

TC
 
A

Albert D. Kallal

Of cause the databases with no code likely will convert to a mde since there
is NO code,and the thus no possibility of errors.

As mentioned, THERE IS NO reason to convert the mdb back ends into mde's.

However, any application with code should be used as a compiled mde. This
process of compiling the code ensures that you have NO errors.

So, while looking at a some code, you SHOULD be able to do a save and
compile all. Or, in a2002 it is called compile project. Can you compile the
project without errors?

You can NOT make a mde if there is any errors in your code (that is a big
part of WHY you make a mde...it forces you to have NO compile errors in your
code).

So, while looking at some code, perhaps you can add a few lines of comments
to that code. You then want to try and compile the project while looking at
that code (the compile project don't work else where.

So, can you compile your project? Perhaps you can't even edit the existing
code (again, if you can't edit the code...you can't make a mde). If you
can't get the compile to work, you are wasting time trying things to make a
mde. You HAVE to be able to use the compile project feature BEFORE you try
and make a mde. And, of course you have to be able to view and edit code
before even trying to compile a project.
 
T

Tom

Yes I can compile. Yes I can edit and then compile again.
NO I still can't creat the mde file. I even tried creating a brand new db -
empty and then importing everything into it and then creating the mde - No
go!
If I save the new mdb as an mde file first, then it won't let me import
anything but the tables and queries :(
Any help is still appreciated!!
Tom
 
T

TC

(snip)
Any help is still appreciated!!


Except, apparently, the suggestion that I gave to you, which is *known* to
cause *exactly this problem* in previous versions of Access!

Sheesh...
TC
 
T

Tom

Ok, Ok - don't get testy!
I checked and only had two instances in the whole db which were methods of
the DBEngine and both already had the DBEngine<dot> in place so that is
obviously not the cause of my woes.
Any other ideas?
TK
 
T

TC

Tom said:
Ok, Ok - don't get testy!

Well, it's understandably annoying to see another plaintive cry for
help, when I did make a pertinent suggestion, but you gave no evidence
of having bothered to try it, despite a gentle reminder.

I checked and only had two instances in the whole db which were methods of
the DBEngine and both already had the DBEngine<dot> in place so that is
obviously not the cause of my woes.
Any other ideas?

I haven't followed the whole thread, so these have probably been made
before:

- the dbengine thing: apparentmy not;

- obviously a "compile all" to catch any syntax errors;

- import all objects into a new database & try again;

- the old "divide & conquor" trick: suppress all code modules by
placing an #IF FALSE ELSE at the first line, and #ENDIF as the last.
(Note the cross-hatches. These are compile-time tests, not runtime
ones.) Then un-suppress the modules one by one, to narrow it down to a
single module (if possible). Then divide & conquor through that
module, to narrow it down to particular code.

HTH,
TC
 
M

Michel AUTHIE

Le 21/01/04 5:57 said:
Fine. But who says that the problem has gone away in that version? Various
Access problems have appeared in the microsoft knowledgebase for a95, then
a97, then a2k, & so on...

You don't have any other options, no?
Try what I suggest :)

TC
C'EST QUOI CE BORDEL , PERSONNE NE PARLE Français ICI, J'AI RIEN DEMANDE A
PERSONNE
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
 
M

Michel AUTHIE

Le 21/01/04 4:48 said:
In Access 97, if you use any methods of the DBEngine object - say,
OpenDatabase - and you do not include the DBEngine<dot> before the method
name - this can cause strange errors in certain cases; including the
inability to create an MDE. I have personally had this error, myself. The
solution is to ensure that all uses of methods of the DBEngine object, do
include the DBEngine<dot> part. So: DBENGINE.OpenDatabase, not just
OpenDatabase. (Similarly for any/all other applicable methods.)

See if that is your problem.

TC
Comment faire pour sortir de ce truc ??? Je ne comprends rien a cette langue
!!!!!!!!!!!
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top