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

ActionField1670

Beschrijving: Request Extension (Add JobMaintenanceRangeHistory). Custom: Nee

Propertiesbewerken

Property Type Accessor
Job Job Root
AllowRequestExtensionForOtherEmployee Boolean Optional
ExtensionReasonRequired Boolean Optional
MaximumMaintenanceRange Int32 Optional
SqlWhereClauseEmployee String Optional

XMLbewerken

<Workflow Name="ActionField1670" Version="2025.07.28" WorkflowType="Standard" xmlns="urn:Ultimo.Framework.Workflow-mapping">
	<Security EditLevel="10" ViewLevel="20" UserContentLevel="30" />
	<Description>Request Extension (Add JobMaintenanceRangeHistory).</Description>
	<Properties>
		<Property	Name="Job"										Type="Job"							Accessor="Root"		Direction="In"										Comment="Job to add ExecutionDays to" />

		<Property	Name="AllowRequestExtensionForOtherEmployee"	Type="Boolean"						Accessor="Optional"	Direction="In"		Default="True"					Comment="Allow requesting extions on behalf of another employee" />
		<Property	Name="ExtensionReasonRequired"					Type="Boolean"						Accessor="Optional"	Direction="In"		Default="False"					Comment="Reason is required for requesting extension" />
		<Property	Name="MaximumMaintenanceRange"					Type="Int32"						Accessor="Optional"	Direction="In"		Default="365"					Comment="maximum number of days for extension" />
		<Property	Name="SqlWhereClauseEmployee"					Type="String"						Accessor="Optional"	Direction="In"		Default="EmpContext = 1"		Comment="Only select Employees with this sqlwhereclause" />

		<Property	Name="ExecutionDays"							Type="Int32"						Accessor="Internal" />
		<Property	Name="JobMaintenanceRangeHistory"				Type="JobMaintenanceRangeHistory"	Accessor="Internal" />
		<Property	Name="RequestedByEmpId"							Type="Employee"						Accessor="Internal"						Default="#{User.EmployeeId}" />
		<Property	Name="RequestedReason"							Type="UltimoString"					Accessor="Internal" />
	</Properties>
	<Execution>
		<UserContent Name="Pre" />

		<Validation Name="Validate JobStatus" Condition="${Job.Status} != JobStatus.Finished &amp;&amp; ${Job.Status} != JobStatus.Completed &amp;&amp; ${Job.Status} != JobStatus.Closed" MessageCode="3543">
			<Parameter	Name="Job"	Direction="In"		Value="${Job}" />
		</Validation>
		<Validation Name="Validate Eqmtype" Condition="${Job.EquipmentType} == Empty || ${Job.EquipmentType.ExtensionsAllowed} == True" MessageCode="3547">
			<Parameter	Name="Job"	Direction="In"		Value="${Job}" />
		</Validation>

		<Dialog Name="Edit JobMaintenanceRangeHistory" TitleCode="ADD_EXTENSION" LabelWidth="220">
			<Container>
				<Number Name="ExecutionDays" Value="0" OutputProperty="${ExecutionDays}" ColumnName="JobExecutionDays" Required="True" LabelCode="MAINTENANCERANGE" MinValue="0" MaxValue="${MaximumMaintenanceRange}" DecimalPrecision="0" />

				<SelectionList Name="RequestedBy" Value="${RequestedByEmpId}" OutputProperty="${RequestedByEmpId}" ColumnName="EmpId" Required="True" ReadOnly="=(${AllowRequestExtensionForOtherEmployee} == False)" SqlWhereClause="${SqlWhereClauseEmployee}" />

				<Text Name="Reason" OutputProperty="${RequestedReason}" ColumnName="JobmrhReqReason" Required="${ExtensionReasonRequired}" LabelCode="REASON" MaxLength="200" />
			</Container>
		</Dialog>

		<Transaction>
			<Insert Name="Insert JobMaintenanceRangeHistory" ObjectType="JobMaintenanceRangeHistory" OutputProperty="${JobMaintenanceRangeHistory}">
				<Parameter	Name="Id.Job"			Direction="In"		Value="${Job}" />
				<Parameter	Name="Status"			Direction="In"		Value="JobMaintenanceRangeHistoryStatus.Created" />
				<Parameter	Name="MaintenanceRange"	Direction="In"		Value="${ExecutionDays}" />
				<Parameter	Name="RequestedBy"		Direction="In"		Value="${RequestedByEmpId}" />
				<Parameter	Name="RequestedDate"	Direction="In"		Value="#{Environment.CurrentDateTime}" />
				<Parameter	Name="RequestedReason"	Direction="In"		Value="${RequestedReason}" />
			</Insert>
		</Transaction>

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