ADP, MDB, VB.NET

D

dp

I've been a big access fan for years. It suits my needs, and despite the
ribbing from the rest of the database community, I've found users, as well
as my bosses happy with the projects I produce with it. I have never had
the need to produce any web applications, and the amount of data, or number
of users has never gown to the point where Access' Jet has become slow to
the point that it became unusable. Very little speed degredation throught
the last 4 years of up-time. I won't pick at the "is access a decent
back-end database" scab anymore.

However I believe it is time to move on, at least for the backend database.
I'm porting my data to SQL, sometimes quickly, moreoften, very slowly. I'll
pick a table here, or a table there, and feed it in, and re-link it, and
continue using the regular MDB as it was, except with those few tables moved
to SQL. Now comes the time to write new applications. My feeling is that
we should now make the break, and use either VB.Net or go to Access ADPs.
I've used the ADPs a little bit, and found it to be significantly difficult
to grasp even coming from an Access background. DAO is gone, and you don't
seem to be able to link to any MDB sources within an ADP, even via ADO.
Other issues exist, like the inability to display update queries
graphically - nothing seems to fix that. There seem to be many barriers
here. Nobody seems to be praising these ADPs in any way at all. I produced
one application that was a simple report. It reduced the time to produce
the report from 45 seconds in Access Native Jet to 2 seconds using SQL
backand, and ADP as a frontend. All that really did though was show the
power of the SQL server. I imagine I could have written a passthrough query
in an Access MDB somehow and gotten the response I wanted back from the SQL
server just as quickly.

I see Access beginning to show it's age. They've retrofitted VBA to do ADO,
and there are still things I genuinely like about Access, but I'm beginning
to think that the majority of the computer world cannot be wrong, I hear
them whispering in my ear:

Access is for kids! Even the ADP portion! If you want to do it the
way the rest of the world is doing it, use VB.Net!

Maybe that's just Bill Gates. I do hear everyone jumping up and down
yelling about how great .net is going to make their lives. I don't hear
anyone jumping up and down about the power exposed through Access ADPs.

Someone give me a reality check here.

-Brian
 
G

Graham R Seach

Brian,

Although I find .NET more powerful/flexible than VBA, I'm not convinced that
I should move away from VBA just because people are whispering in my ear. If
that sort of thing affects your decisions in life, then <whispering> "send
me $1,000 - send me $1,000..."

It's always a matter of the right technology for the right job. If .NET
suits your needs, then by all means, go to .NET. If SQL Server or Oracle
suit your needs, then use them. I am juggling this very question right now,
and to be honest, its a close call. It'll come down to a single user
requirement, which if put in writing, will mean a .NET solution - if not,
Access and VBA.

All I can do is advise on the side of pragmatism - if it ain't broke, don't
fix it! If Access and VBA meet your needs, don't change. If they don't, then
look at your available options with a view to future requirements, and make
an informed decision.

As for ADPs, I wouldn't bother. There are too many issues with them. If
you're going to stick with Access, use MDB/MDE.

<<I see Access beginning to show it's age>>
Yep, it sure is - just like a fine wine. It has matured. :)

<<They've retrofitted VBA to do ADO>>
Microsoft didn't retrofit it. VBA functionality always lags VB. Besides, ADO
is great for disconnected languages, but when it comes to Access and Jet,
DAO is the way to go. Access against SQLServer = ADO.

<<the majority of the computer world cannot be wrong>>
Who says they're the majority?? Even if they were, the majority of the
computer world CAN be wrong, mainly because they don't seem able (or
willing) to compare apples with apples. You cannot compare SQL Server or
Oracle, to Access - they're different beasts, used for different purposes.
These other people (the whisperers) have a drum to beat, and that's why they
say the things they do. Even Bill Gates! The man has a product line to
sell - of course he's going to promote it, but you notice he's not sounding
the death knell for Access while he's doing it.

Regards,
Graham R Seach
Microsoft Access MVP
Sydney, Australia

Microsoft Access 2003 VBA Programmer's Reference
http://www.wiley.com/WileyCDA/WileyTitle/productCd-0764559036.html
 
T

Tony Toews

dp said:
I've been a big access fan for years.
Agreed.

However I believe it is time to move on, at least for the backend database.
I'm porting my data to SQL, sometimes quickly, moreoften, very slowly. I'll
pick a table here, or a table there, and feed it in, and re-link it, and
continue using the regular MDB as it was, except with those few tables moved
to SQL.

The only problem with this piece by piece approach is you no longer
have referential integrity.
Now comes the time to write new applications. My feeling is that
we should now make the break, and use either VB.Net or go to Access ADPs.

