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

ActionField1803

Beschrijving: Update bill of materials, jobplans, PM models with replacement article. Custom: Nee

Propertiesbewerken

Property Type Accessor
Article Article Root

XMLbewerken

<Workflow Name="ActionField1803" Version="2025.07.28" WorkflowType="Standard" xmlns="urn:Ultimo.Framework.Workflow-mapping">
	<Security EditLevel="10" ViewLevel="20" UserContentLevel="30" />
	<Description>Update  bill of materials, jobplans, PM models with replacement article.</Description>
	<Properties>
		<Property	Name="Article"						Type="Article"							Accessor="Root"		Direction="In" />

		<Property	Name="JobPlanPurchaseRequestLines"	Type="List[JobPlanPurchaseRequestLine]"	Accessor="Internal" />
		<Property	Name="PurchaseLines"				Type="List[PurchaseLine]"				Accessor="Internal"						Default="Empty" />
	</Properties>
	<Execution>
		<UserContent Name="Pre" />

		<Validation Name="Check replacement article" Condition="${Article.ReplacedByArticle} != Empty" MessageCode="3699">
			<Parameter	Name="Article"	Direction="In"		Value="${Article}" />
		</Validation>
		<Validation Name="Check Stock" Condition="${Article.Stock} == 0" MessageCode="3690">
			<Parameter	Name="Article"	Direction="In"		Value="${Article}" />
		</Validation>

		<Transaction>
			<GetList Name="Get PurchaseLines" Type="PurchaseLine" OutputProperty="${PurchaseLines}" OrderBy="Id.Purchase" OrderDirection="Ascending">
				<Filters>
					<PropertyFilter	PropertyName="Article"	Operator="="		PropertyValue="${Article}" />
					<NotFilter>
						<InFilter PropertyName="Status" Values="PurchaseLineStatus.Canceled,PurchaseLineStatus.Received,PurchaseLineStatus.Closed" />
					</NotFilter>
				</Filters>
			</GetList>

			<Validation Name="Check PurchaseLines" Condition="${PurchaseLines.Count} == 0" MessageCode="3691">
				<Parameter	Name="Article"			Direction="In"		Value="${Article}" />
				<Parameter	Name="PurchaseLines"	Direction="In"		Value="${PurchaseLines}" />
			</Validation>

			<GetList Name="JobPlanPurchaseRequestLine" Type="JobPlanPurchaseRequestLine" OutputProperty="${JobPlanPurchaseRequestLines}" OrderBy="Id" OrderDirection="Ascending">
				<Filters>
					<PropertyFilter	PropertyName="Article"	Operator="="		PropertyValue="${Article}" />
				</Filters>
			</GetList>

			<Validation Name="Check JobPlanPurchaseRequestLines" Condition="${JobPlanPurchaseRequestLines.Count} == 0" MessageCode="3698">
				<Parameter	Name="Article"						Direction="In"		Value="${Article}" />
				<Parameter	Name="JobPlanPurchaseRequestLines"	Direction="In"		Value="${JobPlanPurchaseRequestLines}" />
			</Validation>
		</Transaction>

		<ContinuationQuestion Name="Continue to update linked tables with the replacement article" MessageCode="3697">
			<Parameter	Name="Article"	Direction="In"		Value="${Article}" />
		</ContinuationQuestion>

		<Transaction>
			<WorkflowCall Name="Article_ReplaceArticleInLinkedTables" WorkflowName="Article_ReplaceArticleInLinkedTables">
				<Parameter	Name="Article"						Direction="In"		Value="${Article}" />
				<Parameter	Name="ReplaceOrAlternativeArticle"	Direction="In"		Value="${Article.ReplacedByArticle}" />
			</WorkflowCall>

			<Assign Name="Set ReplacedByDate" Property="${Article.ReplacedByDate}" Value="#{Environment.CurrentDateTime}" />
			<Assign Name="Set ReplacedByEmployee" Property="${Article.ReplacedByEmployee}" Value="#{User.EmployeeId}" />
			<Assign Name="Set Purchase to false" Property="${Article.Purchase}" Value="False" />
		</Transaction>

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