Re: Access 2007 Technical Questions
- From: "Ronald Dodge" <ronald.dodge@xxxxxxxxxxxxxx>
- Date: Fri, 2 Jun 2006 10:55:06 -0400
Let me clearify up one thing as you seem to have misunderstood me when I
mentioned validation rules. Yes, I fully understand the order of the
sequence of the events, and secondly, I have done a lot of things with
various programs.
I get the sense you think I'm refering to the Validation rules that one sets
up in the controls or on the fields within the tables in the BE DB. Forget
about those fields (Validation Rule and Validation Text on both Controls and
Fields within Tables). I instead would use any of the events that I can
properly use. The events that I have used are, Enter, GotFocus, KeyDown,
BeforeUpdate, AfterUpdate, Exit, LostFocus, and in few instances, MouseDown
or MouseMove. I use KeyDown instead of KeyPress cause as a developer, I
have more control via the KeyDown Event than I do with the KeyPress Event,
as the KeyDown picks up on things that the KeyPress doesn't, and the things
that the KeyPress does pick up, I can get just as easily with the KeyDown
Event.
Also, before you start accusing people that they don't know how a program
works, try to think it through to see what they are getting at. I think the
reason why you said that I have my own perception is cause of the fact that
I am a stickler on data validation, but at the same time, I'm also a
stickler on user friendliness, which I can't get both with BOUND
FORMS/CONTROLS. I have gone over this several times in the past about this
very issue on the newsgroups, and others finally realized what I was getting
at and agreed with me, it's not possible to do within Access for bound
forms/controls of what I'm after. Cause of the lack of having the
CausesValidation Property and Validation Event, I have had to create my own
custom centralized error checking code, which only works for unbound
forms/controls. Well it could be done for bound forms/controls, but still
run into the user friendliness issue that the centralize code address, thus
why I say it only works for unbound forms/controls.
Here's a link to an example that I'm talking about:
http://www.thescarms.com/vbasic/VB6Features.asp
Within this example, you see a dialog box with 5 different command buttons.
All 5 of the command buttons has the property, "CausesValidation". All of
them except for the one that shows as "Quit" has this property set to "True"
while the one for "Quit" is set to "False". The textbox itself has the
"Validation" event.
If you click on any command button other than for "Quit", the Validation
event on the textbox is triggered without the textbox losing control, which
is more or less the same how Access works.
Now, if you click on the "Quit" command button, this is where VB6 differs
from Access. Access would still go through the validation process via the
set of events that's on the textbox control, but in VB6, cause the
"CausesValidation" property on the "Quit" command button is set to "False",
there is no validation ran against the contents in the textbox, thus if
there's no string in it, VB6 will close out the program, but if that was
done in Access, the command button would never get the focus cause it would
have errored out and the focus would still be stuck on the textbox.
You right in the sense that the other issues that I'm having is as a result
of this issue that I just went through the illustration. With me having to
unbind all forms/controls in order to attempt to restore the user
friendliness of the forms while still keeping the stringent data validation
and to be ran only at the times when it's proper to be ran, these other
issues has surfaced. However, that doesn't mean that these issues doesn't
exist in Access itself.
If MS fixes these issues among others, then I may lay claim about MS Access
being multi-user worthy, but until such thing takes place, I will not lay
that claim.
Another big thing that I don't like about MS Access is the size limitation
of DB files, thus I had to setup multiple BE DBs (about 8 of them) to get
around this issue.
--
Ronald R. Dodge, Jr.
Production Statistician/Programmer
Master MOUS 2000
"Klatuu" <Klatuu@xxxxxxxxxxxxxxxxxxxxxxxxx> wrote in message
news:BCB0BD34-F7EF-418E-BDD5-42AD35759A80@xxxxxxxxxxxxxxxx
Neither Access nor any other database application is perfect; however,Access
reading your post I get the sense that rather than learning how to use
correctly, you have your own preconceived notions about how it should beand
are trying to force fit it to your way of thinking. Some notes on youit
issuses follow:
"Ronald Dodge" wrote:
I have exerted a lot of energy in the past testing things out in Access
2000/2002/2003, and here's the issues that I have faced.
Issue 1: Error checking isn't user friendly (Very Critical)
The biggest issue that is the very reason why I have had so many other
issues in Access is the fact that Access is not very user friendly when
wantcomes to error checking, especially for mouse users. Most times, you
whythe validation rules to run, but there are a minor few possible reasons
oryou may want to bypass the validation rules such as user clicking on the
"Help" command button (if there is one on the form), resetting the form,
buttoneven backing out of the form as 3 possible reasons why to bypass the
validation rules. However, when the user goes to click on a command
andon the form, all validation rules on the active control are processed,
focus isif any of those validation rules causes the control to be in error, the
Enter Event doesn't even take place on the command button cause the
commandforced to stay on the active control rather than to transfer to the
andbutton.
Access, being part of Office, caters to the casual user. Validation Rules
are there so that a non developer can apply a rudimentary level of error
checking. Most professional developers do not use Validation rules. They
code their own to make the user friendly.
To get around this issue, I had to mimic the CausesValidation Property
thisValidation Event as has been setup in VB6, which meant in order to get
around this issue, I had to UNBIND every single form and control else
towasn't going to work. It took me a total of 3 full months to do the R&D
VB6'sget around this issue. Therefore, I ask, "Does Access 2007 have the
CausesValidation Property and Validation Event, that is comparable to
apparentproperty and event?"
Using unbound forms is a typical mistake made when a user doesn't fully
understand how to use them. If you understand the event sequence, the
behaviours of the events, and how to properly address the issues.
Issue 2: EditMode within DAO programming loses it's value for no
getreason (Critical)
Initially, I was using DAO to get around the issue above as in order to
candata to the any of the BE databases with all forms and controls unbound,
However,only use ADO or DAO programming language to manipulate the data.
recordsetthere were instances that I found, when the code initially put the
form,into Edit Mode, even with the variable set at the module level of the
longerbefore it even reaches the Update Method, the EditMode property no
renderedhas it's enum value that it suppose to have. This more or less has
soundDAO programming useless.
I have not encountered this issue with the edit mode, perhaps because I
don't have to do as much coding to manipulate the data. This problem
like a byproduct of using unbound forms.a
Issue 3: ADO programming doesn't allow for DynamicCursor Keyset against
supposeJet Engine (Critical)
This one is actually documented, so I ask the question, how is one
itto setup a recordset using a Jet Engine to be able to see changes within
orwhen changes do take place? Without this capacity, it has rendered ADO
programming useless. Does Access 2007 address this issue?
Here, I agree with you. I don't much care for ADO and I only deal with it
if I have to work on someone else's application.
There is a 4th issue as well, but it's the above 3 issues that has more
Accessless turned me against from using Access as with those issues above,
tois not a worthy DB program for a multiple user environment. I was going
usinghave my own financial stuff stored within Access, and then allow my wife
some capacity to record some things, but with the issues above, it's not
stable enough to have something like that setup. Instead, I am still
hasExcel for all of my financial planning and tracking stuff, which that
filesgotten to be so large, I have already broken that 1 file down into 4
theand it's about to get split out to a 5th file with the data grouped in
sidefollowing categories:
Access is a worthy multi user environment when properly implemented by a
professional.
Economy (This contains information about the economy including economic
historic data, which impacts inflation, thus also impacts the spending
thatof the equation)
Debt
History (Our own financial history)
Investments (This isn't actually broken out yet, but it soon will be)
Planning and Summary (This file pretty much contains everything else
thedoesn't fit into any of the above categories and currently also contains
thisinvestments)
Issue 4: Listbox properties doesn't update until it has lost focus when
it's allowed to have multiple selections (Moderate)
This issue caused a lot of problems for me as well. Without addressing
Iissue, records wouldn't be updated properly. To get around this issue,
behad to create a class module and put in a set of codes to more or less
thingsable to record all of the various behaviors, just so as I can get an
accurate picture of what's taking place with the listbox. All of the
updateddone to the listbox is retained, but it's properties are either not
similaror if they are, the properties are only returning their old values,
priorto what happens when a DB transaction is taken place by recording, but
datato those transactions to being committed, they are only in a temporary
storage, but once committed, the tables are updated with the recorded
Ifrom the transaction.
Of course, this meant that I had to learn every single behavior of the
listbox from using both methods, mouse and keyboard. Not only that, but
and/orfound in few circumstances with the right combination of the keyboard
nothingmouse actions on the listbox, the listbox itself freezes up and does
out ofelse, which the only way to get away from that issue has been to back
the form, and then go back into the form.
Sincerely,
--
Ronald R. Dodge, Jr.
Production Statistician/Programmer
Master MOUS 2000
.
- Follow-Ups:
- Re: Access 2007 Technical Questions
- From: Klatuu
- Re: Access 2007 Technical Questions
- References:
- Access 2007 Technical Questions
- From: Ronald Dodge
- RE: Access 2007 Technical Questions
- From: Klatuu
- Access 2007 Technical Questions
- Prev by Date: Re: Create field
- Next by Date: Help need with custom Message Box.
- Previous by thread: RE: Access 2007 Technical Questions
- Next by thread: Re: Access 2007 Technical Questions
- Index(es):
Loading