Categorie: reference Bijgewerkt: 2026-04-08 actionfield workflow actionfield157

ActionField157

Beschrijving: Change status of Equipment to Active (status must be Created or ToDelete). Custom: Nee

Propertiesbewerken

Property Type Accessor
Equipment Equipment Root

XMLbewerken

<Workflow Name="ActionField157" Version="2025.07.28" WorkflowType="Standard" xmlns="urn:Ultimo.Framework.Workflow-mapping">
	<Security EditLevel="10" ViewLevel="20" UserContentLevel="30" />
	<Description>Change status of Equipment to Active (status must be Created or ToDelete).</Description>
	<Properties>
		<Property	Name="Equipment"			Type="Equipment"		Accessor="Root"		Direction="In" />

		<Property	Name="AskToContinueResult"	Type="RequestResult"	Accessor="Internal" />
		<Property	Name="PmJobsEqmCount"		Type="Int64"			Accessor="Internal"						Default="0" />
		<Property	Name="PmWorkOrdersEqmCount"	Type="Int64"			Accessor="Internal"						Default="0" />
	</Properties>
	<Execution>
		<UserContent Name="Pre" />

		<Validation Name="Equipment is not active" Condition="${Equipment.Status} != EquipmentStatus.Active" MessageCode="0220">
			<Parameter	Name="Equipment"	Direction="In"		Value="${Equipment}" />
		</Validation>
		<Validation Name="Equipment is Created or ToDelete" Condition="${Equipment.Status} == EquipmentStatus.Created || ${Equipment.Status} == EquipmentStatus.ToDelete" MessageCode="0221">
			<Parameter	Name="Equipment"	Direction="In"		Value="${Equipment}" />
		</Validation>

		<When Name="ToDelete" Condition="${Equipment.Status} == EquipmentStatus.ToDelete">
			<Transaction>
				<GetCount Name="Get pmworkorder linked with equipment" Type="PmWorkOrder" OutputProperty="${PmWorkOrdersEqmCount}">
					<Filters>
						<CombinedFilter FilterOperator="And">
							<PropertyFilter	PropertyName="Status"		Operator="!="		PropertyValue="PmWorkOrderStatus.Approved" />
							<PropertyFilter	PropertyName="Equipment"	Operator="="		PropertyValue="${Equipment}" />
						</CombinedFilter>
					</Filters>
				</GetCount>

				<GetCount Name="Get equipments with linked pmjobs" Type="PmJob" OutputProperty="${PmJobsEqmCount}">
					<Filters>
						<CombinedFilter FilterOperator="And">
							<PropertyFilter	PropertyName="Status"		Operator="!="		PropertyValue="PmJobStatus.Approved" />
							<PropertyFilter	PropertyName="Equipment"	Operator="="		PropertyValue="${Equipment}" />
						</CombinedFilter>
					</Filters>
				</GetCount>
			</Transaction>

			<When Name="PMW or PMJob found" Condition="${PmWorkOrdersEqmCount} &gt; 0 || ${PmJobsEqmCount} &gt; 0">
				<Question Name="AskToContinue" Type="YesNo" MessageCode="3382" Default="Yes" OutputProperty="${AskToContinueResult}">
					<Parameter	Name="Equipment"	Direction="In"		Value="${Equipment}" />
				</Question>
			</When>
		</When>

		<When Name="no PMW or PMJob found" Condition="${PmWorkOrdersEqmCount} == 0 &amp;&amp; ${PmJobsEqmCount} == 0">
			<Question Name="AskToContinue" Type="YesNo" MessageCode="0222" Default="Yes" OutputProperty="${AskToContinueResult}">
				<Parameter	Name="Equipment"	Direction="In"		Value="${Equipment}" />
			</Question>
		</When>

		<When Name="IfContinue" Condition="${AskToContinueResult} == Yes">
			<Transaction>
				<WorkflowCall Name="Equipment_Move" WorkflowName="Equipment_Move">
					<Parameter	Name="Equipment"			Direction="In"		Value="${Equipment}" />
					<Parameter	Name="Method"				Direction="In"		Value="2"						Comment="Standard" />
					<Parameter	Name="NewEquipmentStatus"	Direction="In"		Value="EquipmentStatus.Active" />
				</WorkflowCall>
			</Transaction>

			<Message Name="MessageEquipmentActivated" MessageCode="0223">
				<Parameter	Name="Equipment"	Direction="In"		Value="${Equipment}" />
			</Message>
		</When>

		<UserContent Name="Post" />
	</Execution>
</Workflow>