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

ActionField986

Beschrijving: Create new Project for Change. Custom: Nee

Propertiesbewerken

Property Type Accessor
Change Change Root
ProjectContext Context Optional
ProjectStatus Status Optional

XMLbewerken

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

		<Property	Name="ProjectContext"	Type="Context"		Accessor="Optional"	Direction="In"		Default="ProjectContext.Standard"	Comment="Create Project with this context" />
		<Property	Name="ProjectStatus"	Type="Status"		Accessor="Optional"	Direction="In"		Default="ProjectStatus.Created"		Comment="Create Project with this status" />

		<Property	Name="FieldWidth"		Type="Int32"		Accessor="Internal"						Default="0" />
		<Property	Name="Project"			Type="Project"		Accessor="Internal" />
		<Property	Name="ProjectId"		Type="UltimoString"	Accessor="Internal" />
		<Property	Name="UseAutoKey"		Type="Boolean"		Accessor="Internal" />
	</Properties>
	<Execution>
		<UserContent Name="Pre" />

		<Transaction>
			<Validation Name="Check status" Condition="${Change.Status} == ChangeStatus.InPreparation || ${Change.Status} == ChangeStatus.Expired || ${Change.Status} == ChangeStatus.Postponed || ${Change.Status} == ChangeStatus.Approved || ${Change.Status} == ChangeStatus.Active" MessageCode="1881">
				<Parameter	Name="DomainObject"		Direction="In"		Value="${Change}" />
				<Parameter	Name="EntityContext"	Direction="In"		Value="${ProjectContext}" />
				<Parameter	Name="EntityName"		Direction="In"		Value="Project" />
			</Validation>

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

		<When Name="Don't use autokey" Condition="${UseAutoKey} == False">
			<Command Name="GetFieldWidth" CommandName="GetFieldWidth">
				<Parameter	Name="FieldName"	Direction="In"		Value="PrjId" />
				<Parameter	Name="FieldWidth"	Direction="Out"						OutputProperty="${FieldWidth}" />
			</Command>

			<Dialog Name="Request unused prjid" TitleCode="CREATEPROJECT">
				<Container>
					<Text Name="ProjectId" OutputProperty="${ProjectId}" ColumnName="PrjId" Required="True" LabelCode="PRJID" MaxLength="${FieldWidth}" />
				</Container>
				<Validations>
					<ValidationWorkflow Name="Validation_ProjectIdMustBeUnique" WorkflowName="Validation_ProjectIdMustBeUnique">
						<Parameter	Name="ProjectId"	Direction="In"		Value="${ProjectId}" />
					</ValidationWorkflow>
				</Validations>
			</Dialog>
		</When>

		<Transaction>
			<Insert Name="Insert Project" ObjectType="Project" OutputProperty="${Project}">
				<Parameter	Name="Context"		Direction="In"		Value="${ProjectContext}" />
				<Parameter	Name="Status"		Direction="In"		Value="${ProjectStatus}" />
				<Parameter	Name="Change"		Direction="In"		Value="${Change}" />
				<Parameter	Name="Description"	Direction="In"		Value="${Change.Description}" />
				<Parameter	Name="Id"			Direction="In"		Value="${ProjectId}" />
				<Parameter	Name="Manager"		Direction="In"		Value="${Change.ProjectManager}" />
			</Insert>
		</Transaction>

		<UserContent Name="Post" />

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