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

ActionField646

Beschrijving: Copy a Project to another Project. User must enter the Id if AutoKey is not active for Project. Custom: Nee

Propertiesbewerken

Property Type Accessor
SourceProject Project Root
CopyJobExternal Boolean Optional
CopyJobInspectionLine Boolean Optional
CopyJobMaterial Boolean Optional
CopyJobResource Boolean Optional
CopyJobTool Boolean Optional
ExtraJobFields List[String] Optional
ExtraProjectFields List[String] Optional
ExtraWorkOrderFields List[String] Optional
JobStatus Status Optional
ProjectStatus Status Optional
WorkOrderStatus Status Optional

XMLbewerken

<Workflow Name="ActionField646" Version="2025.07.28" WorkflowType="Standard" xmlns="urn:Ultimo.Framework.Workflow-mapping">
	<Security EditLevel="10" ViewLevel="20" UserContentLevel="30" />
	<Description>Copy a Project to another Project. User must enter the Id if AutoKey is not active for Project.</Description>
	<Properties>
		<Property	Name="SourceProject"			Type="Project"		Accessor="Root"		Direction="In" />

		<Property	Name="CopyJobExternal"			Type="Boolean"		Accessor="Optional"	Direction="In"		Default="True"						Comment="Copy JobExternal records of Jobs linked to Project.WorkOrders too" />
		<Property	Name="CopyJobInspectionLine"	Type="Boolean"		Accessor="Optional"	Direction="In"		Default="True"						Comment="Copy JobInspectionLine records of Jobs linked to Project.WorkOrders too" />
		<Property	Name="CopyJobMaterial"			Type="Boolean"		Accessor="Optional"	Direction="In"		Default="True"						Comment="Copy JobMaterial records of Jobs linked to Project.WorkOrders too" />
		<Property	Name="CopyJobResource"			Type="Boolean"		Accessor="Optional"	Direction="In"		Default="True"						Comment="Copy JobResource records of Jobs linked to Project.WorkOrders too" />
		<Property	Name="CopyJobTool"				Type="Boolean"		Accessor="Optional"	Direction="In"		Default="True"						Comment="Copy JobTool records of Jobs linked to Project.WorkOrders too" />
		<Property	Name="ExtraJobFields"			Type="List[String]"	Accessor="Optional"	Direction="In"		Default="Empty"						Comment="Indicate additional Job columns to be copied" />
		<Property	Name="ExtraProjectFields"		Type="List[String]"	Accessor="Optional"	Direction="In"		Default="Empty"						Comment="Indicate additional Project columns to be copied" />
		<Property	Name="ExtraWorkOrderFields"		Type="List[String]"	Accessor="Optional"	Direction="In"		Default="Empty"						Comment="Indicate additional WorkOrder columns to be copied" />
		<Property	Name="JobStatus"				Type="Status"		Accessor="Optional"	Direction="In"		Default="JobStatus.Created"			Comment="Create Jobs with this status" />
		<Property	Name="ProjectStatus"			Type="Status"		Accessor="Optional"	Direction="In"		Default="ProjectStatus.Created"		Comment="Create Project with this status" />
		<Property	Name="WorkOrderStatus"			Type="Status"		Accessor="Optional"	Direction="In"		Default="WorkOrderStatus.Created"	Comment="Create WorkOrders with this status" />

		<Property	Name="CopyProjectLabel"			Type="String"		Accessor="Internal" />
		<Property	Name="DestinationProject"		Type="Project"		Accessor="Internal" />
		<Property	Name="ProjectId"				Type="UltimoString"	Accessor="Internal"						Default="Empty" />
		<Property	Name="UseAutoKey"				Type="Boolean"		Accessor="Internal" />
	</Properties>
	<Execution>
		<UserContent Name="Pre" />

		<Transaction>
			<Command Name="HasAutoKey" CommandName="HasAutoKey">
				<Parameter	Name="EntityName"	Direction="In"		Value="Project" />
				<Parameter	Name="HasAutoKey"	Direction="Out"						OutputProperty="${UseAutoKey}" />
			</Command>
		</Transaction>

		<When Name="UseAutoKeyIsFalse" Condition="${UseAutoKey} == False">
			<FormatText Name="CopyProjectLabel" TextCode="COPYPROJECTLABEL" Application="LABEL" OutputProperty="${CopyProjectLabel}">
				<Parameters>
					<Parameter	Name="Project"	Direction="In"		Value="${SourceProject}" />
				</Parameters>
			</FormatText>

			<WorkflowCall Name="Dialog_CopyProject" WorkflowName="Dialog_CopyProject">
				<Parameter	Name="ChangeStartDate"	Direction="In"		Value="False" />
				<Parameter	Name="CopyProjectLabel"	Direction="In"		Value="${CopyProjectLabel}" />
				<Parameter	Name="Project"			Direction="In"		Value="${SourceProject}" />
				<Parameter	Name="ProjectCode"		Direction="Out"									OutputProperty="${ProjectId}" />
			</WorkflowCall>
		</When>

		<Transaction>
			<WorkflowCall Name="Project_CopyProject" WorkflowName="Project_CopyProject">
				<Parameter	Name="CopyForStopProject"		Direction="In"		Value="False" />
				<Parameter	Name="CopyJobExternal"			Direction="In"		Value="${CopyJobExternal}" />
				<Parameter	Name="CopyJobInspectionLine"	Direction="In"		Value="${CopyJobInspectionLine}" />
				<Parameter	Name="CopyJobMaterial"			Direction="In"		Value="${CopyJobMaterial}" />
				<Parameter	Name="CopyJobResource"			Direction="In"		Value="${CopyJobResource}" />
				<Parameter	Name="CopyJobTool"				Direction="In"		Value="${CopyJobTool}" />
				<Parameter	Name="ExtraJobFields"			Direction="In"		Value="${ExtraJobFields}" />
				<Parameter	Name="ExtraProjectFields"		Direction="In"		Value="${ExtraProjectFields}" />
				<Parameter	Name="ExtraWorkOrderFields"		Direction="In"		Value="${ExtraWorkOrderFields}" />
				<Parameter	Name="JobStatus"				Direction="In"		Value="${JobStatus}" />
				<Parameter	Name="ProjectId"				Direction="In"		Value="${ProjectId}" />
				<Parameter	Name="ProjectStatus"			Direction="In"		Value="${ProjectStatus}" />
				<Parameter	Name="SourceProject"			Direction="In"		Value="${SourceProject}" />
				<Parameter	Name="WorkOrderStatus"			Direction="In"		Value="${WorkOrderStatus}" />
				<Parameter	Name="CreatedProject"			Direction="Out"											OutputProperty="${DestinationProject}" />
			</WorkflowCall>
		</Transaction>

		<UserContent Name="Post" />

		<Message Name="ProjectCopiedMessage" MessageCode="0991" Comment="ProjectCopiedMessage">
			<Parameter	Name="DestinationProject"	Direction="In"		Value="${DestinationProject}" />
		</Message>

		<View Name="OpenScreen" ViewName="DataEntryScreen">
			<Parameter	Name="DomainObject"			Direction="In"		Value="${DestinationProject}" />
			<Parameter	Name="FocusEditableField"	Direction="In"		Value="=${DestinationProject.Description} == Empty" />
		</View>
	</Execution>
</Workflow>