views:

148

answers:

2

I recently started a project where I was set to build an ADP based application in Access 2003. The font end GUI was going to be in Access while all the data resided in MS SQL Server. I say "was", because the powers that be have decided that Oracle Forms might be a better choice than Access and SQL Server. The place where I am doing this work is an Oracle shop where they use Oracle 10g. They also use Oracle Forms quite a bit internally.

As for me I am always up for learning anything new. I have always been a rather "eclectic" developer (I work with .NET WinForms, ASP.NET, Java, C#, Python, and Access) so I would not mind moving to Oracle Forms as long as it could do the same things as MS Access (hopefully even more as VBA is rather limited).

So my question is this. How does Oracle Forms (10g) compare to MS Access for developing a GUI application? Access uses VBA for it's language, what does Oracle Forms use? I know the Forms app is a Java applet. Does that means you can write Oracle Forms using Java?

A: 

If you were going with an Access ADP, why not go with an Access MDB with ODBC? This has been MS's recommended setup even for apps using SQL Server (except for reporting, where ADPs have some advantages) for about the last 5 years or so.

ADPs are on the way out, it seems, not having had any changes/fixes in the last two versions of Access (A2007/A2010). They always seemed to me to be rather half-baked, but then I was comparing them to a mature platform, their sibling MDBs.

David-W-Fenton
David .. when you say Microsoft recommends MDBs with ODBC over ADPs do you have a link that backs that statement up? I am not trying to be "snarky", rather I would like to have an example I can show to others. Thank you.
webworm
The information I base this on is excerpted in http://groups.google.com/group/microsoft.public.access.forms/msg/036ffe2dc204d8ee . I know there was other documentation on the MS website that said the same thing (others have cited them), though the article that the URL cited there redirects to now includes only part of the info quoted. The info about the multiple layers the ADP goes through in order to talk to the SQL Server is the big revelation for most people.
David-W-Fenton
Thanks David. Do you know of any books that cover client/server Access development using linked tables as opposed to ADP? So much of the resources I find all talk about ADP (though they are rather old).
webworm
The Baron/Chipman book covers both, as do the various versions of the Access Developers Handbook. But in general, you develop and MDB/ACCDB/ODBC app like you would if the back end were Jet/ACE, then move server-side those things that don't work efficiently. It goes without saying that you retrieve the smallest amount of data necessary for the user's purpose (which is the right thing to do even with a Jet/ACE back end).
David-W-Fenton
BTW, in regard to the information quoted in my original post and what's in the existing article, I had not read the whole thing. It's actually all there, just re-arranged in a different order and otherwise slightly revised. It basically says all the same things.
David-W-Fenton
+1  A: 

How does Oracle Forms (10g) compare to MS Access for developing a GUI application?

If you're accessing an Oracle database, I'd prefer Forms. Even better, I'd go for Apex. But that's probably partly because I'm used to these environments. I hated trying to build anything more than the simplest UIs in Access.

Access uses VBA for it's language, what does Oracle Forms use?

PL/SQL

I know the Forms app is a Java applet. Does that means you can write Oracle Forms using Java?

You can incorporate Java beans if you need specific custom components, but normally you don't need to. All your business logic you would normally code in SQL or PL/SQL, either in the form or on the database.

Jeffrey Kemp