Hi Reese,
Upgrading to A2007 is fairly straight forward if you don't want to use the
Ribbon. However, if you do then you are in for a steep learning curve.
Whilst there is documentation and number of sample applications available
that show you how to use the Ribbon in A2007, none of the samples I reviewed
scaled up well when it comes to ‘real world’ applications and the problems of
managing:
- Lots of Ribbons (70+).
- Sharing Ribbons amongst many forms or reports.
- Ribbon callback event timing.
The Ribbon is a stateless control and therefore if you want to be in a
position to enable/disable, show/hide controls on the Ribbon you must
maintain its state in code using variables (this applies to every Ribbon that
you want to actively change the properties of).
The solution that I use evolved from initial thoughts that I had and
discussions with Access MVP - Albert Kahill (Thanks Albert) and it allows me,
using a couple of classes and global subroutines, to use the simple/familiar
code that I have always used with custom menu bars within my forms and
reports such as:
cRibbon.Control("cmdCalculate").Enabled = True
To enable and disable a Ribbon control. Happy to discuss Ribbon gotchas and
the solution further if there is enough interest.
In regards to A2007 performance… In general I find the development
environment to be slightly slower than in previous versions of Access. The
application does appear to take longer to Load and Quit and there are some
notable Design View lags in some areas such as moving between subforms on a
tab. Also the Ribbon doesn’t appear to react as quickly as the previous menu
bars, although, this maybe a false perception as it is so much more visible.
In production however, and as an ADE, the application performs as expected
and as well as any previous version. I don’t use the Access runtime as all
our PCs globally run Microsoft Office Professional edition.
The only other problems I have experienced so far are:
- Compacting/Repairing
- Making ADE
- Importing Access objects into a clean database following corruption
- Decompiling
Causing A2007 to hang or forward an error report to Microsoft. However,
these problems now occur less frequently after setting the MSACCESS.EXE
shortcuts to ‘Run as Administrator’ on Vista.
Discovered a couple of potential bugs:
- Application hangs looping through the reports collection when setting the
ribbon name property.
- Application error -2147467259 calling the CurrentProject.OpenConnection
method with either a full connection string or “†to reset the connection –
when restarting the application immediately, perhaps to logon as a different
user, following a previous application exit. Microsoft engineers are
currently investigating this issue.
Hope this helps.
Guy