473,765 Members | 2,001 Online
Bytes | Software Development & Data Engineering Community
+ Post

Home Posts Topics Members FAQ

Unable to compact database converted to Access 2003 format

I've converted my application from A2K format to A2003 format.

I tried to follow Allen Browne's protocol in getting my app into A2003
(although I was unable to find informtion on the conversion process). Lots
of decompiling and lots of compacting of the original application in A2000.
Then the app was opened in A2003 and compacted, decompiled and compacted.
Next I imported everything into a blank A2003 database. Then this db was
converted from A2000 to A2003.

I had some issues with some missing references but this was fixed.

However, whenever I try to run the Compact command from the menu bar for my
converted application, I very quickly get an invalid operation messagebox.
Clicking Ok, simply restarts the app without compacting. So my DB is now 50
MB and climbing (typically it is around 20 MB after compacting in A2000.)

What can I do about this. I have to be able to compact the database?

Also, I still have one error in the converted database (that is not present
in the A2K format version).

It's on the following line where I'm trying to set an application icon.

dbs.Properties( "AppIcon") = strFile

Is this error occuring because in Access 2000 you can't set a universal
application icon for each form, whereas I think you can in 2003. Still why
wouldn't it allow me to code the application icon.

Thanks.

Thanks.

--
Message posted via AccessMonster.c om
http://www.accessmonster.com/Uwe/For...ccess/200608/1

Aug 8 '06 #1
8 2702
You might be able to solve the problem by opening the new file and assigning
an icon file through:
Tools | StartUp | Application Icon

If no icon has been assigned, the AppIcon property may not exist, so the
attempt to assign something to the uncreated property will fail.

You are probably aware that Access 2003 can use an A2000 file format
natively, so you don't need to convert to the A2002/3 file format unless you
have a special reason (e.g. creating an MDE.)

--
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.

"rdemyan via AccessMonster.c om" <u6836@uwewro te in message
news:64728be352 aee@uwe...
I've converted my application from A2K format to A2003 format.

I tried to follow Allen Browne's protocol in getting my app into A2003
(although I was unable to find informtion on the conversion process).
Lots
of decompiling and lots of compacting of the original application in
A2000.
Then the app was opened in A2003 and compacted, decompiled and compacted.
Next I imported everything into a blank A2003 database. Then this db was
converted from A2000 to A2003.

I had some issues with some missing references but this was fixed.

However, whenever I try to run the Compact command from the menu bar for
my
converted application, I very quickly get an invalid operation messagebox.
Clicking Ok, simply restarts the app without compacting. So my DB is now
50
MB and climbing (typically it is around 20 MB after compacting in A2000.)

What can I do about this. I have to be able to compact the database?

Also, I still have one error in the converted database (that is not
present
in the A2K format version).

It's on the following line where I'm trying to set an application icon.

dbs.Properties( "AppIcon") = strFile

Is this error occuring because in Access 2000 you can't set a universal
application icon for each form, whereas I think you can in 2003. Still
why
wouldn't it allow me to code the application icon.

Aug 8 '06 #2
Yes, I want to create an MDE, not only to protect my code but to also provide
a stable app resistant to corruption. I'm going to be deploying to a client
who has the macro security to Medium. I purchased a certificate from Thawte
to remove those annoying messages on startup. Digital signing does not work
with A2K formats.

I guess I'm a bit concerned that you didn't provide any advice on the
compacting issue as I know that this is one of your areas of expertise. That
suggests I may be screwed.

Is there anything I can do? Have you seen this before?

Allen Browne wrote:
>You might be able to solve the problem by opening the new file and assigning
an icon file through:
Tools | StartUp | Application Icon

If no icon has been assigned, the AppIcon property may not exist, so the
attempt to assign something to the uncreated property will fail.

You are probably aware that Access 2003 can use an A2000 file format
natively, so you don't need to convert to the A2002/3 file format unless you
have a special reason (e.g. creating an MDE.)
>I've converted my application from A2K format to A2003 format.
[quoted text clipped - 30 lines]
>why
wouldn't it allow me to code the application icon.
--
Message posted via AccessMonster.c om
http://www.accessmonster.com/Uwe/For...ccess/200608/1

Aug 8 '06 #3
I forgot to mention. I downloaded the Jet Utility and WAS able to compact my
app in the A2003 format. However, the compact command within Access is not
working; hence, I can't create a .mde.

