Hi all,
I am really getting into ORDA-style programming with v17 and loving it.
Here are my questions:
1) do table forms have any relevance in ORDA anymore? I don’t want to mix
‘classic’ 4D in new projects, and so it seems that I should use project forms
exclusively. What’s your take on that?
2) Recording Editing with related MANY displayed in a ListBox. ENTITY
SELECTION-STYLE, not classic
In a form, say, that displays an invoice, and the invoice detail is provided in
a ListBox (Collection source), I am concerned about the situation where a user
may delete lines from the Detail (ListBox) and then cancel the record edit (of
the Invoice). It seems that editing the records (entities) displayed in the
ListBox commits the changes as they take place.
Does one control this through Transaction control (i.e. so that changes can be
allowed, but not committed until OK’d)?
If so, then how does one do that under ORDA, when one is using entity
selections instead of ‘classic’?
Maybe you can give some pseudo-code on how one would do this under ORDA.
Would it be:
When an INVOICE is to be edited:
ds.Invoice.lock()
START TRANSACTION (necessitating that this occurs in its own process so as not
to interfere with other windows that might be in the process)
after user “ok’s” the record:
If ds.Invoice.touched()
VALIDATE TRANSACTION [does this save the INVOICE and DETAIL records
without having to do ds.Invoice.save() etc?]
else
CANCEL TRANSACTION
end if
if they CANCEL it:
CANCEL TRANSACTION
Thanks for your observations,
Chris
Innovative Solutions
**********************************************************************
4D Internet Users Group (4D iNUG)
Archive: http://lists.4d.com/archives.html
Options: https://lists.4d.com/mailman/options/4d_tech
Unsub: mailto:[email protected]
**********************************************************************