Last modified on 26 June 2024, at 11:23

MROCLS GROUPEDTASK

IC CLASSIFICATION.gif Grouped Task classification object
Name MROCLS_GROUPEDTASK
Inheritance MROCLS MRO TASK
Namespace MRO.Classification
ID {4130333A-93A2-4F35-AFBC-B4AB7AC7856E}
Purpose Classify tasks as grouped tasks
Version 3.7.1+

Sometimes, not all tasks of one work package have to be finished. More specifically, there might be a predefined condition where you only need to finish a certain number of tasks among a group of them. These are known in UBIKĀ® as Grouped Tasks.

The Grouped Task classification classifies an object as Grouped Task.

This Grouped Task classification is an Autonomous Classification where some of the required properties are autonomously added to the MetaDefinitions (ACM).

MetaProperties

Name Data type Comment
SIBLING_IDS Guid List of sibling Grouped Tasks. This property is autonomous. It must not be added to the Task - Metaclass. It is managed by the MRO Kernel.
NOT_NECESSARY Boolean Identifies a Grouped Task as Not Necessary as its siblings tasks are already finished. This Property is NOT autonomous. It is necessary to add it to the Task MetaClass.
GROUP_LIMIT Integer Defines the number of Grouped Tasks that must be finished until its siblings tasks are considered as "Not Necessary". This Property is NOT autonomous. It is necessary to add it to the Task MetaClass.

Interface and Custom Code

The MRO Grouped Task Classification necessitates knowledge about all the tasks in a group. From the point of view of one task, we can call the other tasks "siblings". These siblings are all other tasks that are in the same group as the current one.

As an engineer, you are free to choose how these siblings are evaluated, but we have to tell UBIK about the result. Therefore, the classification requires an implementation of the following method:

public IEnumerable<UBIK.MRO.IGroupedTask> Siblings();

It can be added in the respective MetaClass's custom code using UBIK.Studio's Code Editor.

See also