In
Ronald Dodge said:
DAO coding has a real problem with the "EditMode" property not working
properly at times (there's no official documentation on this bug, but
I have ran into it numerous times), which means I had to have a work
around in place to address this issue.
I don't know what you're referring to, so I can't comment.
ADO coding doesn't allow for dynamic cursor keyset recordsets against
a Jet Engine as documented.
The fact that you're delving into these details suggests to me that
you're either working in an unusual environment, are facing unusual
operational constraints, or are "over-programming". I couldn't say
which.
Another thing I don't like about unbound controls, certain properties
aren't updated *AND* readable by VBA until *AFTER* that control has
lost focus, which doesn't help me out one bit in many cases. Listboxes
has this problem and impacted me so great to the point that
I had to create my own custom listbox class object to emulate the
actual listbox on the form, which then I ran into another bug dealing
with listbox selections via keyboard method. That's cause I was like,
if I'm going to emulate the listbox, I might as well go full out and
get everything including mouse movement, how selections are done
(Keyboard and mouse methods) under the 3 different selection mode
options, and what it will take, just as I emulated VB6's
CausesValidation property and Validate event to get around the fact
in Access, using the default error checking stuff on a control by
control basis, it either always or never gets checked, which you
would want checks to take place most of the time prior to a control
losing it's focus, but not everytime in a pretty big majority of the
cases.
I'm somewhat curious as to what deficiencies of the Access listbox
forced you to go to such lengths. I've found it to be a very functional
control, only occasionally needing to be supplemented by a little bit of
VBA programming.
One of the reasons why I put in checks on a control by control basis,
not just record by record basis, I did data entry for a time and if
an error was made that could reasonably be caught right there on the
spot without slowing things up, I would want to have it caught right
away and allow me to go back just briefly, and make the adjustment as
needed.
There are differing ideas about this. I prefer immediate trapping of
invalid data, but deferred trapping of missing data and inconsistent
data.
The other thing, at the time when I did do this at the IRS,
it was all text based, no mouse. However, even with having the mouse
available, if you doing nothing but strictly data entry (either
numeric, straight, or alphanumeric), that constant switching back and
forth between the keyboard and mouse is a huge time waster from the
point of view how much time it takes to go back and forth as opposed
to just sticking to the keyboard in most cases.
I don't follow you. You can easily create an Access UI that doesn't
require using the mouse at all.
Getting back to the original question, one thing we haven't really
talked about is that you can fairly easily create a form that is
dynamically bound to a single record, and that controls the saving of
that record. So you can use bound forms with a high degree of control.
It's not the default for Access, and requires a bit of programming, but
it can be done.