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

ActionField1600

Beschrijving: Sets the job's planning fields when ReportForeignKeyEmployee is changed (because Department can be changed via copy rules). Custom: Nee

Propertiesbewerken

Property Type Accessor
Job Job Root

XMLbewerken

<Workflow Name="ActionField1600" Version="2025.07.28" WorkflowType="Standard" xmlns="urn:Ultimo.Framework.Workflow-mapping">
	<Security EditLevel="10" ViewLevel="20" UserContentLevel="30" />
	<Description>Sets the job's planning fields when ReportForeignKeyEmployee is changed (because Department can be changed via copy rules).</Description>
	<Properties>
		<Property	Name="Job"								Type="Job"				Accessor="Root"		Direction="In" />

		<Property	Name="ContextsThatAlwaysFollowSLA"		Type="List[Context]"	Accessor="Internal"						Default="JobContext.ITIncident, JobContext.ServiceRequest" />
		<Property	Name="OriginalJobScheduledStartDate"	Type="DateTime?"		Accessor="Internal"																					Comment="To detect if the ScheduledStartDate has been changed." />
		<Property	Name="OriginalJobSLATargetDate"			Type="DateTime?"		Accessor="Internal"																					Comment="To detect if the SLA TargetDate has been changed." />
		<Property	Name="OriginalJobTargetDate"			Type="DateTime?"		Accessor="Internal"																					Comment="To detect if the TargetDate has been changed." />
	</Properties>
	<Execution>
		<UserContent Name="Pre" />

		<Comment><![CDATA[ Explicitly assigning values from the job guaranties these wf properties will keep their value in case they are changed on the job by the BL followed by displaying a user message.]]></Comment>

		<Assign Name="OriginalJobScheduledStartDate" Property="${OriginalJobScheduledStartDate}" Value="${Job.ScheduledStartDate}" />
		<Assign Name="OriginalJobTargetDate" Property="${OriginalJobTargetDate}" Value="${Job.TargetDate}" />
		<Assign Name="OriginalJobSLATargetDate" Property="${OriginalJobSLATargetDate}" Value="${Job.ServiceContractTargetFinishedDate}" />

		<Transaction>
			<Choose Name="Check if context is IT incident/service request or not">
				<When Name="When IT incident/service request" Condition="#containselement(${ContextsThatAlwaysFollowSLA}, ${Job.Context}, False)">
					<WorkflowCall Name="Job_SetPlanningDatesBySLA" WorkflowName="Job_SetPlanningDatesBySLA" Comment="Department of the reporting employee is leading in setting the planning dates (by SLA).">
						<Parameter	Name="Job"	Direction="In"		Value="${Job}" />
					</WorkflowCall>
				</When>

				<Otherwise Name="Otherwise, other than IT incident/service request">
					<WorkflowCall Name="Job_Initialize" WorkflowName="Job_Initialize" Comment="Also sets the planning fields, but only if they are not set already.">
						<Parameter	Name="Job"	Direction="In"		Value="${Job}" />
					</WorkflowCall>
				</Otherwise>
			</Choose>
		</Transaction>

		<WorkflowCall Name="Job_WarnIfStartOrTargetDateIsInThePast" WorkflowName="Job_WarnIfStartOrTargetDateIsInThePast">
			<Parameter	Name="Job"								Direction="In"		Value="${Job}" />
			<Parameter	Name="OriginalJobScheduledStartDate"	Direction="In"		Value="${OriginalJobScheduledStartDate}" />
			<Parameter	Name="OriginalJobTargetDate"			Direction="In"		Value="${OriginalJobTargetDate}" />
		</WorkflowCall>

		<WorkflowCall Name="Job_WarnIfTargetDateIsPastSLATargetDate" WorkflowName="Job_WarnIfTargetDateIsPastSLATargetDate">
			<Parameter	Name="Job"						Direction="In"		Value="${Job}" />
			<Parameter	Name="OriginalJobSLATargetDate"	Direction="In"		Value="${OriginalJobSLATargetDate}" />
			<Parameter	Name="OriginalJobTargetDate"	Direction="In"		Value="${OriginalJobTargetDate}" />
		</WorkflowCall>

		<WorkflowCall Name="Job_InformUserInCaseOfMultipleJobScheduleParts" WorkflowName="Job_InformUserInCaseOfMultipleJobScheduleParts">
			<Parameter	Name="Job"								Direction="In"		Value="${Job}" />
			<Parameter	Name="OriginalJobScheduledStartDate"	Direction="In"		Value="${OriginalJobScheduledStartDate}" />
			<Parameter	Name="OriginalJobTargetDate"			Direction="In"		Value="${OriginalJobTargetDate}" />
		</WorkflowCall>

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