Jump to: navigation, search

Difference between revisions of "MRO (Plugin)"


(Inspection Task)
(Interface Task)
 
(33 intermediate revisions by 6 users not shown)
Line 1: Line 1:
The MRO plugin provides a set of {{UBIK}} objects which allow to represent and document maintenance, repair and operations work on the mobile client. An respective implementation of this set of features is available on {{UBIK WinX}}.
+
The MRO plugin provides a set of {{UBIK}} objects for representing and documenting maintenance, repair and operations work. The MRO features are available in the supported Mobile and {{UBIK WinX}} clients.
 +
 
 +
This page is the main documentation for the MRO object model and its task types. Common client behaviour, such as status indicators, locking, and the general evaluation of sequential and grouped tasks, is documented in [[MRO Objects (Client)]].
 +
 
 +
{| class="wikitable"
 +
|-
 +
! Page !! Scope
 +
|-
 +
| '''MRO (Plugin)''' || MRO concepts, task types, task-specific behaviour, and relevant technical properties
 +
|-
 +
| [[MRO Objects (Client)]] || Common client presentation, status indicators, locking, and behaviour shared by multiple MRO objects
 +
|}
  
 
== Basic Features ==
 
== Basic Features ==
Objects classified as MRO objects in general provide a technical and organisational status as well as the overall work progress based on the underlying data branch.
+
 
 +
Objects classified as MRO objects generally provide a technical and organisational status as well as an overall work progress based on their underlying data branch.
  
 
=== Technical Status ===
 
=== Technical Status ===
The technical status indicates whether all tasks on this or on subsequent objects in the underlying data branch have been finished. Also other information is included in this status, e.g. if a inventory object is reported as damaged, its parent objects will receive a certaub status indicating that a problem was reported in the child items.
+
 
 +