The version of Jet that I'm using is: 4.0.8618.0

rdemyan wrote:
>Yes, I want to create an MDE, not only to protect my code but to also provide
a stable app resistant to corruption. I'm going to be deploying to a client
who has the macro security to Medium. I purchased a certificate from Thawte
to remove those annoying messages on startup. Digital signing does not work
with A2K formats.

I guess I'm a bit concerned that you didn't provide any advice on the
compacting issue as I know that this is one of your areas of expertise. That
suggests I may be screwed.

Is there anything I can do? Have you seen this before?
>>You might be able to solve the problem by opening the new file and assigning
an icon file through:
[quoted text clipped - 12 lines]
>>why
wouldn't it allow me to code the application icon.
--
Message posted via http://www.accessmonster.com

Aug 8 '06 #4
Recreating the application as you did is a perfectly valid alternative to
compacting.

If the recreated application won't compact, but other databases do, then
presumably something is still corrupting it. I don't know what to suggest
beyond the usual prevention approaches suggested here:
http://allenbrowne.com/ser-25.html

Presumably the code in this database does compile, the references are fine,
and you have no other Wizard problems.

--
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.

"rdemyan via AccessMonster.c om" <u6836@uwewro te in message
news:64769d7466 b05@uwe...
>I forgot to mention. I downloaded the Jet Utility and WAS able to compact
my
app in the A2003 format. However, the compact command within Access is
not
working; hence, I can't create a .mde.

The version of Jet that I'm using is: 4.0.8618.0

rdemyan wrote:
>>Yes, I want to create an MDE, not only to protect my code but to also
provide
a stable app resistant to corruption. I'm going to be deploying to a
client
who has the macro security to Medium. I purchased a certificate from
Thawte
to remove those annoying messages on startup. Digital signing does not
work
with A2K formats.

I guess I'm a bit concerned that you didn't provide any advice on the
compacting issue as I know that this is one of your areas of expertise.
That
suggests I may be screwed.

Is there anything I can do? Have you seen this before?
>>>You might be able to solve the problem by opening the new file and
assigning
an icon file through:
[quoted text clipped - 12 lines]
>>>why
wouldn't it allow me to code the application icon.

Aug 8 '06 #5
Okay. I think I discovered what the problems is. I had a feeling that it
might be the table links that were causing the problem. So I deleted all
table links and the 2003 format version of my front end compacted just fine
by using the Access menu item.

I think the solution hinges on the following statement from a Microsoft
article:

"In Access 2002, the MSysAccessStora ge table replaces the MSysAccessObjec ts
table when you convert to the Access 2002 file format."

I noticed in my dbWindow that I had a LINKED table called MSysAccessObjec ts.
My backends are still in A2000 format.

With all tables linked and this MSysAccessObjec ts table also linked, I cannot
compact. If I delete the MSysAccessObjec ts link, then compacting proceeds
just fine (although after deleting that link Access did crash a few times).

So my linking routine must be allowing system tables in the BACK-ENDS to be
linked.

I tried to stop this by rewriting the actual linking part of the code as
follows:

If (tdf.Attributes And dbSystemObject) = 0 Then

'Set the properties of the new link
'and append to the tabledefs collection
tdf.SourceTable Name = TableToLink
tdf.Connect = ";DATABASE= " & BEFile
db.TableDefs.Ap pend tdf

End If

So what was added was the tdf.Attributes and dbSystemObject.

I then deleted all table links and relinked using the code. The linked
MSysAccessObjec ts table continues to link. I then stepped through the code
and watched as each table was linked. All of the MSys tables were able to
pass into the If statement and linking was attempted.

It's probably important that I mention that I have revoked all permissions on
backend tables and use RWOP queries. Therefore, according to MS Security FAQ,
I have to use On Error Resume Next when I attempt to link to the backend
tables. So I may be getting errors that are actually stopping backend system
tables from being linked if they are identical in name to the front end
system table. I don't know. But, if this is true, it explains why I'm only
seeing the MSysAccessObjec ts table (and also MSysAccessXML) as being linked
in my front end. These tables are not local system tables within the front
end. Please verify that my understanding of this is correct. As I said, I
can't test it because MS forces me to use On Error Resume Next.

Either way, it looks like I have made major progress to resolving this issue.
Now I just need to figure out how to stop system tables that are located in
the back-end files from being linked to the front end.

Thanks.


Allen Browne wrote:
>Recreating the application as you did is a perfectly valid alternative to
compacting.

