Categorie: reference
Bijgewerkt: 2026-04-08
actionfield workflow actionfield1656
ActionField1656
Beschrijving: Link an existing (to be selected) LockoutTagoutRequest to a Permit/Job Custom: Nee
Propertiesbewerken
| Property | Type | Accessor |
|---|---|---|
| DomainObject | DomainObject | Root |
XMLbewerken
<Workflow Name="ActionField1656" Version="2025.07.28" WorkflowType="Standard" xmlns="urn:Ultimo.Framework.Workflow-mapping">
<Security EditLevel="10" ViewLevel="20" UserContentLevel="30" />
<Description>Link an existing (to be selected) LockoutTagoutRequest to a Permit/Job</Description>
<Properties>
<Property Name="DomainObject" Type="DomainObject" Accessor="Root" Direction="In" />
<Property Name="AdditionalSqlWhereClause" Type="String" Accessor="Internal" />
<Property Name="LockoutTagoutRequest" Type="LockoutTagoutRequest" Accessor="Internal" />
<Property Name="LockoutTagoutRequestIds" Type="QueryResult" Accessor="Internal" />
<Property Name="ObjectLockoutTagoutRequest" Type="ObjectLockoutTagoutRequest" Accessor="Internal" />
<Property Name="SqlWhereClause" Type="String" Accessor="Internal" />
</Properties>
<Execution>
<UserContent Name="Pre" />
<Choose Name="type of DomainObject">
<When Name="Permit" Condition="${DomainObject.EntityName} == Permit">
<Validation Name="ValidatePermitHasCorrectStatus" Condition="(${DomainObject.Status} & (PermitStatus.Created | PermitStatus.Requested)) > 0" MessageCode="3186">
<Parameter Name="DomainObject" Direction="In" Value="${DomainObject}" />
</Validation>
</When>
<When Name="Job" Condition="${DomainObject.EntityName} == Job">
<Validation Name="ValidateJobHasCorrectStatus" Condition="(${DomainObject.Status} & (JobStatus.Created | JobStatus.Approved)) > 0" MessageCode="3186">
<Parameter Name="DomainObject" Direction="In" Value="${DomainObject}" />
</Validation>
</When>
<Otherwise Name="not implemented">
<Stop Name="Stop" Mode="Abort" />
</Otherwise>
</Choose>
<Validation Name="ValidateLOTOApplicableIsSetOnDomainObject" Condition="${DomainObject.LockoutTagoutApplicable} == True" MessageCode="3185">
<Parameter Name="DomainObject" Direction="In" Value="${DomainObject}" />
</Validation>
<Transaction>
<Query Name="Query the Ids of all LockoutTagoutRequests already linked to this DomainObject" Type="ObjectLockoutTagoutRequest" OrderBy="LockoutTagoutRequest" OrderDirection="Ascending" OutputProperty="${LockoutTagoutRequestIds}">
<Filters>
<WhenFilter Condition="${DomainObject.EntityName} == Permit">
<PropertyFilter PropertyName="Permit" Operator="=" PropertyValue="${DomainObject}" />
</WhenFilter>
<WhenFilter Condition="${DomainObject.EntityName} == Job">
<PropertyFilter PropertyName="Job" Operator="=" PropertyValue="${DomainObject}" />
</WhenFilter>
</Filters>
<Properties>
<Property Name="LockoutTagoutRequest.Id" Alias="id" Type="GroupProperty" />
</Properties>
</Query>
<Assign Name="Build SQL WHERE clause" Property="${SqlWhereClause}" Value="(LtrRecStatus IN (1, 2, 4, 8, 16, 32))" Comment="Check on valid statuses" />
<When Name="When LockoutTagoutRequests found" Condition="${LockoutTagoutRequestIds.Count} != 0">
<Assign Name="Exclude LOTO requests already linked from dialog SelectDomainObject" Property="${AdditionalSqlWhereClause}" Value=" AND (LtrId NOT IN (#foreach(${LockoutTagoutRequestId} in ${LockoutTagoutRequestIds})#each'${LockoutTagoutRequestId.id}'#between,#end))" />
<Assign Name="Add additional SQL WHERE clause" Property="${SqlWhereClause}" Value="${SqlWhereClause} ${AdditionalSqlWhereClause}" />
</When>
</Transaction>
<SystemDialog Name="SelectDomainObject" DialogName="SelectDomainObject">
<Parameter Name="EntityName" Direction="In" Value="LockoutTagoutRequest" />
<Parameter Name="SelectionListConfiguration" Direction="In" Value="Default" />
<Parameter Name="SqlWhereClause" Direction="In" Value="${SqlWhereClause}" />
<Parameter Name="DomainObject" Direction="Out" OutputProperty="${LockoutTagoutRequest}" />
</SystemDialog>
<When Name="if user selected a LOTO request" Condition="${LockoutTagoutRequest} != Empty">
<Transaction>
<Insert Name="link them through this" ObjectType="ObjectLockoutTagoutRequest" OutputProperty="${ObjectLockoutTagoutRequest}">
<Parameter Name="LockoutTagoutRequest" Direction="In" Value="${LockoutTagoutRequest}" />
</Insert>
<Choose Name="type of DomainObject">
<When Name="Permit" Condition="${DomainObject.EntityName} == Permit">
<Assign Name="Link Permit to LockoutTagoutRequest" Property="${ObjectLockoutTagoutRequest.Permit}" Value="${DomainObject}" />
</When>
<When Name="Job" Condition="${DomainObject.EntityName} == Job">
<Assign Name="Link Job to LockoutTagoutRequest" Property="${ObjectLockoutTagoutRequest.Job}" Value="${DomainObject}" />
</When>
</Choose>
</Transaction>
</When>
<UserContent Name="Post" />
</Execution>
</Workflow>