For detailed information, see [[MRO Objects (Client)#Technical Status|Technical Status]].
  
 
=== Organisational Status ===
 
=== Organisational Status ===
The organisational status indicates the amount of confirmed work done in the data branch. It can include a work package already confirmed or tasks that are already locked by their owning workpackage.
+
 
 +
For detailed information, see [[MRO Objects (Client)#Organisational Status|Organisational Status]].
  
 
=== Work Progress ===
 
=== Work Progress ===
The work progress is calculated from the current work progress and from the progress cumulated from subsequent objects in the underlying data branch. This indicator shows the amount of work done in the data branch.
+
 
 +
For detailed information, see [[MRO Objects (Client)#Work Progress|Work Progress]].
  
 
== MRO Objects ==
 
== MRO Objects ==
A set of specific objects can be used to provide the required structure for MRO:
+
 
 +
MRO uses Task Owners, Work Packages, Tasks, and Procedure Workpackages to represent maintenance workflows.
  
 
=== Task Owner ===
 
=== Task Owner ===
A [[MROCLS_MRO_TASKOWNER|Task Owner]] is an object having a substructure of jobs to be done. It can have a tree of other task owners or work packages underneath that will update the status of the task owner. This status consists of technical, organisational and progress information. With a task owner a user can get an overview of all the work to be done in the underlying job structure.
 
  
=== Work Package===
+
A [[MROCLS_MRO_TASKOWNER|Task Owner]] is an object with an underlying structure of work to be performed. It can contain other Task Owners or Work Packages. Their technical status, organisational status, and work progress are accumulated and reported to the Task Owner.
A [[MROCLS_MRO_WORKPACKAGE|Work Package]] is a collection of objects to collect and summarize other task owning objects, workpackages, or tasks. A simple workpackage has a certain amount of tasks that have to be finished in order to confirm the workpackage as done. More complex workpackages can also own other underlying workpackages that have to be confirmed.  Confirming a workpackage itself requires a progress of 100% of all related tasks, as well as 100% confirmed sub work packages.
+
 
 +
=== Work Package ===
 +
 
 +
A [[MROCLS_MRO_WORKPACKAGE|Work Package]] collects and summarizes other Work Packages or Tasks. A Work Package can be confirmed when all associated Tasks have reached the required progress and all subordinate Work Packages have been confirmed.
 +
 
 +
For Work Package presentation and confirmation in the clients, see [[MRO Objects (Client)#Work Package|Work Package]].
 +
 
 +
[[Category:Android|MRO (Plugin)]]
 +
[[Category:Client|MRO (Plugin)]]
 +
[[Category:Mobile|MRO (Plugin)]]
 +
[[Category:Module|MRO (Plugin)]]
 +
[[Category:WinX|MRO (Plugin)]]
  
 
=== Task ===
 
=== Task ===
A [[MROCLS_MRO_TASK|Task]] is an object reporting a certain progress to the owning workpackage. There are several specialized types of task objects. All kinds of tasks have a property called '''VALUE''' in common. It is very important, that this property is able to be validated. Therefore, a MetaAttribute (providing a validation timestamp by default) has to be attached on the used MetaProperty.
 
  
{{Attention|The MetaProperty ''VALUE'' has to use [[Attributes]] in order to be validated. Otherwise, the calculation of work progress will not be possible.}}
+
A [[MROCLS_MRO_TASK|Task]] reports work progress to its owning Work Package. The available task types provide different input, validation, or automatic workflow behaviour.
  
==== Measurement Task ====
+
MRO task values must be validated for work progress to be calculated. A MetaAttribute providing a validation timestamp must therefore be attached to the relevant MetaProperty.
A [[MROCLS_MRO_MEASUREMENT_TASK|Measurement Task]] inherits from [[MROCLS_MRO_TASK|Task]] and documents a measured value (e.g. read from a pressure gauge). Once a value has been entered, the task is finished. Alternatively, the task can also be closed by the option ''Not Applicable'' to document the situation of not being able to fullfill the measurement (e.g. the pressure gauge is broken).  
+
  
==== Progress Task ====
+
{{Attention|A task value property has to use [[Attributes]] so that its value can be validated. Otherwise, work progress cannot be calculated.}}
[[MROCLS_MRO_PROGRESS_TASK| Progress Task]] inherits from [[MROCLS_MRO_MEASUREMENT_TASK|Task]] and reports a certain progress while fullfilling a task. The progress will influence the overall progress of the owning workpackage. If the task cannot be fullfilled, it can also be finished with the option ''Not Applicable''.
+
  
==== Check Task ====
+
All user-editable MRO task types can be set to ''Not Applicable''. In the clients, a completed user-editable task can be reset by selecting ''Not Applicable'' twice. General client behaviour is documented in [[MRO Objects (Client)#Task|Task]].
[[MROCLS_MRO_CHECK_TASK|Check Task]] inherits from [[MROCLS_MRO_TASK|Task]] and is finished by reporting ''Done'' or ''Not Applicable''. This is intended for a simple To-Do task that is either done or not.
+
  
[[Category:Module|MRO (Plugin)]]
+
=== Procedure Workpackage ===
  
==== Inspection Task ====
+
Technical object name: '''PROCEDURE_WORKPACKAGE'''
A [[MROCLS_MRO_INSPECTION_TASK|Inspection Task]] inherits from [[MROCLS_MRO_TASK|Task]] and is finished, when the user reports with a positive or negative answer or ''Not Applicable'' (e.g. reporting a yes/no answer for existing equipment).
+
  
 +
A [[MROCLS_PROCEDURE|Procedure Workpackage]] is a specialized Work Package for structured workflows. Its structure is defined in JSON using a workflow editor and can contain Tasks as well as subordinate Procedure Workpackages. Depending on its state, the corresponding objects are created or updated.
 +
 +
Procedure Workpackages can use [[MRO Objects (Client)#Sequential Task|sequential execution]], [[MRO Objects (Client)#Grouped Task|grouped Tasks]], [[#Switch Start Task|branching]], [[#Calculation Task|calculations]], and references to linked data. Their workflows support online and offline use. Steps that require data exchange wait until connectivity is available.
 +
 +
'''Properties'''
 +
 +
{| class="wikitable" width="70%"
 +
|-
 +
! Name !! Data type !! Description
 +
|-
 +
| PROCEDURE_STATUS || {{Integer}} || Current state: Draft = 10, ReadyToUse = 20, Published = 30, Open = 40, Executing = 50, Completed = 60, Approved = 70, Rejected = 80
 +
|-
 +
| JSON || {{String}} || JSON representation of the Procedure Workpackage
 +
|-
 +
| ISTEMPLATE || {{Boolean}} || Indicates whether the Procedure Workpackage is a template
 +
|}
 +
 +
== MRO Task Types ==
 +
 +
The following task types are available in MRO. The technical object names are included to make the task types discoverable through the wiki search.
 +
 +
{| class="wikitable sortable"
 +
|-
 +
! Task type !! Technical object name !! Purpose
 +
|-
 +
| [[#Blinding Task|Blinding Task]] || BLINDING_TASK || Documents a blinding or deblinding operation
 +
|-
 +
| [[#Calculation Task|Calculation Task]] || CALCULATION_TASK || Evaluates an expression and writes its result to a target property
 +
|-
 +
| [[#Check Task|Check Task]] || CHECK_TASK || Confirms a Boolean task using a checkbox
 +
|-
 +
| [[#Commissioning Task|Commissioning Task]] || COMMISSIONING_TASK || Represents a task in an MRO commissioning workflow
 +
|-
 +
| [[#Inspection Task|Inspection Task]] || INSPECTION_TASK || Records a Boolean inspection result with configurable labels
 +
|-
 +
| [[#Interface Task|Interface Task]] || INTERFACE_TASK || Waits for completion information from another software system
 +
|-
 +
| [[#Joint Task|Joint Task]] || JOINT_TASK || Documents the state of a joint location
 +
|-
 +
| [[#Measurement Task|Measurement Task]] || MROCLS_MRO_MEASUREMENT_TASK || Records a measured Double value
 +
|-
 +
| [[#Numeric Task|Numeric Task]] || NUMERIC_TASK || Records a numeric value and evaluates it against a configured range
 +
|-
 +
| [[#Pick List Task|Pick List Task]] || PICKLIST_TASK || Selects one integer value from an instance-specific Active List
 +
|-
 +
| [[#Picture Task|Picture Task]] || PICTURE_TASK || Requires at least one child document containing a valid file
 +
|-
 +
| [[#Progress Task|Progress Task]] || PROGRESS_TASK || Reports progress between 0% and 100%
 +
|-
 +
| [[#Signature Task|Signature Task]] || SIGNATURE_TASK || Captures a handwritten signature
 +
|-
 +
| [[#Supervisor Check Task|Supervisor Check Task]] || SUPERVISOR_CHECK_TASK || Applies the four-eyes principle to a [[#Check Task|Check Task]]
 +
|-
 +
| [[#Switch End Task|Switch End Task]] || SWITCH_END_TASK || Rejoins the branches of a Procedure workflow
 +
|-
 +
| [[#Switch Start Task|Switch Start Task]] || SWITCH_START_TASK || Selects a Procedure branch by evaluating a Boolean expression
 +
|-
 +
| [[#Text Task|Text Task]] || TEXT_TASK || Records free-form text
 +
|}
 +
 +
{{Hint|For the available Procedure variants and their workflow execution, see [[#Procedure Task Variants and Workflow Execution|Procedure Tasks]].}}
 +
 +
=== Blinding Task ===
 +
 +
Technical object name: '''BLINDING_TASK'''
 +
 +
Classification: [[MROCLS_BLINDINGTASK]]
 +
 +
A Blinding Task documents either a blinding or deblinding operation at a linked blinding location. The configured operation type determines the state that must be reported to complete the task.
 +
 +
'''Relevant properties'''
 +
 +
{| class="wikitable" width="70%"
 +
|-
 +
! Name !! Description
 +
|-
 +
| BLINDING_TYPE || Configured operation type: Blinding or DeBlinding
 +
|-
 +
| LK_BLINDING_LOCATION || Link to the associated blinding location
 +
|-
 +
| LK_PREVIOUS_TASK || Link to the preceding Blinding Task
 +
|-
 +
| LOCKED || Prevents the task from being edited
 +
|-
 +
| VALUE || Reported blinding state
 +
|}
 +
 +
The task is complete only when '''VALUE''' matches the configured '''BLINDING_TYPE'''.
 +
 +
=== Calculation Task ===
 +
 +
Technical object name: '''CALCULATION_TASK'''
 +
 +
Classification: [[MROCLS_CALCULATION_TASK]]
 +
 +
A Calculation Task automatically evaluates a predefined expression on the client and writes the result to a configured property on its owner. No user input is required.
 +
 +
'''Properties'''
 +
 +
{| class="wikitable" width="70%"
 +
|-
 +
! Name !! Data type !! Description
 +
|-
 +
| EXPRESSION || {{String}} || Expression evaluated by the client
 +
|-
 +
| VALUE || {{Integer}} || Evaluation state: Undefined = 0, Pending = 10, Finished = 20, Error = 30
 +
|-
 +
| TARGET_PROPERTY_NAME || {{String}} || Name of the target property on the owner
 +
|-
 +
| TARGET_PROPERTY_TYPE || {{Integer}} || Target type: Undefined = 0, Boolean = 1, Integer = 3, Double = 4
 +
|}
 +
 +
The task is automatically finished after successful evaluation. The clients display an indicator for a successful evaluation or an evaluation error. A Pending state does not receive an additional indicator.
 +
 +
See also [[#Procedure Task Variants and Workflow Execution|Procedure Task Variants and Workflow Execution]].
 +
 +
=== Check Task ===
 +
 +
Technical object name: '''CHECK_TASK'''
 +
 +
Classification: [[MROCLS_MRO_CHECK_TASK]]
 +
 +
A Check Task is a simple Boolean task represented by a checkbox. Clicking the checkbox sets its value and completes the task. It can alternatively be completed using ''Not Applicable''.
 +
 +
'''Properties'''
 +
 +
{| class="wikitable" width="70%"
 +
|-
 +
! Name !! Data type !! Description
 +
|-
 +
| VALUE || {{Boolean}} || Task value and completion
 +
|}
 +
 +
<gallery widths=497px heights=69px>
 +
File:Check Task finished UWP.png|Check Task (WinX)
 +
File:Check Task android.jpg|Not Applicable Check Task (Mobile)
 +
</gallery>
 +
 +
=== Commissioning Task ===
 +
 +
Technical object name: '''COMMISSIONING_TASK'''
 +
 +
Classification: [[MROCLS_COMMISSIONINGCHECK]]
 +
 +
A Commissioning Task is a specialized task type used in MRO commissioning workflows.
 +
 +
'''Relevant property'''
 +
 +
{| class="wikitable" width="70%"
 +
|-
 +
! Name !! Data type !! Description
 +
|-
 +
| NOTAPPLICABLE || {{Boolean}} || Not Applicable state
 +
|}
 +
 +
=== Inspection Task ===
 +
 +
Technical object name: '''INSPECTION_TASK'''
 +
 +
Classification: [[MROCLS_MRO_INSPECTION_TASK]]
 +
 +
An Inspection Task captures a Boolean inspection result. The client presents a positive and a negative option as well as ''Not Applicable''. Selecting an option completes the task.
 +
 +
The labels for the positive and negative outcomes can be configured. Selecting the negative outcome displays the configured false label.
 +
 +
'''Properties'''
 +
 +
{| class="wikitable" width="70%"
 +
|-
 +
! Name !! Data type !! Description
 +
|-
 +
| VALUE || {{Boolean}} || Selected inspection result
 +
|-
 +
| LABEL_TRUE || {{String}} || Label for the positive outcome
 +
|-
 +
| LABEL_FALSE || {{String}} || Label for the negative outcome
 +
|}
 +
 +
<gallery widths=497px heights=69px>
 +
File:Finished Inspection Task UWP.png|Finished Inspection Task (WinX)
 +
File:Inspection task android.jpg|Finished Inspection Task (Mobile)
 +
</gallery>
 +
 +
=== Interface Task ===
 +
 +
Technical object name: '''INTERFACE_TASK'''
 +
 +
Classification: [[MROCLS_MRO_CHECK_TASK]]
 +
 +
An Interface Task cannot be completed directly on the client and typically depends on an external software system to provide its completion value. This is common for long-running asynchronous processes, such as waiting for analysis results from a laboratory
 +
The task is complete when its Boolean '''VALUE''' becomes true. If the client is offline, the task waits until connectivity and synchronization are available again.
 +
 +
'''Properties'''
 +
 +
{| class="wikitable" width="70%"
 +
|-
 +
! Name !! Data type !! Description
 +
|-
 +
| VALUE || {{Boolean}} || Task completion supplied by the external software system
 +
|}
 +
 +
[[Category:Android|MRO (Plugin)]]
 +
[[Category:Client|MRO (Plugin)]]
 +
[[Category:Mobile|MRO (Plugin)]]
 
[[Category:Module|MRO (Plugin)]]
 
[[Category:Module|MRO (Plugin)]]
 +
[[Category:WinX|MRO (Plugin)]]
 +
 +
=== Joint Task ===
 +
 +
Technical object name: '''JOINT_TASK'''
 +
 +
Classification: [[MROCLS_JOINTTASK]]
 +
 +
A Joint Task documents the state of a linked joint location. The user selects one of the available Joint States.
 +
 +
'''Relevant properties'''
 +
 +
{| class="wikitable" width="70%"
 +
|-
 +
! Name !! Description
 +
|-
 +
| LK_JOINT_LOCATION || Link to the associated joint location
 +
|-
 +
| VALUE || Selected Joint State
 +
|}
 +
 +
The available states are:
 +
 +
* Closed
 +
* Disconnected
 +
* Open
 +
* Planned
 +
* Reconnected
 +
* Torqued
 +
* Undefined
 +
* Verified
 +
 +
The Joint Task is complete when its state is '''Planned''' or '''Closed'''.
 +
 +
=== Measurement Task ===
 +
 +
Technical classification name: '''MROCLS_MRO_MEASUREMENT_TASK'''
 +
 +
Classification: [[MROCLS_MRO_MEASUREMENT_TASK]]
 +
 +
A Measurement Task records a measured Double value, for example a value read from a pressure gauge. Selecting the displayed value opens an editor. If no value has been entered, the editor initially displays an empty value. Entering a value or selecting ''Not Applicable'' completes the task.
 +
 +
An optional secondary value indicator can display a previously recorded value. Its behaviour has to be configured separately.
 +
 +
'''Properties'''
 +
 +
{| class="wikitable" width="70%"
 +
|-
 +
! Name !! Data type !! Description
 +
|-
 +
| VALUE || {{Double}} || Currently recorded measurement
 +
|-
 +
| PREVIOUS_VALUE || {{Double}} || Previously recorded measurement
 +
|}
 +
 +
<gallery widths=497px heights=69px>
 +
File:Measurment Task Empty UWP.png|Measurement Task without a recorded value (WinX)
 +
File:Measurment Task Not Empty UWP.png|Measurement Task with a recorded value (WinX)
 +
File:Measurment Task Empty Android.jpg|Measurement Task without a recorded value (Mobile)
 +
</gallery>
 +
 +
=== Numeric Task {{Version/MobileSince|5.1}}{{Version/WinXSince|5.1}} ===
 +
 +
Technical object name: '''NUMERIC_TASK'''
 +
 +
Classification: [[MROCLS_MRO_NUMERIC_TASK]]
 +
 +
A Numeric Task records a Double value, for example a value read from a temperature sensor. Entering a value or selecting ''Not Applicable'' completes the task.
 +
 +
The value is compared against a configured acceptable range that cannot be edited on the client. A value outside the range produces visual feedback and sets the [[MRO Objects (Client)#Technical Status|technical status]] to indicate an issue. An invalid configured range, such as a minimum greater than the maximum, also produces an issue when a value is entered.
 +
 +
A value unit can be configured for an individual task. When present, it overrides the standard unit configured on the [[MetaProperty#Unit_Item|MetaProperty]].
 +
 +
'''Properties'''
 +
 +
{| class="wikitable" width="70%"
 +
|-
 +
! Name !! Data type !! Description
 +
|-
 +
| VALUE || {{Double}} || Recorded numeric value
 +
|-
 +
| VALUE_UNIT || {{String}} || Instance-specific value unit
 +
|}
 +
 +
=== Pick List Task {{Version/MobileSince|5.1}}{{Version/WinXSince|5.1}} ===
 +
 +
Technical object name: '''PICKLIST_TASK'''
 +
 +
Classification: [[MROCLS_PICK_LIST_TASK]]
 +
 +
A Pick List Task allows the user to select one value from an [[UBIK Active Lists|Active List]] configured on the task instance. It behaves similarly to a standard Integer Task with a Selective List, but the selectable values are supplied by the Active List rather than being defined globally.
 +
 +
Every list item has an Integer value. Selecting an item or selecting ''Not Applicable'' completes the task.
 +
 +
'''Properties'''
 +
 +
{| class="wikitable" width="70%"
 +
|-
 +
! Name !! Data type !! Description
 +
|-
 +
| VALUE || {{Integer}} || Value of the selected Active List item
 +
|}
 +
 +
=== Picture Task {{Version/MobileSince|5.1}}{{Version/WinXSince|5.1}} ===
 +
 +
Technical object name: '''PICTURE_TASK'''
 +
 +
Classification: [[MROCLS_PICTURE_TASK]]
 +
 +
A Picture Task is a Boolean task that can only be finished when it has at least one child document containing a valid file. Multiple child documents can be attached. Although pictures are the most common files, the child document can contain another file type.
 +
 +
The clients display a file or photo button next to the task checkbox. The task cannot be completed through the checkbox until the file requirement is satisfied. Selecting ''Not Applicable'' is always possible and bypasses the child-document requirement.
 +
 +
When the user attempts to finish the task while online, the client may first synchronize the task's child objects and download the files of its child documents. During synchronization, the checkbox is replaced by a wait indicator.
 +
 +
* If no child document or no local file is available, the task remains unfinished and the user is informed.
 +
* If at least one child document with a valid local file is available, the task is finished and the file or photo button is disabled.
 +
 +
Child-count information can be configured but is not required. WinX can display the child documents in an expander. This is not shown by default on Mobile due to the available screen size, but it can be customized using [[Object_hierarchy_in_XAML:_NextLevel,_ParentLevel,_LinkedLevel#Show_NextLevel_Children.2FDocuments|Show NextLevel Children/Documents]].
 +
 +
'''Properties'''
 +
 +
{| class="wikitable" width="70%"
 +
|-
 +
! Name !! Data type !! Description
 +
|-
 +
| VALUE || {{Boolean}} || Task completion
 +
|}
 +
 +
=== Progress Task ===
 +
 +
Technical object name: '''PROGRESS_TASK'''
 +
 +
Classification: [[MROCLS_MRO_PROGRESS_TASK]]
 +
 +
A Progress Task reports progress between 0% and 100%. The reported value contributes to the progress of the owning Work Package. Values below 100% represent partial progress; the task is finished only when the reported progress reaches 100%. It can alternatively be completed using ''Not Applicable''.
 +
 +
'''Properties'''
 +
 +
{| class="wikitable" width="70%"
 +
|-
 +
! Name !! Data type !! Description
 +
|-
 +
| VALUE || {{Double}} || Currently reported progress
 +
|-
 +
| PREVIOUS_VALUE || {{Double}} || Previously reported progress
 +
|}
 +
 +
An [[MRO_PROGRESS_TASK_EDITOR|alternative editor]] is available for Progress Tasks.{{Version/WinXSince|2.5.4}}
 +
 +
<gallery widths=497px heights=69px>
 +
File:Progress Task UWP.png|Progress Task with reported progress (WinX)
 +
File:Progress Task Android.jpg|Progress Task with current and previous progress (Mobile)
 +
</gallery>
 +
 +
=== Signature Task {{Version/MobileSince|5.1}}{{Version/WinXSince|5.1}} ===
 +
 +
Technical object name: '''SIGNATURE_TASK'''
 +
 +
Classification: [[MROCLS_SIGNATURE_TASK]]
 +
 +
A Signature Task is completed by capturing a handwritten signature. Selecting the signature editor opens an in-app dialog in which the user can sign. Confirming the signature saves it and automatically completes the task.
 +
 +
When signing while online, the server resolves and displays the signee and generates the validation timestamp. When signing offline, the signee is resolved and displayed once the client is online again. If the complete signee or validation timestamp cannot be displayed in the editor field, selecting the field opens a popup with the complete information.
 +
 +
'''Properties'''
 +
 +
{| class="wikitable" width="70%"
 +
|-
 +
! Name !! Data type !! Description
 +
|-
 +
| VALUE || Signature || Captured signature
 +
|}
 +
 +
 +
 +
=== Supervisor Check Task {{Version/XamarinSince|4.8}} ===
 +
 +
Technical object name: '''SUPERVISOR_CHECK_TASK'''
 +
 +
Classification: [[MROCLS_MRO_SUPERVISOR_TASK]]
 +
 +
A Supervisor Check Task applies the four-eyes principle to a Boolean [[#Check Task|Check Task]] on one device. The worker hands the device to a supervisor. The supervisor scans an NFC tag and enters the supervisor PIN. After successful authentication, the checkbox is enabled and must still be selected to finish the task.
 +
 +
Selecting ''Not Applicable'' does not require supervisor authentication.
 +
 +
Successful supervisor authentication removes only the supervisor-related lock. The task can remain locked for another reason, such as sequential dependencies or user rights. If an incorrect PIN is entered three times, authentication is cancelled and the NFC tag has to be scanned again. A setting controls [[RFID tags#Choose which information to use from a tag|which tag information is used]].
 +
 +
'''Properties'''
 +
 +
{| class="wikitable" width="70%"
 +
|-
 +
! Name !! Data type !! Description
 +
|-
 +
| VALUE || {{Boolean}} || [[#Check Task|Check Task]] completion
 +
|-
 +
| SUPERVISOR || {{Guid}} || Authenticated supervisor
 +
|-
 +
| PERMISSION || {{String}} || Required supervisor permission
 +
|}
 +
 +
<gallery widths=300px heights=300px>
 +
File:UI_Xamarin_Supervisor_Task_Before_Verification.jpg|Supervisor Check Task before verification
 +
File:UI_Xamarin_Supervisor_Task_Enter_PIN.jpg|Supervisor PIN entry
 +
File:UI_Xamarin_Supervisor_Task_After_Verification.jpg|Supervisor Check Task after verification
 +
</gallery>
 +
 +
=== Switch End Task ===
 +
 +
Technical object name: '''SWITCH_END_TASK'''
 +
 +
Classification: [[MROCLS_SWITCH_END_TASK]]
 +
 +
A Switch End Task marks the point at which the two branches created by a [[#Switch Start Task|Switch Start Task]] merge again. It is linked to exactly one corresponding [[#Switch Start Task|Switch Start Task]]. It is not shown to the user and completes automatically after the selected branch has finished, allowing the common Procedure workflow to continue.
 +
 +
'''Properties'''
 +
 +
{| class="wikitable" width="70%"
 +
|-
 +
! Name !! Data type !! Description
 +
|-
 +
| VALUE || {{Boolean}} || Task completion
 +
|-
 +
| LK_SWITCH_START_TASK || {{Guid}} || Link to the corresponding [[#Switch Start Task|Switch Start Task]]
 +
|}
 +
 +
See also [[#Procedure Task Variants and Workflow Execution|Procedure Task Variants and Workflow Execution]].
 +
 +
=== Switch Start Task ===
 +
 +
Technical object name: '''SWITCH_START_TASK'''
 +
 +
Classification: [[MROCLS_SWITCH_START_TASK]]
 +
 +
A Switch Start Task is a sequential workflow-control task used in a Procedure Workpackage. It automatically evaluates a Boolean expression on the client and selects either the true or false branch. Each branch represents a different path of Tasks and must lead to a corresponding [[#Switch End Task|Switch End Task]].
 +
 +
'''Properties'''
 +
 +
{| class="wikitable" width="70%"
 +
|-
 +
! Name !! Data type !! Description
 +
|-
 +
| EXPRESSION || {{String}} || Expression evaluated by the client
 +
|-
 +
| VALUE || {{Integer}} || Evaluation state: Undefined = 0, Pending = 10, Finished = 20, Error = 30
 +
|-
 +
| BRANCH_TRUE || {{Guid}} || Link to the Task or Task Owner that starts the true branch
 +
|-
 +
| BRANCH_FALSE || {{Guid}} || Link to the Task or Task Owner that starts the false branch
 +
|-
 +
| DISPLAYSTRING_TRUE || {{String}} || Display string for a true result
 +
|-
 +
| DISPLAYSTRING_FALSE || {{String}} || Display string for a false result
 +
|-
 +
| EVALUATION_RESULT || {{Boolean}} || Result of the evaluated expression
 +
|}
 +
 +
After evaluation, only the selected branch is executed. The other branch remains hidden and its Procedure Tasks are set to ''Not Applicable''.
 +
 +
See also [[#Procedure Task Variants and Workflow Execution|Procedure Task Variants and Workflow Execution]].
 +
 +
=== Text Task ===
 +
 +
Technical object name: '''TEXT_TASK'''
 +
 +
Classification: [[MROCLS_TEXT_TASK]]
 +
 +
A Text Task allows the user to enter free-form text. Entering a value or selecting ''Not Applicable'' completes the task.
 +
 +
'''Properties'''
 +
 +
{| class="wikitable" width="70%"
 +
|-
 +
! Name !! Data type !! Description
 +
|-
 +
| VALUE || {{String}} || Entered text
 +
|}
 +
 +
== Supervisor Base Type {{Version/XamarinSince|4.8}} ==
 +
 +
Technical object name: '''SUPERVISOR_TASK'''
 +
 +
Classification: [[MROCLS_MRO_SUPERVISOR_TASK]]
 +
 +
Supervisor Task is a base type that provides supervisor authentication behaviour. It is not used as a standalone user task. The concrete task type using this behaviour is [[#Supervisor Check Task|Supervisor Check Task]].
 +
 +
== Procedure Task Variants and Workflow Execution {{Version/MobileSince|5.1}}{{Version/WinXSince|5.1}} ==
 +
 +
{{Hint|For the complete list of base task types and their task-specific behaviour, see [[#MRO Task Types|MRO Task Types]].}}
 +
 +
Procedure variants are specialized versions of task types for use within Procedure Workpackages. They retain the behaviour of their corresponding task type and additionally implement the [[MROCLS_SEQUENTIALTASK|Sequential Task]] and [[MROCLS_GROUPEDTASK|Grouped Task]] classifications.
 +
 +
Procedure variants are available for:
 +
 +
* [[#Calculation Task|Calculation Task]]
 +
* [[#Check Task|Check Task]]
 +
* [[#Inspection Task|Inspection Task]]
 +
* [[#Interface Task|Interface Task]]
 +
* [[#Numeric Task|Numeric Task]]
 +
* [[#Pick List Task|Pick List Task]]
 +
* [[#Picture Task|Picture Task]]
 +
* [[#Signature Task|Signature Task]]
 +
* [[#Supervisor Check Task|Supervisor Check Task]]
 +
* [[#Text Task|Text Task]]
 +
 +
[[#Switch Start Task|Switch Start Tasks]], [[#Switch End Task|Switch End Tasks]], and [[#Calculation Task|Calculation Tasks]] provide automatic workflow-control behaviour in a Procedure Workpackage.
 +
 +
For automatic [[#Calculation Task|Calculation Tasks]] and [[#Switch Start Task|Switch Start Tasks]], the clients display an evaluation indicator:
 +
 +
* '''Finished:''' The Task was automatically evaluated successfully.
 +
* '''Error:''' The Task was evaluated but resulted in an error.
 +
* '''Pending:''' The Task has not yet been evaluated. No additional indicator is displayed for this state.
 +
 +
When a predecessor [[#Switch Start Task|Switch Start Task]] has not yet finished, its follow-up Procedure Tasks are hidden because the relevant branch is not yet known. After evaluation, the selected branch becomes visible. The other branch remains hidden, is not executed, and its Procedure Tasks are set to ''Not Applicable''.
 +
 +
For example, several predecessor [[#Numeric Task|Numeric Tasks]] can record temperatures from different parts of an equipment. A subsequent [[#Calculation Task|Calculation Task]] can calculate their average. A [[#Switch Start Task|Switch Start Task]] can then select a branch based on whether the average exceeds a configured temperature. One branch can contain a Task for activating a cooling mechanism, while the other branch can lead directly to the [[#Switch End Task|Switch End Task]] or contain further [[#Switch Start Task|Switch Tasks]].
 +
 +
Procedure Tasks are intended to execute automatically when their predecessors are finished. However, the completion of the predecessor has to be triggered by a user. If a predecessor becomes finished only because of a server update, the follow-up Procedure workflow is not triggered. This prevents a workflow from executing in the name of users who did not initiate or observe the completion.
 +
 +
The general online and offline evaluation rules for sequential and grouped Tasks are documented in [[MRO Objects (Client)#Sequential Task|Sequential Task]] and [[MRO Objects (Client)#Grouped Task|Grouped Task]].
 +
 +
== Supporting File Documents ==
 +
 +
=== Procedure JSON File Document ===
 +
 +
Technical object name: '''FILEDOCUMENT_MRO_JSON'''
 +
 +
This File Document stores the JSON definition of a [[#Procedure Workpackage|Procedure Workpackage]].
 +
 +
{| class="wikitable" width="70%"
 +
|-
 +
! Name !! Data type !! Description
 +
|-
 +
| LK_PROCEDURE_WORKPACKAGE || {{Guid}} || Link to the associated [[#Procedure Workpackage|Procedure Workpackage]]
 +
|}
 +
 +
=== Picture Task File Document ===
 +
 +
Technical object name: '''FILEDOCUMENT_MRO_PICTURE_TASK'''
 +
 +
This is a dedicated File Document linked to a [[#Picture Task|Picture Task]]. A [[#Picture Task|Picture Task]] can also use another child-document type, provided that the child document contains a valid file.
 +
 +
{| class="wikitable" width="70%"
 +
|-
 +
! Name !! Data type !! Description
 +
|-
 +
| LK_PICTURE_TASK || {{Guid}} || Link to the associated [[#Picture Task|Picture Task]]
 +
|}
  
 
== See also ==
 
== See also ==
* [[MROCLS_MRO_TASKOWNER#Task Owner]] (Classification)
+
 
* [[MROCLS_MRO_WORKPACKAGE#Work Package]] (Classification)
+
* [[MRO Objects (Client)]]
* [[MROCLS_MRO_TASK#Task]] (Classification)
+
* [[MROCLS_MRO_TASKOWNER]] (Classification)
* [[MROCLS_MRO_MEASUREMENT_TASK#Measurement Task]] (Classification)
+
* [[MROCLS_MRO_WORKPACKAGE]] (Classification)
* [[MROCLS_MRO_PROGRESS_TASK# Progress Task]] (Classification)
+
* [[MROCLS_MRO_TASK]] (Classification)
* [[MROCLS_MRO_CHECK_TASK#Check Task]] (Classification)
+
* [[MROCLS_MRO_PROGRESS_TASK]] (Classification)
* [[MROCLS_MRO_INSPECTION_TASK#Inspection Task]] (Classification)
+
* [[MROCLS_MRO_MEASUREMENT_TASK]] (Classification)
* [[MRO_Objects_(UBIK_WinX)]]
+
* [[MROCLS_MRO_CHECK_TASK]] (Classification)
 +
* [[MROCLS_MRO_INSPECTION_TASK]] (Classification)
 +
* [[MROCLS_SEQUENTIALTASK]] (Classification)
 +
* [[MROCLS_GROUPEDTASK]] (Classification)
 +
* [[MROCLS_PROCEDURE]] (Classification)
 +
* [[MROCLS_SWITCH_START_TASK]] (Classification)
 +
* [[MROCLS_SWITCH_END_TASK]] (Classification)
 +
* [[MROCLS_CALCULATION_TASK]] (Classification)
 +
* [[MROCLS_PICK_LIST_TASK]] (Classification)
 +
* [[MROCLS_PICTURE_TASK]] (Classification)
 +
* [[MROCLS_BLINDINGTASK]] (Classification)
 +
* [[MROCLS_COMMISSIONINGCHECK]] (Classification)
 +
* [[MROCLS_JOINTTASK]] (Classification)
 +
* [[MROCLS_SIGNATURE_TASK]] (Classification)
 +
* [[MROCLS_TEXT_TASK]] (Classification)
  
 
[[Category:Module|MRO (Plugin)]]
 
[[Category:Module|MRO (Plugin)]]
 +
[[Category:Android|MRO (Plugin)]]
 +
[[Category:Mobile|MRO (Plugin)]]
 +
[[Category:Client|MRO (Plugin)]]
 +
[[Category:WinX|MRO (Plugin)]]

Latest revision as of 13:57, 18 August 2026

The MRO plugin provides a set of UBIK® objects for representing and documenting maintenance, repair and operations work. The MRO features are available in the supported Mobile and UBIK® WinX clients.

This page is the main documentation for the MRO object model and its task types. Common client behaviour, such as status indicators, locking, and the general evaluation of sequential and grouped tasks, is documented in MRO Objects (Client).

Page Scope
MRO (Plugin) MRO concepts, task types, task-specific behaviour, and relevant technical properties
MRO Objects (Client) Common client presentation, status indicators, locking, and behaviour shared by multiple MRO objects

Basic Features

Objects classified as MRO objects generally provide a technical and organisational status as well as an overall work progress based on their underlying data branch.

Technical Status

For detailed information, see Technical Status.

Organisational Status

For detailed information, see Organisational Status.

Work Progress

For detailed information, see Work Progress.

MRO Objects

MRO uses Task Owners, Work Packages, Tasks, and Procedure Workpackages to represent maintenance workflows.

Task Owner

A Task Owner is an object with an underlying structure of work to be performed. It can contain other Task Owners or Work Packages. Their technical status, organisational status, and work progress are accumulated and reported to the Task Owner.

Work Package

A Work Package collects and summarizes other Work Packages or Tasks. A Work Package can be confirmed when all associated Tasks have reached the required progress and all subordinate Work Packages have been confirmed.

For Work Package presentation and confirmation in the clients, see Work Package.

Task

A Task reports work progress to its owning Work Package. The available task types provide different input, validation, or automatic workflow behaviour.

MRO task values must be validated for work progress to be calculated. A MetaAttribute providing a validation timestamp must therefore be attached to the relevant MetaProperty.

IC Attention.pngA task value property has to use Attributes so that its value can be validated. Otherwise, work progress cannot be calculated.

All user-editable MRO task types can be set to Not Applicable. In the clients, a completed user-editable task can be reset by selecting Not Applicable twice. General client behaviour is documented in Task.

Procedure Workpackage

Technical object name: PROCEDURE_WORKPACKAGE

A Procedure Workpackage is a specialized Work Package for structured workflows. Its structure is defined in JSON using a workflow editor and can contain Tasks as well as subordinate Procedure Workpackages. Depending on its state, the corresponding objects are created or updated.

Procedure Workpackages can use sequential execution, grouped Tasks, branching, calculations, and references to linked data. Their workflows support online and offline use. Steps that require data exchange wait until connectivity is available.

Properties

Name Data type Description
PROCEDURE_STATUS Integer Current state: Draft = 10, ReadyToUse = 20, Published = 30, Open = 40, Executing = 50, Completed = 60, Approved = 70, Rejected = 80
JSON String JSON representation of the Procedure Workpackage
ISTEMPLATE Boolean Indicates whether the Procedure Workpackage is a template

MRO Task Types

The following task types are available in MRO. The technical object names are included to make the task types discoverable through the wiki search.

Task type Technical object name Purpose
Blinding Task BLINDING_TASK Documents a blinding or deblinding operation
Calculation Task CALCULATION_TASK Evaluates an expression and writes its result to a target property
Check Task CHECK_TASK Confirms a Boolean task using a checkbox
Commissioning Task COMMISSIONING_TASK Represents a task in an MRO commissioning workflow
Inspection Task INSPECTION_TASK Records a Boolean inspection result with configurable labels
Interface Task INTERFACE_TASK Waits for completion information from another software system
Joint Task JOINT_TASK Documents the state of a joint location
Measurement Task MROCLS_MRO_MEASUREMENT_TASK Records a measured Double value
Numeric Task NUMERIC_TASK Records a numeric value and evaluates it against a configured range
Pick List Task PICKLIST_TASK Selects one integer value from an instance-specific Active List
Picture Task PICTURE_TASK Requires at least one child document containing a valid file
Progress Task PROGRESS_TASK Reports progress between 0% and 100%
Signature Task SIGNATURE_TASK Captures a handwritten signature
Supervisor Check Task SUPERVISOR_CHECK_TASK Applies the four-eyes principle to a Check Task
Switch End Task SWITCH_END_TASK Rejoins the branches of a Procedure workflow
Switch Start Task SWITCH_START_TASK Selects a Procedure branch by evaluating a Boolean expression
Text Task TEXT_TASK Records free-form text
IC Hint square.pngFor the available Procedure variants and their workflow execution, see Procedure Tasks.

Blinding Task

Technical object name: BLINDING_TASK

Classification: MROCLS BLINDINGTASK

A Blinding Task documents either a blinding or deblinding operation at a linked blinding location. The configured operation type determines the state that must be reported to complete the task.

Relevant properties

Name Description
BLINDING_TYPE Configured operation type: Blinding or DeBlinding
LK_BLINDING_LOCATION Link to the associated blinding location
LK_PREVIOUS_TASK Link to the preceding Blinding Task
LOCKED Prevents the task from being edited
VALUE Reported blinding state

The task is complete only when VALUE matches the configured BLINDING_TYPE.

Calculation Task

Technical object name: CALCULATION_TASK

Classification: MROCLS CALCULATION TASK

A Calculation Task automatically evaluates a predefined expression on the client and writes the result to a configured property on its owner. No user input is required.

Properties

Name Data type Description
EXPRESSION String Expression evaluated by the client
VALUE Integer Evaluation state: Undefined = 0, Pending = 10, Finished = 20, Error = 30
TARGET_PROPERTY_NAME String Name of the target property on the owner
TARGET_PROPERTY_TYPE Integer Target type: Undefined = 0, Boolean = 1, Integer = 3, Double = 4

The task is automatically finished after successful evaluation. The clients display an indicator for a successful evaluation or an evaluation error. A Pending state does not receive an additional indicator.

See also Procedure Task Variants and Workflow Execution.

Check Task

Technical object name: CHECK_TASK

Classification: MROCLS MRO CHECK TASK

A Check Task is a simple Boolean task represented by a checkbox. Clicking the checkbox sets its value and completes the task. It can alternatively be completed using Not Applicable.

Properties

Name Data type Description
VALUE Boolean Task value and completion

Commissioning Task

Technical object name: COMMISSIONING_TASK

Classification: MROCLS COMMISSIONINGCHECK

A Commissioning Task is a specialized task type used in MRO commissioning workflows.

Relevant property

Name Data type Description
NOTAPPLICABLE Boolean Not Applicable state

Inspection Task

Technical object name: INSPECTION_TASK

Classification: MROCLS MRO INSPECTION TASK

An Inspection Task captures a Boolean inspection result. The client presents a positive and a negative option as well as Not Applicable. Selecting an option completes the task.

The labels for the positive and negative outcomes can be configured. Selecting the negative outcome displays the configured false label.

Properties

Name Data type Description
VALUE Boolean Selected inspection result
LABEL_TRUE String Label for the positive outcome
LABEL_FALSE String Label for the negative outcome

Interface Task

Technical object name: INTERFACE_TASK

Classification: MROCLS MRO CHECK TASK

An Interface Task cannot be completed directly on the client and typically depends on an external software system to provide its completion value. This is common for long-running asynchronous processes, such as waiting for analysis results from a laboratory The task is complete when its Boolean VALUE becomes true. If the client is offline, the task waits until connectivity and synchronization are available again.

Properties

Name Data type Description
VALUE Boolean Task completion supplied by the external software system

Joint Task

Technical object name: JOINT_TASK

Classification: MROCLS JOINTTASK

A Joint Task documents the state of a linked joint location. The user selects one of the available Joint States.

Relevant properties

Name Description
LK_JOINT_LOCATION Link to the associated joint location
VALUE Selected Joint State

The available states are:

  • Closed
  • Disconnected
  • Open
  • Planned
  • Reconnected
  • Torqued
  • Undefined
  • Verified

The Joint Task is complete when its state is Planned or Closed.

Measurement Task

Technical classification name: MROCLS_MRO_MEASUREMENT_TASK

Classification: MROCLS MRO MEASUREMENT TASK

A Measurement Task records a measured Double value, for example a value read from a pressure gauge. Selecting the displayed value opens an editor. If no value has been entered, the editor initially displays an empty value. Entering a value or selecting Not Applicable completes the task.

An optional secondary value indicator can display a previously recorded value. Its behaviour has to be configured separately.

Properties

Name Data type Description
VALUE Double Currently recorded measurement
PREVIOUS_VALUE Double Previously recorded measurement

Numeric Task

Technical object name: NUMERIC_TASK

Classification: MROCLS MRO NUMERIC TASK

A Numeric Task records a Double value, for example a value read from a temperature sensor. Entering a value or selecting Not Applicable completes the task.

The value is compared against a configured acceptable range that cannot be edited on the client. A value outside the range produces visual feedback and sets the technical status to indicate an issue. An invalid configured range, such as a minimum greater than the maximum, also produces an issue when a value is entered.

A value unit can be configured for an individual task. When present, it overrides the standard unit configured on the MetaProperty.

Properties

Name Data type Description
VALUE Double Recorded numeric value
VALUE_UNIT String Instance-specific value unit

Pick List Task

Technical object name: PICKLIST_TASK

Classification: MROCLS PICK LIST TASK

A Pick List Task allows the user to select one value from an Active List configured on the task instance. It behaves similarly to a standard Integer Task with a Selective List, but the selectable values are supplied by the Active List rather than being defined globally.

Every list item has an Integer value. Selecting an item or selecting Not Applicable completes the task.

Properties

Name Data type Description
VALUE Integer Value of the selected Active List item

Picture Task

Technical object name: PICTURE_TASK

Classification: MROCLS PICTURE TASK

A Picture Task is a Boolean task that can only be finished when it has at least one child document containing a valid file. Multiple child documents can be attached. Although pictures are the most common files, the child document can contain another file type.

The clients display a file or photo button next to the task checkbox. The task cannot be completed through the checkbox until the file requirement is satisfied. Selecting Not Applicable is always possible and bypasses the child-document requirement.

When the user attempts to finish the task while online, the client may first synchronize the task's child objects and download the files of its child documents. During synchronization, the checkbox is replaced by a wait indicator.

  • If no child document or no local file is available, the task remains unfinished and the user is informed.
  • If at least one child document with a valid local file is available, the task is finished and the file or photo button is disabled.

Child-count information can be configured but is not required. WinX can display the child documents in an expander. This is not shown by default on Mobile due to the available screen size, but it can be customized using Show NextLevel Children/Documents.

Properties

Name Data type Description
VALUE Boolean Task completion

Progress Task

Technical object name: PROGRESS_TASK

Classification: MROCLS MRO PROGRESS TASK

A Progress Task reports progress between 0% and 100%. The reported value contributes to the progress of the owning Work Package. Values below 100% represent partial progress; the task is finished only when the reported progress reaches 100%. It can alternatively be completed using Not Applicable.

Properties

Name Data type Description
VALUE Double Currently reported progress
PREVIOUS_VALUE Double Previously reported progress

An alternative editor is available for Progress Tasks.

Signature Task

Technical object name: SIGNATURE_TASK

Classification: MROCLS SIGNATURE TASK

A Signature Task is completed by capturing a handwritten signature. Selecting the signature editor opens an in-app dialog in which the user can sign. Confirming the signature saves it and automatically completes the task.

When signing while online, the server resolves and displays the signee and generates the validation timestamp. When signing offline, the signee is resolved and displayed once the client is online again. If the complete signee or validation timestamp cannot be displayed in the editor field, selecting the field opens a popup with the complete information.

Properties

Name Data type Description
VALUE Signature Captured signature


Supervisor Check Task

Technical object name: SUPERVISOR_CHECK_TASK

Classification: MROCLS MRO SUPERVISOR TASK

A Supervisor Check Task applies the four-eyes principle to a Boolean Check Task on one device. The worker hands the device to a supervisor. The supervisor scans an NFC tag and enters the supervisor PIN. After successful authentication, the checkbox is enabled and must still be selected to finish the task.

Selecting Not Applicable does not require supervisor authentication.

Successful supervisor authentication removes only the supervisor-related lock. The task can remain locked for another reason, such as sequential dependencies or user rights. If an incorrect PIN is entered three times, authentication is cancelled and the NFC tag has to be scanned again. A setting controls which tag information is used.

Properties

Name Data type Description
VALUE Boolean Check Task completion
SUPERVISOR Guid Authenticated supervisor
PERMISSION String Required supervisor permission

Switch End Task

Technical object name: SWITCH_END_TASK

Classification: MROCLS SWITCH END TASK

A Switch End Task marks the point at which the two branches created by a Switch Start Task merge again. It is linked to exactly one corresponding Switch Start Task. It is not shown to the user and completes automatically after the selected branch has finished, allowing the common Procedure workflow to continue.

Properties

Name Data type Description
VALUE Boolean Task completion
LK_SWITCH_START_TASK Guid Link to the corresponding Switch Start Task

See also Procedure Task Variants and Workflow Execution.

Switch Start Task

Technical object name: SWITCH_START_TASK

Classification: MROCLS SWITCH START TASK

A Switch Start Task is a sequential workflow-control task used in a Procedure Workpackage. It automatically evaluates a Boolean expression on the client and selects either the true or false branch. Each branch represents a different path of Tasks and must lead to a corresponding Switch End Task.

Properties

Name Data type Description
EXPRESSION String Expression evaluated by the client
VALUE Integer Evaluation state: Undefined = 0, Pending = 10, Finished = 20, Error = 30
BRANCH_TRUE Guid Link to the Task or Task Owner that starts the true branch
BRANCH_FALSE Guid Link to the Task or Task Owner that starts the false branch
DISPLAYSTRING_TRUE String Display string for a true result
DISPLAYSTRING_FALSE String Display string for a false result
EVALUATION_RESULT Boolean Result of the evaluated expression

After evaluation, only the selected branch is executed. The other branch remains hidden and its Procedure Tasks are set to Not Applicable.

See also Procedure Task Variants and Workflow Execution.

Text Task

Technical object name: TEXT_TASK

Classification: MROCLS TEXT TASK

A Text Task allows the user to enter free-form text. Entering a value or selecting Not Applicable completes the task.

Properties

Name Data type Description
VALUE String Entered text

Supervisor Base Type

Technical object name: SUPERVISOR_TASK

Classification: MROCLS MRO SUPERVISOR TASK

Supervisor Task is a base type that provides supervisor authentication behaviour. It is not used as a standalone user task. The concrete task type using this behaviour is Supervisor Check Task.

Procedure Task Variants and Workflow Execution

IC Hint square.pngFor the complete list of base task types and their task-specific behaviour, see MRO Task Types.

Procedure variants are specialized versions of task types for use within Procedure Workpackages. They retain the behaviour of their corresponding task type and additionally implement the Sequential Task and Grouped Task classifications.

Procedure variants are available for:

Switch Start Tasks, Switch End Tasks, and Calculation Tasks provide automatic workflow-control behaviour in a Procedure Workpackage.

For automatic Calculation Tasks and Switch Start Tasks, the clients display an evaluation indicator:

  • Finished: The Task was automatically evaluated successfully.
  • Error: The Task was evaluated but resulted in an error.
  • Pending: The Task has not yet been evaluated. No additional indicator is displayed for this state.

When a predecessor Switch Start Task has not yet finished, its follow-up Procedure Tasks are hidden because the relevant branch is not yet known. After evaluation, the selected branch becomes visible. The other branch remains hidden, is not executed, and its Procedure Tasks are set to Not Applicable.

For example, several predecessor Numeric Tasks can record temperatures from different parts of an equipment. A subsequent Calculation Task can calculate their average. A Switch Start Task can then select a branch based on whether the average exceeds a configured temperature. One branch can contain a Task for activating a cooling mechanism, while the other branch can lead directly to the Switch End Task or contain further Switch Tasks.

Procedure Tasks are intended to execute automatically when their predecessors are finished. However, the completion of the predecessor has to be triggered by a user. If a predecessor becomes finished only because of a server update, the follow-up Procedure workflow is not triggered. This prevents a workflow from executing in the name of users who did not initiate or observe the completion.

The general online and offline evaluation rules for sequential and grouped Tasks are documented in Sequential Task and Grouped Task.

Supporting File Documents

Procedure JSON File Document

Technical object name: FILEDOCUMENT_MRO_JSON

This File Document stores the JSON definition of a Procedure Workpackage.

Name Data type Description
LK_PROCEDURE_WORKPACKAGE Guid Link to the associated Procedure Workpackage

Picture Task File Document

Technical object name: FILEDOCUMENT_MRO_PICTURE_TASK

This is a dedicated File Document linked to a Picture Task. A Picture Task can also use another child-document type, provided that the child document contains a valid file.

Name Data type Description
LK_PICTURE_TASK Guid Link to the associated Picture Task

See also