If the recreated application won't compact, but other databases do, then
presumably something is still corrupting it. I don't know what to suggest
beyond the usual prevention approaches suggested here:
http://allenbrowne.com/ser-25.html

Presumably the code in this database does compile, the references are fine,
and you have no other Wizard problems.
>>I forgot to mention. I downloaded the Jet Utility and WAS able to compact
my
[quoted text clipped - 27 lines]
>>>>why
wouldn't it allow me to code the application icon.
--
Message posted via http://www.accessmonster.com

Aug 8 '06 #6
"rdemyan via AccessMonster.c om" <u6836@uwewro te in
news:64779cbe33 7d0@uwe:
>
Either way, it looks like I have made major progress to resolving this
issue. Now I just need to figure out how to stop system tables that
are located in the back-end files from being linked to the front end.
You didn't take anyone's advice about this.
Your code is just a giant bucket of shit.
So, yes, you do.

(I was gentle the first time!)

--
Lyle Fairfield
Aug 8 '06 #7
"rdemyan via AccessMonster.c om" <u6836@uwewro te in
news:64779cbe33 7d0@uwe:
If (tdf.Attributes And dbSystemObject) = 0 Then

'Set the properties of the new link
'and append to the tabledefs collection
tdf.SourceTable Name = TableToLink
tdf.Connect = ";DATABASE= " & BEFile
db.TableDefs.Ap pend tdf

End If

So what was added was the tdf.Attributes and dbSystemObject.

I then deleted all table links and relinked using the code. The
linked MSysAccessObjec ts table continues to link. I then stepped
through the code and watched as each table was linked. All of
the MSys tables were able to pass into the If statement and
linking was attempted.
You're testing the attributes of the front-end link, not the back
end table.

--
David W. Fenton http://www.dfenton.com/
usenet at dfenton dot com http://www.dfenton.com/DFA/
Aug 8 '06 #8
Thanks, David.

That did the trick. System tables from the backend are no longer being
linked.

David W. Fenton wrote:
>If (tdf.Attributes And dbSystemObject) = 0 Then
[quoted text clipped - 13 lines]
>the MSys tables were able to pass into the If statement and
linking was attempted.

You're testing the attributes of the front-end link, not the back
end table.
--
Message posted via AccessMonster.c om
http://www.accessmonster.com/Uwe/For...ccess/200608/1

Aug 8 '06 #9

This thread has been closed and replies have been disabled. Please start a new discussion.

Similar topics

