as others have correctly pointed out,
each sub-object or sub-collection you add to a shared object must themselves be 
shared objects or shared collection.

regarding object notation:

if you do something like

$a:=New shared object
$b:=New shared object("a";$a)

then there is no need to

$b.a.prop:="whatever"

you can simply

$a:="whatever"

and the result will be the same (you save 4D from searching the object notation 
path)

another subtle catch is related to grouping and singleness.

for example, the following would not work:

Use (Storage)

$a:=New shared object("a";New shared object("b";"whatever"))

Storage.a:=New shared object("a";$a)

End use

because by creating a cascaded shared object in the first line, you create a 
new group,
which can not transfer to a different group (Storage, in this case)

you have to procedurally group objects so that they don't transfer ownership.

Use (Storage)

Storage.a:=New shared object("a";New shared object("b";"whatever"))

$a:=Storage.a
$b:=$a.a

End use





**********************************************************************
4D Internet Users Group (4D iNUG)
Archive:  http://lists.4d.com/archives.html
Options: https://lists.4d.com/mailman/options/4d_tech
Unsub:  mailto:4d_tech-unsubscr...@lists.4d.com
**********************************************************************

Reply via email to