Categorie: reference
Bijgewerkt: 2026-04-08
actionfield workflow actionfield1866
ActionField1866
Beschrijving: Sets the Criticality based on CriticalityScore for this DomainObject. Custom: Nee
Propertiesbewerken
| Property | Type | Accessor |
|---|---|---|
| DomainObject | DomainObject | Root |
| RiskContext | Context | Optional |
XMLbewerken
<Workflow Name="ActionField1866" Version="2025.07.28" WorkflowType="Standard" xmlns="urn:Ultimo.Framework.Workflow-mapping">
<Security EditLevel="10" ViewLevel="20" UserContentLevel="30" />
<Description>Sets the Criticality based on CriticalityScore for this DomainObject.</Description>
<Properties>
<Property Name="DomainObject" Type="DomainObject" Accessor="Root" Direction="In" />
<Property Name="RiskContext" Type="Context" Accessor="Optional" Direction="In" Default="RiskClassContext.AssetCriticality" Comment="Only search in RiskClasses with this context" />
<Property Name="Max" Type="Decimal" Accessor="Internal" />
<Property Name="Min" Type="Decimal" Accessor="Internal" />
<Property Name="RiskClass" Type="RiskClass" Accessor="Internal" />
</Properties>
<Execution>
<UserContent Name="Pre" />
<When Name="Equipment or Process Function" Condition="${DomainObject.EntityName} != Equipment && ${DomainObject.EntityName} != ProcessFunction">
<Stop Name="Stop" Mode="EndAll" />
</When>
<Choose Name="CriticalityScore is NULL/zero or has meaningful value?">
<When Name="CriticalityScore is NULL/zero" Condition="${DomainObject.CriticalityScore} == Empty || ${DomainObject.CriticalityScore} == 0">
<Transaction>
<Assign Name="Clear RiskClass from DomainObject" Property="${DomainObject.Criticality}" Value="Empty" />
</Transaction>
</When>
<Otherwise Name="CriticalityScore has meaningful value so try to obtain RiskClass">
<WorkflowCall Name="RiskClass_GetRiskClassForScore" WorkflowName="RiskClass_GetRiskClassForScore">
<Parameter Name="RiskContext" Direction="In" Value="${RiskContext}" />
<Parameter Name="RiskScore" Direction="In" Value="${DomainObject.CriticalityScore}" />
<Parameter Name="RiskClass" Direction="Out" OutputProperty="${RiskClass}" />
</WorkflowCall>
<Choose Name="Check if RiskClass is returned (e.g. CriticalityScore is within valid ranges)">
<When Name="When a RiskClass is returned" Condition="${RiskClass} != Empty">
<Transaction>
<Assign Name="Assign new RiskClass to DomainObject" Property="${DomainObject.Criticality}" Value="${RiskClass}" />
</Transaction>
</When>
<Otherwise Name="Otherwise no RiskClass is returned">
<WorkflowCall Name="RiskClass_GetMinAndMaxForRiskClassContext" WorkflowName="RiskClass_GetMinAndMaxForRiskClassContext">
<Parameter Name="RiskContext" Direction="In" Value="${RiskContext}" />
<Parameter Name="Max" Direction="Out" OutputProperty="${Max}" />
<Parameter Name="Min" Direction="Out" OutputProperty="${Min}" />
</WorkflowCall>
<Message Name="MessageRiskScoreOutOfRange" MessageCode="2029">
<Parameter Name="Max" Direction="In" Value="=#formatnumber(${Max}, 2)" />
<Parameter Name="Min" Direction="In" Value="=#formatnumber(${Min}, 2)" />
<Parameter Name="RiskContext" Direction="In" Value="${RiskContext}" />
</Message>
<Transaction>
<Assign Name="Clear CriticalityScore" Property="${DomainObject.CriticalityScore}" Value="0" Comment="We cannot set the original value because it has been cleared before this WF is called, so we will set it to 0" />
<Assign Name="Clear RiskClass" Property="${DomainObject.Criticality}" Value="Empty" Comment="we cannot reset CriticalityScore/RiskClass to their old values" />
</Transaction>
</Otherwise>
</Choose>
</Otherwise>
</Choose>
<UserContent Name="Post" />
</Execution>
</Workflow>