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

ActionField448

Beschrijving: Create YearPlanScenarioLines (when status is Concept or Updatable). Open the Equipment replacement planner (via ReplacementScenarioPlanner.xlsm) for this YearPlanScenario. Custom: Nee

Propertiesbewerken

Property Type Accessor
YearPlanScenario YearPlanScenario Root
EqmContextToSearch List[Context] Optional
EqmStatusToSearch List[Status] Optional
ExtraEquipmentProperties List[String] Optional
PrfContextToSearch List[Context] Optional
SortOnDescription Boolean Optional

XMLbewerken

<Workflow Name="ActionField448" Version="2025.07.28" WorkflowType="Standard" xmlns="urn:Ultimo.Framework.Workflow-mapping">
	<Security EditLevel="10" ViewLevel="20" UserContentLevel="30" />
	<Description>Create YearPlanScenarioLines (when status is Concept or Updatable). Open the Equipment replacement planner (via ReplacementScenarioPlanner.xlsm) for this YearPlanScenario.</Description>
	<Properties>
		<Property	Name="YearPlanScenario"			Type="YearPlanScenario"	Accessor="Root"		Direction="In" />

		<Property	Name="EqmContextToSearch"		Type="List[Context]"	Accessor="Optional"	Direction="In"													Comment="Create only YearPlanScenarioLines for Equipments with these contexts" />
		<Property	Name="EqmStatusToSearch"		Type="List[Status]"		Accessor="Optional"	Direction="In"		Default="0,2,4,8,16,32,256,512,1024"		Comment="Create only YearPlanScenarioLines for Equipments with these statuses" />
		<Property	Name="ExtraEquipmentProperties"	Type="List[String]"		Accessor="Optional"	Direction="In"													Comment="Indicate equipment fields for extra column, by property name" />
		<Property	Name="PrfContextToSearch"		Type="List[Context]"	Accessor="Optional"	Direction="In"													Comment="Not in use" />
		<Property	Name="SortOnDescription"		Type="Boolean"			Accessor="Optional"	Direction="In"													Comment="Sort the Equipments in planner by Description" />

		<Property	Name="DomainDataType"			Type="UltimoString"		Accessor="Internal" />
		<Property	Name="OutFileName"				Type="UltimoString"		Accessor="Internal" />
		<Property	Name="ScenarioLineCount"		Type="Int64"			Accessor="Internal" />
		<Property	Name="YearPlan"					Type="YearPlan"			Accessor="Internal"						Default="${YearPlanScenario.Id.YearPlan}" />
	</Properties>
	<Execution>
		<UserContent Name="Pre" />

		<ForEach Name="Loop ExtraEquipmentProperties" In="${ExtraEquipmentProperties}" As="ExtraEquipmentProperty">
			<Command Name="Column_GetDomainDataType" CommandName="Column_GetDomainDataType">
				<Parameter	Name="EntityName"		Direction="In"		Value="Equipment" />
				<Parameter	Name="PropertyName"		Direction="In"		Value="${ExtraEquipmentProperty}" />
				<Parameter	Name="DomainDataType"	Direction="Out"											OutputProperty="${DomainDataType}" />
			</Command>

			<Validation Name="ValidateExtraFields" Condition="${DomainDataType} == 'String'" MessageCode="3942">
				<Parameter	Name="ExtraEquipmentProperty"	Direction="In"		Value="${ExtraEquipmentProperty}" />
			</Validation>
		</ForEach>

		<When Name="CalcScenarioLinesIfStatusIsConceptOrUpdatable » CheckStatus" Condition="${YearPlanScenario.Status} == YearPlanScenarioStatus.Concept || ${YearPlanScenario.Status} == YearPlanScenarioStatus.Updatable">
			<WorkflowCall Name="CreateScenarioLines" WorkflowName="YearPlanScenario_CreateScenarioLines">
				<Parameter	Name="EqmContextToSearch"	Direction="In"		Value="${EqmContextToSearch}" />
				<Parameter	Name="EqmStatusToSearch"	Direction="In"		Value="${EqmStatusToSearch}" />
				<Parameter	Name="YearPlanScenario"		Direction="In"		Value="${YearPlanScenario}" />
			</WorkflowCall>
		</When>

		<Transaction>
			<GetCount Name="GetScenarioLineCount" Type="YearPlanScenarioLine" OutputProperty="${ScenarioLineCount}">
				<Filters>
					<PropertyFilter	PropertyName="Id.YearPlanScenario"	Operator="="		PropertyValue="${YearPlanScenario}" />
				</Filters>
			</GetCount>
		</Transaction>

		<UserContent Name="Post" />

		<Choose Name="ShowPlannerIfScenarioLinesWereFound">
			<When Name="AnyScenarioLinesFound" Condition="${ScenarioLineCount} &gt; 0">
				<Validation Name="CheckYearPlanContext" Condition="${YearPlan.Context} == YearPlanContext.TD || ${YearPlan.Context} == YearPlanContext.MID || ${YearPlan.Context} == YearPlanContext.IT || ${YearPlan.Context} == YearPlanContext.Fleet" MessageCode="1235">
					<Parameter	Name="YearPlan"	Direction="In"		Value="${YearPlan}" />
				</Validation>
				<Assign Name="OutFileName" Property="${OutFileName}" Value="YearPlanScenario_${YearPlanScenario.Id.YearPlan.Id}_${YearPlanScenario.Id.LineId}_Export.xlsm" />

				<Transaction>
					<Command Name="SpaceMaintenance_CreateExcelReportReplacement" CommandName="SpaceMaintenance_CreateExcelReportReplacement">
						<Parameter	Name="ExtraEquipmentProperties"	Direction="In"		Value="${ExtraEquipmentProperties}" />
						<Parameter	Name="InFileName"				Direction="In"		Value="ReplacementScenarioPlanner.xlsm" />
						<Parameter	Name="OrderByDescription"		Direction="In"		Value="${SortOnDescription}" />
						<Parameter	Name="OutFileName"				Direction="In"		Value="${OutFileName}" />
						<Parameter	Name="YearPlanScenario"			Direction="In"		Value="${YearPlanScenario}" />
					</Command>
				</Transaction>

				<View Name="View document" ViewName="ExternalDocumentViewer">
					<Parameter	Name="Download"	Direction="In"		Value="True" />
					<Parameter	Name="FileName"	Direction="In"		Value="Temp\${OutFileName}" />
				</View>

				<DeleteFile Name="Delete File" FileName="Temp\${OutFileName}" />
			</When>

			<Otherwise Name="InformUser">
				<Message Name="ShowNothingToDisplayMessage" MessageCode="1201" />
			</Otherwise>
		</Choose>
	</Execution>
</Workflow>