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

ActionField1162

Beschrijving: Validate Vendor on Job can still be changed because of planned Employees. Custom: Nee

Propertiesbewerken

Property Type Accessor
Job Job Root

XMLbewerken

<Workflow Name="ActionField1162" Version="2025.07.28" WorkflowType="Standard" xmlns="urn:Ultimo.Framework.Workflow-mapping">
	<Security EditLevel="10" ViewLevel="20" UserContentLevel="30" />
	<Description>Validate Vendor on Job can still be changed because of planned Employees.</Description>
	<Properties>
		<Property	Name="Job"				Type="Job"						Accessor="Root"		Direction="In" />

		<Property	Name="ChangeAllowed"	Type="Boolean"					Accessor="Internal"						Default="True" />
		<Property	Name="JobScheduleParts"	Type="List[JobSchedulePart]"	Accessor="Internal" />
	</Properties>
	<Execution>
		<UserContent Name="Pre" />

		<When Name="StopRelated" Condition="${Job.StopRelated} == True">
			<When Name="Vendor Filled" Condition="${Job.Vendor} != Empty">
				<Transaction>
					<Comment><![CDATA[ Only JobScheduleParts with Vendor are relevant, use the join for this and for performance]]></Comment>

					<GetList Name="JobScheduleParts" Type="JobSchedulePart" OutputProperty="${JobScheduleParts}" OrderBy="Id" OrderDirection="Ascending" Top="1">
						<Joins>
							<Join	Name="Vendor"	Alias="vendor"	Type="InnerJoin" />
						</Joins>
						<Filters>
							<PropertyFilter	PropertyName="vendor.Id"	Operator="!="		PropertyValue="${Job.Vendor}" />
							<PropertyFilter	PropertyName="Job"			Operator="="		PropertyValue="${Job}" />
						</Filters>
					</GetList>

					<When Name="Planned Vendors" Condition="${JobScheduleParts} != Empty &amp;&amp; ${JobScheduleParts.Count} &gt; 0">
						<Assign Name="Change not allowed" Property="${ChangeAllowed}" Value="False" />
						<Assign Name="Reset" Property="${Job.Vendor}" Value="${JobScheduleParts[0].Vendor}" />
					</When>
				</Transaction>
			</When>
		</When>

		<UserContent Name="Post" />

		<When Name="Message change not allowed" Condition="${ChangeAllowed} == False">
			<Message Name="ChangeNotAllowed" MessageCode="2385">
				<Parameter	Name="Vendor"	Direction="In"		Value="${JobScheduleParts[0].Vendor}" />
			</Message>
		</When>
	</Execution>
</Workflow>