I'd suggest visiting the ADP newsgroup. At least one MVP is
exceedingly happy with the "quirks" of ADPs.
I've used the ADPs a little bit, and found it to be significantly difficult
to grasp even coming from an Access background. DAO is gone, and you don't
seem to be able to link to any MDB sources within an ADP, even via ADO.

That's my understanding.
Other issues exist, like the inability to display update queries
graphically - nothing seems to fix that.

Not sure what you mean here.
I see Access beginning to show it's age. They've retrofitted VBA to do ADO,
and there are still things I genuinely like about Access, but I'm beginning
to think that the majority of the computer world cannot be wrong, I hear
them whispering in my ear:

Access is for kids! Even the ADP portion! If you want to do it the
way the rest of the world is doing it, use VB.Net!

And they've been seduced by the IT department hearing all the sweet
nothings muttered by the IT consultants who have visions of UML and
XML and TLAs (three letter acronyms) dancing through their heads.

Yes, those make sense in the right situation. But the reality is that
we can do the same job in much less time.
Maybe that's just Bill Gates. I do hear everyone jumping up and down
yelling about how great .net is going to make their lives. I don't hear
anyone jumping up and down about the power exposed through Access ADPs.

Someone give me a reality check here.

Hopefully someone else will also jump in who has more experience than
I do.

Tony
--
Tony Toews, Microsoft Access MVP
Please respond only in the newsgroups so that others can
read the entire thread of messages.
Microsoft Access Links, Hints, Tips & Accounting Systems at
http://www.granite.ab.ca/accsmstr.htm
 
D

david epsom dot com dot au

I think that Access is a dead end. There doesn't seem to be any
strategic development, and the underlying technologies aren't
strategic to MS either.

What I don't see is any valid replacement. MS needs to do more
work on the OS and Workstation before they can get position a
true replacement for the Jet engine, and more work 'somewhere'
before they have another entry-level RAD database client.

I think that if there was a valid replacement for Access, we'd
all jump tomorrow. The fact that developers are still using
Access and Jet after A95,A97,A2K,A2K2 & A2K3 only proves the
paucity of real alternatives.

(david)
 
B

Brendan Reynolds

I think now is the wrong time to make a decision. I will be waiting until we
start to get some indication of where the next version is going.

But I would certainly recommend learning as much as possible about .NET in
the meantime. I still have strong reservations about .NET for desktop
applications, but for web applications ASP.NET is a huge step forward from
'classic' ASP, and the news coming out now about ASP.NET 2.0 is very
exciting.

For now, though, I can still develop and modify data-driven desktop
applications a lot faster using Access than using anything else, and when
you have impatient clients (is there any other kind? :) that consideration
tends to outweigh a lot of others.

--
Brendan Reynolds (MVP)
http://brenreyn.blogspot.com

The spammers and script-kiddies have succeeded in making it impossible for
me to use a real e-mail address in public newsgroups. E-mail replies to
this post will be deleted without being read. Any e-mail claiming to be
from brenreyn at indigo dot ie that is not digitally signed by me with a
GlobalSign digital certificate is a forgery and should be deleted without
being read. Follow-up questions should in general be posted to the
newsgroup, but if you have a good reason to send me e-mail, you'll find
a useable e-mail address at the URL above.
 
D

david epsom dot com dot au

FWIW, the 'free' SQL Server 2005 Express (the current version
for MSDE) supports CLR like Access supports VB in Jet, and
had a reported design goal of 'as easy to use as jet'. But
Jet is now listed as 'part of windows' (like IE and WMP)
and can be used as the container for Access reports.
Whereas 2005 Express isn't on any of my clients PC's, and
does not permit use of Report Services.

(david)
 
J

J. Clay

Just thought I would put my $.02 in.

I do use .adp and SQL 2k. There are a few quirks, but in general I find it
a very affective dev tool. I have been able to do quite a bit of
integration with key apps in our company. Mainly Goldmine Corporate Edition
on SQL and a shipping system.

I have also been contemplating VB.Net, but at this point, our app is to big
to convert and VBA is what I know best. The one thing I would like to see
in a future release of Access is the ability to reference .Net developed
libraries without having to wrap them up in a COM objects.

Anyway, I don't think you should discount the use of .adp projects. Having
the data in SQL with a direct connection has been a huge benefit to my
development efforts in our company.

Jim
 
D

david epsom dot com dot au

in a future release of Access is the ability to reference .Net developed
libraries without having to wrap them up in a COM objects.

Well I guess (though I haven't tried it) that you can now reference
..Net objects through SQL 2005 as well as through COM wrappers.

(david)
 

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