SQL Server Management Objects (SMO)

  • Thread starter Thread starter Guest
  • Start date Start date
G

Guest

Hi All,

Just completed the conversion of a large .ADP to Access 2007 and the Ribbon
(70+ of the them). Now in the process of upgrading the backend from SQL
Server 2000 to 2005.

I have a truck load of DMO code in the application to manage Backups,
Restores and other SQL Maintenance functions. However, whilst DMO is
supported for backwards compatibility on SQL2005 the recommended direction is
to use SMO.

Does anyone no if you can implement SMO (supplied as a .NET assembly not a
COM object) functionality in an ADP using VBA?

I can only find documentation related to using SMO in .NET/VBScript.

Your assistance appreciated.
Guy
 
Guy,

Sorry, no help for you from me regarding SMO.

But I am curious about your conversion of an ADP to Access 2007.
How difficult was it?
How is the performance?
Are you using the Access 2007 runtime to distribute the application?

Thanks,

Reese
 
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
 
Hi Reese,

Following on from my previous posting regarding A2007...

I don't think any of the performance or other problems I have discovered so
far are significant enough for me to recommend that people don't upgrade to
A2007.

So go for it.

Cheers
Guy
 
Wow, that was a thorough answer.

Thanks.

Reese
Guy said:
Hi Reese,

Following on from my previous posting regarding A2007...

I don't think any of the performance or other problems I have discovered
so
far are significant enough for me to recommend that people don't upgrade
to
A2007.

So go for it.

Cheers
Guy
 
Back
Top