karen,Have you considered using Triggers to the BEFORE INSERT/AFTER INSERT and
the BEFORE UPDATE/AFTER UPDATE Triggers allowyou to access WHERE CURRENT OF
SYS_NEW and WHERE CURRENT OF SYS_OLD values.Selective use of ON EXIT EEP /ON
PAGE CHANGE EEP could prompt for a SAVEROW command. The triggers would do
actual calculation.
Jim Bentley, American Celiac Society 1-504-305-2968
From: Albert <[email protected]>
To: [email protected]
Sent: Tuesday, August 25, 2015 10:08 AM
Subject: [RBASE-L] - Re: Need help with multi-tab form
Karen,
Can you set focus on arrival in the sales table tab to the field to be
updated, and then run the calculation in an on entry eep?
Albert
On 2015-08-25 8:32 AM, Karen Tellef wrote:
My dilemna: very old (1980s) RBase database, designed by someone other than
me. Not very relational in that there is a Sales table and a Payments table,
but there is a column called TotalPayments in the Sales table that has a total
of the payments so that a computed column Balance can be calculated.
In the DOS system, there is a separate form for Payments, so on closing that
form it's very easy to compute the total payments and update the Sales table
before bringing the Sales form back up.
In 9.5, they LOVE the idea of a form with multiple tabs, so I have Sales on
tab 1, and Payments on tab 2.
Here's what works: If you're in Payments, I have an "on row save" eep so that
if they change the amount it sums the payments, updates the Sales table and
refreshes the Sales table. So if you save the row and then click back into
tab 1, viola it's there.
What doesn't work: If you change a Payment amount and, while still in that
row, click to tab 1, your row is not yet saved so nothing has been changed. I
can see that if I then physically click into a Sales field on tab 1, it then
saves my payments and does a refresh. But just clicking on the tab 1 header
does not save the data.
I tried putting identical code in the "on leave section" of Payments,
but that does not evaluate if you click to another tab or even if you [esc] out
of the form.
I know I can do something like trap the payment going into the field, trap it
going out of the field, and if it's different than do a "saverow", but that
takes away the ability of the user to change their mind about the change.
What I also tried: I can do a "change tab eep" on tab 1 so that it puts focus
into a Sales field. That works cuz it forces a save. Only issue is that this
client worries about people making inadvertent changes so they don't want them
put "into" the data unless they click. So unless I add a "dummy" field into
the table.....
Any other ideas?
Karen