Pass enclosing context must be set to false when the objects of the data grid and the containing data view are related.
Scenario: A dataview of object "Contact" has a datagrid with the same object "Contact". This is the case because when creating a Contact it should be possible to add Colleagues to this Contact (and Colleagues are just other Contacts who share a Contact_Account relationship). On the datagrid we've added an invoke button that calls a microflow that sets the Account of the new colleague to that of the contact from which we are invoking the microflow (pass enclosing context = true) but the following error message is displayed: "'Pass enclosing context' must be set to false when the objects of the data grid and the containing data view are related." Even setting the context to "Private" or "Reset" doesn't help... why doesn't this work with two objects the same type while it does with objects of different types?
Because the client just sends two Contact objects to the server, the server does not know what objects needs to be put in what microflow parameter.
With two different object types the server can match the object type on the type of the parameter.
In future versions we will switch to using named parameters thereby solving this problem.
Johan den Haan
we are doing a lot of similar things at our current project. We've made quite complex wizards but the only way to create them was by using extra objects like 'processtep' or 'combination' that are used as root dataviews.
We set the necessary references to these 'in between' objectswith microflow and are thus able to create the mentioned combinations (when the user closes such a wizard we delete these objects to keep our database neat)