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

ActionField751

Beschrijving: Show (via selectionlist) and set allowed ProgressStatuses. Custom: Nee

Propertiesbewerken

Property Type Accessor
DefaultProgressStatusContextRecordStatus DefaultProgressStatusContextRecordStatus Root
SuccessFindContext Boolean Optional

XMLbewerken

<Workflow Name="ActionField751" Version="2025.07.28" WorkflowType="Standard" xmlns="urn:Ultimo.Framework.Workflow-mapping">
	<Security EditLevel="10" ViewLevel="20" UserContentLevel="30" />
	<Description>Show (via selectionlist) and set allowed ProgressStatuses.</Description>
	<Properties>
		<Property	Name="DefaultProgressStatusContextRecordStatus"		Type="DefaultProgressStatusContextRecordStatus"	Accessor="Root"		Direction="In" />

		<Property	Name="SuccessFindContext"							Type="Boolean"									Accessor="Optional"	Direction="Out" />

		<Property	Name="CustomJobAndProgressStatusContextCombination"	Type="UltimoString"								Accessor="Internal"						Default="#{UltimoSettings.CustomJobAndProgressStatusContextCombination}"		Comment="this override the default list combination" />
		<Property	Name="DefaultContextCombination"					Type="UltimoString"								Accessor="Internal"						Default="#{Settings.DefaultProgressStatusContext.DefaultContextCombination}"	Comment="list combination of string of jobcontext and progressstatuscombination example (1,2)(2,8)(4,512)" />
		<Property	Name="ExtraJobAndProgressStatusContextCombination"	Type="UltimoString"								Accessor="Internal"						Default="#{UltimoSettings.ExtraJobAndProgressStatusContextCombination}"			Comment="list combination of string of jobcontext and progressstatuscombination example (1,2)(2,8)(4,512)" />
		<Property	Name="ProgressStatusContextOut"						Type="Int64"									Accessor="Internal" />
		<Property	Name="ProgressStatusCount"							Type="Int64"									Accessor="Internal"						Default="0" />
		<Property	Name="ProgressStatusOut"							Type="ProgressStatus"							Accessor="Internal" />
	</Properties>
	<Execution>
		<UserContent Name="Pre" />

		<When Name="ExtraJobAndProgressStatusContextCombinationIsNotEmpty" Condition="${ExtraJobAndProgressStatusContextCombination} != Empty">
			<Assign Name="PastStringToDefaultContextCombination" Property="${DefaultContextCombination}" Value="${ExtraJobAndProgressStatusContextCombination}${DefaultContextCombination}" />
		</When>

		<When Name="CustomJobAndProgressStatusContextCombinationIsNotEmpty" Condition="${CustomJobAndProgressStatusContextCombination} != Empty">
			<Assign Name="OverrideDefaultContextCombination" Property="${DefaultContextCombination}" Value="${CustomJobAndProgressStatusContextCombination}" />
		</When>

		<UnformatText Name="UnformatContextCombination" Text="${DefaultContextCombination}" Mask="\(${DefaultProgressStatusContextRecordStatus.Id.DefaultProgressStatusContext.Id.Id},(\d+)\)" CaseSensitive="True" OutputProperty="${SuccessFindContext}">
			<Parameter	Name="1"	Direction="Out"		OutputProperty="${ProgressStatusContextOut}" />
		</UnformatText>

		<Validation Name="SuccessFindContextExist" Condition="${SuccessFindContext} == True" MessageCode="1495" />

		<Transaction>
			<GetCount Name="GetExistProgressStatuses" Type="ProgressStatus" OutputProperty="${ProgressStatusCount}">
				<Filters>
					<PropertyFilter	PropertyName="Context"		Operator="="		PropertyValue="${ProgressStatusContextOut}" />
					<PropertyFilter	PropertyName="NextStatus"	Operator="="		PropertyValue="${DefaultProgressStatusContextRecordStatus.Id.Status}" />
				</Filters>
			</GetCount>
		</Transaction>

		<Choose Name="ChooseProgressStatus">
			<When Name="ProgressStatusCountIsAboveZero?" Condition="${ProgressStatusCount} &gt; 0">
				<SystemDialog Name="SelectDomainObject" DialogName="SelectDomainObject">
					<Parameter	Name="EntityName"					Direction="In"		Value="ProgressStatus" />
					<Parameter	Name="SelectionListConfiguration"	Direction="In"		Value="Default" />
					<Parameter	Name="SqlWhereClause"				Direction="In"		Value="PrsContext = '${ProgressStatusContextOut}' AND PrsNextRecStatus = ${DefaultProgressStatusContextRecordStatus.Id.Status}" />
					<Parameter	Name="DomainObject"					Direction="Out"																																		OutputProperty="${ProgressStatusOut}" />
				</SystemDialog>

				<Transaction>
					<Assign Name="SetDefaultProgressStatus" Property="${DefaultProgressStatusContextRecordStatus.ProgressStatus}" Value="${ProgressStatusOut}" />
				</Transaction>
			</When>

			<Otherwise Name="NoProgressStatusExist">
				<Message Name="NoProgressStatusToSelect" MessageCode="1496" />

				<Transaction>
					<Assign Name="SetProgressStatusOfDefaultProgressStatusContextRecordStatusEmptied" Property="${DefaultProgressStatusContextRecordStatus.ProgressStatus}" Value="Empty" />
				</Transaction>
			</Otherwise>
		</Choose>

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