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

ActionField987

Beschrijving: Change status of all RiskClasses with a specific context to Approved or Created (depending on property 'Reopen'). Custom: Nee

Propertiesbewerken

Property Type Accessor
RiskClassContext Context Required
ReOpen Boolean Optional

XMLbewerken

<Workflow Name="ActionField987" Version="2025.07.28" WorkflowType="Standard" xmlns="urn:Ultimo.Framework.Workflow-mapping">
	<Security EditLevel="10" ViewLevel="20" UserContentLevel="30" />
	<Description>Change status of all RiskClasses with a specific context to Approved or Created (depending on property 'Reopen').</Description>
	<Properties>
		<Property	Name="RiskClassContext"	Type="Context"			Accessor="Required"	Direction="In"											Comment="Only change the status of RiskClasses with this context" />

		<Property	Name="ReOpen"			Type="Boolean"			Accessor="Optional"	Direction="In"		Default="False"						Comment="Reopen when True else approve" />

		<Property	Name="CurrentStatus"	Type="Status"			Accessor="Internal"						Default="RiskClassStatus.Created" />
		<Property	Name="NewStatus"		Type="Status"			Accessor="Internal"						Default="RiskClassStatus.Approved" />
		<Property	Name="RiskClasses"		Type="List[RiskClass]"	Accessor="Internal" />
	</Properties>
	<Execution>
		<UserContent Name="Pre" />

		<When Name="Try to Reopen" Condition="${ReOpen} == True">
			<Assign Name="Set CurrentStatus" Property="${CurrentStatus}" Value="RiskClassStatus.Approved" />
			<Assign Name="Set NewStatus" Property="${NewStatus}" Value="RiskClassStatus.Created" />
		</When>

		<Transaction>
			<GetList Name="RiskClass" Type="RiskClass" OutputProperty="${RiskClasses}" OrderBy="FromScore" OrderDirection="Ascending">
				<Filters>
					<CombinedFilter FilterOperator="And">
						<PropertyFilter	PropertyName="Context"	Operator="="		PropertyValue="${RiskClassContext}" />
						<PropertyFilter	PropertyName="Status"	Operator="="		PropertyValue="${CurrentStatus}" />
					</CombinedFilter>
				</Filters>
			</GetList>

			<Validation Name="No records to change" Condition="${RiskClasses.Count} != 0" MessageCode="1891">
				<Parameter	Name="Context"	Direction="In"		Value="${RiskClassContext}" />
				<Parameter	Name="ReOpen"	Direction="In"		Value="${ReOpen}" />
			</Validation>
		</Transaction>

		<When Name="Ask to Reopen" Condition="${ReOpen} == True">
			<ContinuationQuestion Name="Would you like to reopen" MessageCode="1889">
				<Parameter	Name="Context"	Direction="In"		Value="${RiskClassContext}" />
			</ContinuationQuestion>
		</When>

		<Transaction>
			<When Name="Should validate" Condition="${ReOpen} == False">
				<Command Name="Validate RiskClass" CommandName="RiskClass_Validate">
					<Parameter	Name="RiskClassContext"	Direction="In"		Value="${RiskClassContext}" />
				</Command>
			</When>

			<ForEach Name="RiskClass" In="${RiskClasses}" As="RiskClass">
				<ChangeStatus Name="Change Status Risk Class" DomainObject="${RiskClass}" NewStatus="${NewStatus}" />
			</ForEach>
		</Transaction>

		<UserContent Name="Post" />

		<Message Name="Respond" MessageCode="1890">
			<Parameter	Name="ReOpen"		Direction="In"		Value="${ReOpen}" />
			<Parameter	Name="RiskClasses"	Direction="In"		Value="${RiskClasses}" />
		</Message>
	</Execution>
</Workflow>