If I want to have a form inside of another form's validation and set
focus in the second form, I can not do so. Apparently, using LostFocus
is a solution for this. I experimented a bit but then had to do
something else.
I gave up messing with all this and just went with what you would probably
call "front-end row validation".
I don't use grids for data entry. It's too easy for users to edit the wrong
row. They start working on row 3 and as their eyes move from left to right
they slip down to row 4 and now you have a real problem.
I use multi-column picklists to let users choose a record to edit.
(Actually, I have a homemade "list control" class that is a lot nicer than
a list control and a lot easier to use than a grid.)
Users have to enter data into an editing control set (which may either be
on the same "design surface" as the list or may pop up on a modal form or a
different page of a pageframe), and then press an "Enter" button.
All of the data in those controls then passes through a business object
validation method. On the first failure the user gets a "Data Entry Error"
message explaining what's wrong and what to do about it. The user can then
correct the problem and press "Enter" again. (Users, I find, rarely make
more than one error per record. One is enough to make them think more
carefully for the duration. So this is just as efficient as stopping them
in the middle of a textbox with Valid() = .F.)
If everything passes validation, the list of records gets updated with the
user's changes.
The "Enter" button can trigger an actual save back to the database in some
situations; in others it just updates the list and there's a separate
button for the save.
The VFP event sequence gets hinky in a lot of situations. It's okay for
very simple problems but the more complex and layered a form gets, the less
likely it is to work properly, or be flexible enough, all the time.
Ken Dibble
www.stic-cil.org
_______________________________________________
Post Messages to: [email protected]
Subscription Maintenance: http://mail.leafe.com/mailman/listinfo/profox
OT-free version of this list: http://mail.leafe.com/mailman/listinfo/profoxtech
Searchable Archive: http://leafe.com/archives/search/profox
This message:
http://leafe.com/archives/byMID/profox/[email protected]
** All postings, unless explicitly stated otherwise, are the opinions of the
author, and do not constitute legal or medical advice. This statement is added
to the messages for those lawyers who are too stupid to see the obvious.