Changes

MRO Objects (Client)

18 bytes removed, 13:30, 12 December 2022
==== Selective Task {{Version/WinXSince|4.2}}{{Version/XamarinSince|4.2}} ====
Sometimes, not all tasks have to be finished. More specifically, there might be tasks that have a predefined condition where you only need to finish a certain number of tasks among a group of them. These tasks are known in {{UBIK}} as [[MROCLS_SELECTIVETASK|selective tasks]].
The idea is, a group of tasks can be defined as siblings to each other and they also share the same server configured threshold. When the number of finished tasks among that group exceeds the threshold, the entire group is considered as no longer necessary. When reflected in the overall status of the task owner(s), these tasks would appear as if they are finished.
{{Hint|Technically speaking, the finished status is completely independent from the not necessary status on a task. A selective task which is no longer necessary can be both finished or not yet finished. In other words, users don't have to finish a not necessary selective task, but they still can.}}
{{Hint|The precise status calculation for selective tasks and their task owners requires the knowledge of all siblings tasks. Imagine the rule indicates that 2 out of 3 tasks must be finished but the client only knows 1 in total and the others are only available at the server at that time. This makes it impossible to draw conclusions whether the task(s) should be necessary or not. Under such circumstances, the local status calculation is done as if these are just regular tasks.}}
{{Hint|Like with the other MRO objects, the client always choose chooses the best available statuses for selective tasks to present to the users. More specifically, it uses the statuses calculated by the server when the client is not offline and there are no uncommitted local changes on the involved objects. Otherwise, it uses the locally statuses calculated ones locally to the best of its knowledge.}}
A task can also be a selective and a sequential one at the same time. In such a case, the selective nature of the sibling tasks will affect the way the task sequence completes.
[[Category:Android|MRO Objects (UBIK WinX)]]
[[Category:WinX|MRO Objects (UBIK WinX)]]
[[Category:Client|MRO Objects (Client)]]
[[Category:WinX|MRO Objects (UBIK WinX)]]
[[Category:Xamarin|MRO Objects (Client)]]