0
4049
by: Jim M | last post by:
For about a year and a half now I have been working in Access 2002 at home and converting to Access 2000 for work (I need both versions). I made a few changes to forms and queries then converted to Access 2000 a (as I had done many times before). After this last conversion I tried to open the database in Access 2000 and got the following error when I tried to open the Access 2000 database from Access 2000. "Microsoft Access was unable to...
5
2506
by: mr_mach7 | last post by:
I have an Access database that needs to be compacted and repaired almost on a daily basis. It is the front end that needs to be fixed, so other users cannot get into it when the problem happens. This is driving me nuts and needs to be resolved. The database was originally created in 97 and converted to 2002-2003 format. It is split into front-end and back-end. The it is placed in a network share for multiple user access. There are only...
5
3999
by: Wayne | last post by:
I have been trying to get to the bottom of some bloating that I have in a frontend database. I started deleting objects a few at a time and have now deleted all objects and custom menu bars. The database is just a shell but the size is still 5 Mb after a compact and repair. If I create an mde, the file size is about half a meg - roughly the size I would expect the empty mdb to be. I can't understand why the empty mdb won't compact down...
0
1193
by: phpmaet | last post by:
hi I have migrated the Access 2003 database to Oracle 10g database by Oracle work bench. Actually i am using the platform is Microsoft Windows Server 2003 for migaration. and i have configured OMWB with Access Plugins in Windows sever 2003. Basically i have converted the Access database to XML file. then the oracle table
9
3991
by: Ron | last post by:
New discovery. If I take a perfectly good database, and "compact/repair" on it with Access 2000 (seems to be at multiple sites--I've tried it with my system here, at another office on an entirely different network), it damages the file somehow. The user's machine that did the compact/repair can see the file fine. But any networked user can't get in. I can double click on a good database file from any user (over the network) and it...
1
3006
by: Haidee | last post by:
Hi I'm pretty new to MS Access so please be patient.... I have a user that is trying to import an external excel spreadsheet into MS access 2003 by using the File - Get external data - Import. She is also running Access 97 and it works fine into that. The error she gets is: You have encountered an error and MS office access needs to close.We are sorry for any inconvenience.The information you were working on might be lost. MS...
5
8998
by: ISUTri | last post by:
We are currently converting from Access 2003 to Access 2007. I have an Access app that is going to be very difficult to convert. This App is used by people that are out in the field and are a long distance from where our Access Databases are. So that is why we have Replication set up. So they have a local copy that they can replicate to our copies when they are in a high speed area. Since they have data on their local laptop we use...
5
2223
by: teddysnips | last post by:
My client has asked if it's possible to Compact and Repair his Front End database programmatically. I remember doing this from a VB application about 10 years ago, so I wondered if it was possible in Access. The application is Access 2003 in 2002-2003 File Format. I've added the following function to the Front End in a global module: Public Function CandRDB()
3
2498
by: Bruce | last post by:
I have a number of Access 2000 format databases on a Windows 2003 server. For some reason I can no longer compact these databases directly on the server using Access 2003. Access 2000 seems to compact them just fine however. If I copy the database to my local workstation Access 2003 will compact it just fine. On the server however, when I use Access 2003, it creates a compacted copy of the original database and names it dbn.mdb (where...
0
9568
marktang
by: marktang | last post by:
ONU (Optical Network Unit) is one of the key components for providing high-speed Internet services. Its primary function is to act as an endpoint device located at the user's premises. However, people are often confused as to whether an ONU can Work As a Router. In this blog post, we’ll explore What is ONU, What Is Router, ONU & Router’s main usage, and What is the difference between ONU and Router. Let’s take a closer look ! Part I. Meaning of...
0
9398
by: Hystou | last post by:
Most computers default to English, but sometimes we require a different language, especially when relocating. Forgot to request a specific language before your computer shipped? No problem! You can effortlessly switch the default language on Windows 10 without reinstalling. I'll walk you through it. First, let's disable language synchronization. With a Microsoft account, language settings sync across devices. To prevent any complications,...
0
10160
Oralloy
by: Oralloy | last post by:
Hello folks, I am unable to find appropriate documentation on the type promotion of bit-fields when using the generalised comparison operator "<=>". The problem is that using the GNU compilers, it seems that the internal comparison operator "<=>" tries to promote arguments from unsigned to signed. This is as boiled down as I can make it. Here is my compilation command: g++-12 -std=c++20 -Wnarrowing bit_field.cpp Here is the code in...
1
9951
by: Hystou | last post by:
Overview: Windows 11 and 10 have less user interface control over operating system update behaviour than previous versions of Windows. In Windows 11 and 10, there is no way to turn off the Windows Update option using the Control Panel or Settings app; it automatically checks for updates and installs any it finds, whether you like it or not. For most users, this new feature is actually very convenient. If you want to control the update process,...
0
9832
tracyyun
by: tracyyun | last post by:
Dear forum friends, With the development of smart home technology, a variety of wireless communication protocols have appeared on the market, such as Zigbee, Z-Wave, Wi-Fi, Bluetooth, etc. Each protocol has its own unique characteristics and advantages, but as a user who is planning to build a smart home system, I am a bit confused by the choice of these technologies. I'm particularly interested in Zigbee because I've heard it does some...
0
6649
by: conductexam | last post by:
I have .net C# application in which I am extracting data from word file and save it in database particularly. To store word all data as it is I am converting the whole word file firstly in HTML and then checking html paragraph one by one. At the time of converting from word file to html my equations which are in the word document file was convert into image. Globals.ThisAddIn.Application.ActiveDocument.Select();...
0
5421
by: adsilva | last post by:
A Windows Forms form does not have the event Unload, like VB6. What one acts like?
1
3924
by: 6302768590 | last post by:
Hai team i want code for transfer the data from one system to another through IP address by using C# our system has to for every 5mins then we have to update the data what the data is updated we have to send another system
3
2805
bsmnconsultancy
by: bsmnconsultancy | last post by:
In today's digital era, a well-designed website is crucial for businesses looking to succeed. Whether you're a small business owner or a large corporation in Toronto, having a strong online presence can significantly impact your brand's success. BSMN Consultancy, a leader in Website Development in Toronto offers valuable insights into creating effective websites that not only look great but also perform exceptionally well. In this comprehensive...

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.