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

ActionField1867

Beschrijving: Create PurchaseRequest for this Job. Custom: Nee

Propertiesbewerken

Property Type Accessor
Job Job Root
PurchaseRequestContext Context Optional
PurchaseRequestStatus Status Optional
ScreenName UltimoString Optional

XMLbewerken

<Workflow Name="ActionField1867" Version="2025.07.28" WorkflowType="Standard" xmlns="urn:Ultimo.Framework.Workflow-mapping">
	<Security EditLevel="10" ViewLevel="20" UserContentLevel="30" />
	<Description>Create PurchaseRequest for this Job.</Description>
	<Properties>
		<Property	Name="Job"						Type="Job"						Accessor="Root"		Direction="In" />

		<Property	Name="PurchaseRequestContext"	Type="Context"					Accessor="Optional"	Direction="In"		Default="PurchaseRequestContext.OrderRequest"	Comment="Create PurchaseRequest with this context" />
		<Property	Name="PurchaseRequestStatus"	Type="Status"					Accessor="Optional"	Direction="In"		Default="PurchaseRequestStatus.Created"			Comment="Create PurchaseRequest with this status" />
		<Property	Name="ScreenName"				Type="UltimoString"				Accessor="Optional"	Direction="In"														Comment="Open this screen with the created PurchaseRequestLine" />

		<Property	Name="PurchaseRequest"			Type="PurchaseRequest"			Accessor="Internal" />
		<Property	Name="PurchaseRequestList"		Type="List[PurchaseRequest]"	Accessor="Internal" />
	</Properties>
	<Execution>
		<UserContent Name="Pre" />

		<When Name="Check UsePurchaseRequestWithHeader" Condition="#{UltimoSettings.UsePurchaseRequestWithHeader} == False">
			<Stop Name="Stop" Mode="EndCurrent" />
		</When>

		<Validation Name="Job Status Validation" Condition="${Job.Status} == JobStatus.Requested || ${Job.Status} == JobStatus.Created || ${Job.Status} == JobStatus.Approved || ${Job.Status} == JobStatus.Active || ${Job.Status} == JobStatus.Completed || ${Job.Status} == JobStatus.Postponed" MessageCode="3903">
			<Parameter	Name="Job"	Direction="In"		Value="${Job}" />
		</Validation>
		<Validation Name="Check job startdate" Condition="${Job.ScheduledStartDate} != Empty" MessageCode="3905">
			<Parameter	Name="Job"	Direction="In"		Value="${Job}" />
		</Validation>

		<Transaction>
			<GetList Name="Get Job Purchase Request List" Type="PurchaseRequest" OutputProperty="${PurchaseRequestList}" OrderBy="Id" OrderDirection="Ascending" Top="1">
				<Filters>
					<PropertyFilter	PropertyName="Job"		Operator="="		PropertyValue="${Job}" />
					<PropertyFilter	PropertyName="Status"	Operator="="		PropertyValue="PurchaseRequestStatus.Created" />
				</Filters>
			</GetList>

			<Validation Name="There is a created PurchaseRequest" Condition="${PurchaseRequestList.Count} == 0" MessageCode="3897">
				<Parameter	Name="Job"				Direction="In"		Value="${Job}" />
				<Parameter	Name="PurchaseRequest"	Direction="In"		Value="${PurchaseRequestList[0]}" />
			</Validation>

			<Insert Name="New Purchase Request" ObjectType="PurchaseRequest" OutputProperty="${PurchaseRequest}">
				<Parameter	Name="Context"			Direction="In"		Value="${PurchaseRequestContext}" />
				<Parameter	Name="Status"			Direction="In"		Value="${PurchaseRequestStatus}" />
				<Parameter	Name="CostCenter"		Direction="In"		Value="${Job.CostCenter}" />
				<Parameter	Name="CreatedFromJob"	Direction="In"		Value="True" />
				<Parameter	Name="Department"		Direction="In"		Value="${Job.Department}" />
				<Parameter	Name="Job"				Direction="In"		Value="${Job}" />
				<Parameter	Name="Site"				Direction="In"		Value="${Job.Site}" />
			</Insert>
		</Transaction>

		<UserContent Name="Post" />

		<View Name="Open screen" ViewName="DataEntryScreen">
			<Parameter	Name="DomainObject"			Direction="In"		Value="${PurchaseRequest}" />
			<Parameter	Name="FocusEditableField"	Direction="In"		Value="True" />
			<Parameter	Name="ScreenName"			Direction="In"		Value="${ScreenName}" />
		</View>
	</Execution>
</Workflow>