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

ActionField114

Beschrijving: Set default MeasurementPoint for Equipment. Custom: Nee

Propertiesbewerken

Property Type Accessor
NewDefaultMeasurementPoint EquipmentMeasurementPoint Root

XMLbewerken

<Workflow Name="ActionField114" Version="2025.07.28" WorkflowType="Standard" xmlns="urn:Ultimo.Framework.Workflow-mapping">
	<Security EditLevel="10" ViewLevel="20" UserContentLevel="30" />
	<Description>Set default MeasurementPoint for Equipment.</Description>
	<Properties>
		<Property	Name="NewDefaultMeasurementPoint"	Type="EquipmentMeasurementPoint"		Accessor="Root"		Direction="In" />

		<Property	Name="ContinueAnswer"				Type="RequestResult"					Accessor="Internal" />
		<Property	Name="LastValue"					Type="EquipmentMeasurementPointValue"	Accessor="Internal" />
		<Property	Name="OldDefaultMeasurementPoint"	Type="EquipmentMeasurementPoint"		Accessor="Internal" />
		<Property	Name="PmWorkOrderCount"				Type="Int64"							Accessor="Internal" />
	</Properties>
	<Execution>
		<UserContent Name="Pre" />

		<Transaction>
			<Command Name="Get default MeasurementPoint" CommandName="Equipment_GetDefaultMeasurementPoint">
				<Parameter	Name="AddDefaultMeasurementPointIfMissing"	Direction="In"		Value="False" />
				<Parameter	Name="Equipment"							Direction="In"		Value="${NewDefaultMeasurementPoint.Id.Equipment}" />
				<Parameter	Name="EquipmentMeasurementPoint"			Direction="Out"															OutputProperty="${OldDefaultMeasurementPoint}" />
			</Command>
		</Transaction>

		<When Name="Has Old Default" Condition="${OldDefaultMeasurementPoint} != Empty">
			<Transaction>
				<GetCount Name="Has PmWorkOrders" Type="PmWorkOrder" OutputProperty="${PmWorkOrderCount}">
					<Filters>
						<PropertyFilter	PropertyName="EquipmentMeasurementPoint"	Operator="="		PropertyValue="${OldDefaultMeasurementPoint}" />
					</Filters>
				</GetCount>
			</Transaction>

			<When Name="When Has PmWorkOrders" Condition="${PmWorkOrderCount} &gt; 0">
				<Question Name="Ask Continue" Type="YesNo" MessageCode="0702" OutputProperty="${ContinueAnswer}">
					<Parameter	Name="NewEquipmentMeasurementPoint"	Direction="In"		Value="${NewDefaultMeasurementPoint}" />
					<Parameter	Name="OldEquipmentMeasurementPoint"	Direction="In"		Value="${OldDefaultMeasurementPoint}" />
				</Question>

				<When Name="Check Answer" Condition="${ContinueAnswer} == No">
					<Stop Name="Stop" Mode="Abort" />
				</When>
			</When>
		</When>

		<Transaction>
			<ForEach Name="Measurement point" In="${NewDefaultMeasurementPoint.Id.Equipment.EquipmentMeasurementPoints}" As="MeasurementPoint">
				<Assign Name="Set default to false" Property="${MeasurementPoint.IsDefault}" Value="False" />
			</ForEach>

			<Assign Name="Set default to true on new measurementpoint" Property="${NewDefaultMeasurementPoint.IsDefault}" Value="True" />

			<Command Name="Get Last Value" CommandName="EquipmentMeasurementPoint_GetLastValue">
				<Parameter	Name="EquipmentMeasurementPoint"	Direction="In"		Value="${NewDefaultMeasurementPoint}" />
				<Parameter	Name="LastValue"					Direction="Out"												OutputProperty="${LastValue}" />
			</Command>

			<Choose Name="Check Last Value">
				<When Name="Has Last Value" Condition="${LastValue} != Empty">
					<Assign Name="Set Equipment.IndicatorValue" Property="${NewDefaultMeasurementPoint.Id.Equipment.IndicatorValue}" Value="${LastValue.Value}" />
					<Assign Name="Set Equipment.IndicatorValueLastRecordingDate" Property="${NewDefaultMeasurementPoint.Id.Equipment.IndicatorValueLastRecordingDate}" Value="${LastValue.Date}" />
				</When>

				<Otherwise Name="No Value">
					<Assign Name="Set Equipment.IndicatorValue" Property="${NewDefaultMeasurementPoint.Id.Equipment.IndicatorValue}" Value="0" />
					<Assign Name="Set Equipment.IndicatorValueLastRecordingDate" Property="${NewDefaultMeasurementPoint.Id.Equipment.IndicatorValueLastRecordingDate}" Value="Empty" />
				</Otherwise>
			</Choose>
		</Transaction>

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