On Sun, Oct 21, 2018 at 12:41 PM Keisuke Miyako via 4D_Tech <
4d_tech@lists.4d.com> wrote:

> you will probably not like my answer, but here goes.
>
> for creating a shared collection from a 4D array,
> ARRAY TO COLLECTION has a special syntax that does just that.
> the trick is to pass a New shared collection to the command.
>
> http://doc.4d.com/4Dv17/4D/17/ARRAY-TO-COLLECTION.301-3730916.en.html
>
>
it would be nice if assignment operator honored shared property as well and
constructs like
collection:=selection.ID
would keep collection a shared one if it was before (and similar to
assignment of collection created with .copy() .)


>
> I believe that such feature is in development and will be available pretty
> soon.
>




> but on entity collections, I don't understand why that would be necessary.
>
> first, I disagree with the interprocess named selection analogy.
>
> the request is more like,
> "I want to make a query in process B change the current selection of
> process A, and vice versa".
> why would you want that?
>

I am using interprocess sets and named selections - not very often, but I
still do in all at least a bit more complex projects.


>
> yet,  the "Use" and "End use" locking system would do nothing to protect
> data integrity,
> because any other process can update or delete an entity outside of the
> entity selection.
> I don't see any value in such a tortured system.
>

The same can be said about interprocess named selections and sets.   While
yes, there is a question of consistency, people understand that well and I
do not remember any complains regarding this. Note that you do not have to
have different processes - you can delete entity belonging to selection
within the same process and run into the same situation.

>
> if the goal is to share entity selections between windows,
> then it would make more sense to run those windows in the same process.
>

Yes, this is true and I was thinking about it. However, I feel that this is
currently not very well documented and there are not many example databases
that would  help me understand how to properly implement multiple active
windows in the same process. Do you have some suggestions what to look at?
(Yes, I know about DIALOG (... ;*) syntax.)


> the scope of an entity selection is the process which has practical
> benefits.
> there must be a really strong argument to justify breaking that rule.
>


I do not fully understand what is the benefit 9or difference) of having, in
one process, two windows showing and manipulating the same entity
selection, or two selections cloned with .copy() command, and having two
windows in two processes displaying two synchronized selections.

--

Peter Bozek
**********************************************************************
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