Ok, but if you had two forms with identical controls such as combo boxes,
list boxes
and subforms. But one was bound to a single record and the other was an
unbound form
handling it's own updates what is the difference there?
The first difference is when you are going from one record to another:
often, many of these combo boxes and list boxes doesn't need to be requeried
when navigating to another record. When using bound forms, they are often
automatically requeried - even if they don't need to - with the effect of
slowing down the navigation.
The second difference is when you dynamically change the record source of
these controls when opening the form. You expect that when one of the
control have been queried, changing the record source of another one won't
affect the first one. It has been observed that with ADP, that's not true;
so the same control can be queried multiple times.
There is a similar effect with subforms: when their displays depends on the
controls in the parent form, they are often queried to early if the record
sources for these controls on the parent are changed and the situation is
worse if there are other controls on the subforms to be manipulated, too.
Finally, there is the combination of all this, ie. changing the record
sources of controls, subforms and controls on subforms when navigating from
one master record to another.
With ODBC linked tables, I don't remember exactly but a speed comparaison
between two identical GUIs against the same database, one built with a MDB
file and linked tables and the other built with ADP has show me the MDB
solution to be slower over the WAN by a factor of something like three to
four times - give or take - and that the situation was getting worse and
worse while increasing the complexity of the GUI (I was working on both at
the same time).
On a LAN, a factor of 3 to 4 times is not a big deal; however, the
interesting point here is that both the ADP and the MDB file solutions are
slower if we would have compared them to a solution using unbound forms
because only the queries that would make explicitely by the VBA code in the
exact order required to load/refresh all the controls/ subforms/ subcontrols
with the minimum number of operations would be sent over to the SQL-Server.
With unbound forms, I don't expect that I would see any difference of speed
between an ADP or a MDB GUI because the exact same number of requests would
be made in both cases.
Finally, with ADP 2007 (using bound forms), the situation seems to have got
totally out of control while it (probably) remains the same Access 2007 and
ODBC linked tables. This conclusion is based on the fact that's only with
ADP 2007 that we are now seeing a number of complaints about speed problems
(as compared to ADP 2003) popping out like mushrooms (and this not only over
the WAN but also over a LAN when the required charge is anything but light).
--
Sylvain Lafontaine, ing.
MVP - Technologies Virtual-PC
E-mail: sylvain aei ca (fill the blanks, no spam please)