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

ActionField1106

Beschrijving: Toggle UltimoSettings.ManageStockPerWarehouse. Custom: Nee

Gerelateerde workflowsbewerken

Workflow Beschrijving
Article_ActionField1106_UpdatePurchase Toggle UltimoSettings.ManageStockPerWarehouse Update Purchase(Request)Lines and get first ArticleWarehouse.
Article_ActionField1106_UpdateStockPerWarehouse Toggle UltimoSettings.ManageStockPerWarehouse update stock per warehouse.
Article_ActionField1106_UpdateWarehouse Toggle UltimoSettings.ManageStockPerWarehouse update warehouse.
Article_ActionField1106_UpdateWarehouseAndSite Toggle UltimoSettings.ManageStockPerWarehouse update warehouse and site.

XMLbewerken

<Workflow Name="ActionField1106" Version="2025.07.28" WorkflowType="Standard" xmlns="urn:Ultimo.Framework.Workflow-mapping">
	<Security EditLevel="10" ViewLevel="20" UserContentLevel="30" />
	<Description>Toggle UltimoSettings.ManageStockPerWarehouse.</Description>
	<Properties />
	<Execution>
		<UserContent Name="Pre" />

		<WorkflowCall Name="UltimoSettings_ToggleManageStockPerWarehouse" WorkflowName="UltimoSettings_ToggleManageStockPerWarehouse" />

		<UserContent Name="Post" />

		<When Name="When Stock By ArticleWarehouse is False" Condition="#{UltimoSettings.ManageStockPerWarehouse} == True">
			<Message Name="Changing setting UpdateManageStockPerWarehouse ready." MessageCode="2307" />
		</When>

		<When Name="When Stock By ArticleWarehouse is True" Condition="#{UltimoSettings.ManageStockPerWarehouse} == False">
			<Message Name="Changing setting UpdateManageStockPerWarehouse ready." MessageCode="2308" />
		</When>

		<View Name="OpenScreen" ViewName="DataEntryScreen">
			<Parameter	Name="ScreenName"	Direction="In"		Value="umm01" />
		</View>
	</Execution>
</Workflow>

Sub-workflow XMLbewerken

Article_ActionField1106_UpdatePurchasebewerken

Beschrijving: Toggle UltimoSettings.ManageStockPerWarehouse Update Purchase(Request)Lines and get first ArticleWarehouse.

<Workflow Name="Article_ActionField1106_UpdatePurchase" Version="2025.07.28" WorkflowType="Standard" AllowUserInteraction="False" xmlns="urn:Ultimo.Framework.Workflow-mapping">
	<Security EditLevel="10" ViewLevel="20" UserContentLevel="30" />
	<Description>Toggle UltimoSettings.ManageStockPerWarehouse Update Purchase(Request)Lines and get first ArticleWarehouse.</Description>
	<Properties>
		<Property	Name="ArticleWarehouses"		Type="List[ArticleWarehouse]"		Accessor="Internal"						Default="Empty" />
		<Property	Name="FirstArticleWarehouse"	Type="ArticleWarehouse"				Accessor="Internal"						Default="Empty" />
		<Property	Name="PurchaseLines"			Type="List[PurchaseLine]"			Accessor="Internal"						Default="Empty" />
		<Property	Name="PurchaseRequestLines"		Type="List[PurchaseRequestLine]"	Accessor="Internal"						Default="Empty" />
		<Property	Name="Site"						Type="Site"							Accessor="Internal"						Default="Empty" />
	</Properties>
	<Execution>
		<UserContent Name="Pre" />

		<Transaction>
			<GetList Name="Get PurchaseLines" Type="PurchaseLine" OutputProperty="${PurchaseLines}" OrderBy="Id.Purchase" OrderDirection="Ascending">
				<Filters>
					<CombinedFilter FilterOperator="And">
						<InFilter PropertyName="Status" Values="PurchaseLineStatus.Conceptual,PurchaseLineStatus.Active" />
						<PropertyFilter	PropertyName="StockArticle"	Operator="="		PropertyValue="True" />
						<PropertyFilter	PropertyName="Warehouse"	Operator="="		PropertyValue="Empty" />
					</CombinedFilter>
				</Filters>
			</GetList>

			<ForEach Name="All PurchaseLines" In="${PurchaseLines}" As="PurchaseLine">
				<GetList Name="Get ArticleWarehouses PurchaseLines" Type="ArticleWarehouse" OutputProperty="${ArticleWarehouses}" OrderBy="Id.Warehouse.Id" OrderDirection="Ascending">
					<Filters>
						<PropertyFilter	PropertyName="Id.Article"	Operator="="		PropertyValue="${PurchaseLine.Article}" />
						<WhenFilter Condition="#{UltimoSettings.StockLevelPerSite} == True">
							<PropertyFilter	PropertyName="Site"			Operator="="		PropertyValue="${PurchaseLine.Id.Purchase.Site}" />
						</WhenFilter>
					</Filters>
				</GetList>

				<When Name="at least one Articlewarehouse" Condition="${ArticleWarehouses.Count} &gt; 0">
					<Assign Name="Set FirstArticleWarehouse" Property="${FirstArticleWarehouse}" Value="=#elementat(${ArticleWarehouses}, 0)" />
					<Assign Name="Set PurchaseLine.Warehouse" Property="${PurchaseLine.Warehouse}" Value="${FirstArticleWarehouse.Id.Warehouse}" />
				</When>
			</ForEach>

			<GetList Name="Get PurchaseRequestLines" Type="PurchaseRequestLine" OutputProperty="${PurchaseRequestLines}" OrderBy="PurchaseRequest" OrderDirection="Ascending">
				<Filters>
					<CombinedFilter FilterOperator="And">
						<PropertyFilter	PropertyName="Status"		Operator="="		PropertyValue="PurchaseRequestLineStatus.Approved" />
						<PropertyFilter	PropertyName="StockArticle"	Operator="="		PropertyValue="True" />
						<PropertyFilter	PropertyName="Warehouse"	Operator="="		PropertyValue="Empty" />
					</CombinedFilter>
				</Filters>
			</GetList>

			<ForEach Name="All PurchaseRequestLines" In="${PurchaseRequestLines}" As="PurchaseRequestLine">
				<When Name="StockLevelPerSite" Condition="#{UltimoSettings.StockLevelPerSite} == True">
					<Assign Name="Set Site from PurchaseRequest" Property="${Site}" Value="${PurchaseRequestLine.PurchaseRequest.Site?}" />

					<When Name="PurchaseRequestLine has PurchaseRequest" Condition="${Site} == Empty">
						<Assign Name="Set Site from PurchaseRequestLine" Property="${Site}" Value="${PurchaseRequestLine.Site}" />
					</When>
				</When>

				<GetList Name="Get ArticleWarehouses PurchaseRequestLines" Type="ArticleWarehouse" OutputProperty="${ArticleWarehouses}" OrderBy="Id.Warehouse.Id" OrderDirection="Ascending">
					<Filters>
						<PropertyFilter	PropertyName="Id.Article"	Operator="="		PropertyValue="${PurchaseRequestLine.Article}" />
						<WhenFilter Condition="#{UltimoSettings.StockLevelPerSite} == True">
							<PropertyFilter	PropertyName="Site"			Operator="="		PropertyValue="${Site}" />
						</WhenFilter>
					</Filters>
				</GetList>

				<When Name="at least one Articlewarehouse" Condition="${ArticleWarehouses.Count} &gt; 0">
					<Assign Name="Set FirstArticleWarehouse" Property="${FirstArticleWarehouse}" Value="=#elementat(${ArticleWarehouses}, 0)" />
					<Assign Name="Set PurchaseRequestLine.Warehouse" Property="${PurchaseRequestLine.Warehouse}" Value="${FirstArticleWarehouse.Id.Warehouse}" />
				</When>
			</ForEach>
		</Transaction>

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

Article_ActionField1106_UpdateStockPerWarehousebewerken

Beschrijving: Toggle UltimoSettings.ManageStockPerWarehouse update stock per warehouse.

<Workflow Name="Article_ActionField1106_UpdateStockPerWarehouse" Version="2025.07.28" WorkflowType="Standard" AllowUserInteraction="False" xmlns="urn:Ultimo.Framework.Workflow-mapping">
	<Security EditLevel="10" ViewLevel="20" UserContentLevel="30" />
	<Description>Toggle UltimoSettings.ManageStockPerWarehouse update stock per warehouse.</Description>
	<Properties>
		<Property	Name="Articles"					Type="List[Article]"			Accessor="Optional"	Direction="In"		Default="Empty"	Comment="List of Articles" />
		<Property	Name="Sites"					Type="List[Site]"				Accessor="Optional"	Direction="In"		Default="Empty"	Comment="List of Sites" />

		<Property	Name="ArticleWarehouses"		Type="List[ArticleWarehouse]"	Accessor="Internal"						Default="Empty" />
		<Property	Name="WebShopArticleWarehouse"	Type="ArticleWarehouse"			Accessor="Internal" />
	</Properties>
	<Execution>
		<UserContent Name="Pre" />

		<Transaction>
			<ForEach Name="Article" In="${Articles}" As="Article">
				<GetList Name="Get Article Warehouses" Type="ArticleWarehouse" OutputProperty="${ArticleWarehouses}" OrderBy="Id.Warehouse.Id" OrderDirection="Ascending">
					<Filters>
						<PropertyFilter	PropertyName="Id.Article"	Operator="="		PropertyValue="${Article}" />
					</Filters>
				</GetList>

				<Choose Name="StockLevelPerSite">
					<When Name="When StockLevelPerSite" Condition="#{UltimoSettings.StockLevelPerSite} == True">
						<ForEach Name="Site" In="${Sites}" As="Site">
							<GetList Name="Get Article Warehouses" Type="ArticleWarehouse" OutputProperty="${ArticleWarehouses}" OrderBy="Id.Warehouse.Id" OrderDirection="Ascending">
								<Filters>
									<PropertyFilter	PropertyName="Id.Article"	Operator="="		PropertyValue="${Article}" />
									<PropertyFilter	PropertyName="Site"			Operator="="		PropertyValue="${Site}" />
								</Filters>
							</GetList>

							<WorkflowCall Name="Article_FindWebShopWarehouse" WorkflowName="Article_FindWebShopWarehouse">
								<Parameter	Name="Article"						Direction="In"		Value="${Article}" />
								<Parameter	Name="PossibleArticleWarehouses"	Direction="In"		Value="${ArticleWarehouses}" />
								<Parameter	Name="Site"							Direction="In"		Value="${Site}" />
								<Parameter	Name="WebShopArticleWarehouse"		Direction="Out"										OutputProperty="${WebShopArticleWarehouse}" />
							</WorkflowCall>

							<When Name="WebShopArticleWarehouse" Condition="${WebShopArticleWarehouse} != Empty">
								<Assign Name="Set WebShopWarehouse" Property="${WebShopArticleWarehouse.WebShopWarehouse}" Value="True" />

								<WorkflowCall Name="ArticleWarehouse_UpdateWebShopWarehouse" WorkflowName="ArticleWarehouse_UpdateWebShopWarehouse">
									<Parameter	Name="ArticleWarehouse"	Direction="In"		Value="${WebShopArticleWarehouse}" />
								</WorkflowCall>
							</When>
						</ForEach>
					</When>

					<Otherwise Name="Not per Site">
						<GetList Name="Get Article Warehouses" Type="ArticleWarehouse" OutputProperty="${ArticleWarehouses}" OrderBy="Id.Warehouse.Id" OrderDirection="Ascending">
							<Filters>
								<PropertyFilter	PropertyName="Id.Article"	Operator="="		PropertyValue="${Article}" />
							</Filters>
						</GetList>

						<WorkflowCall Name="Article_FindWebShopWarehouse" WorkflowName="Article_FindWebShopWarehouse">
							<Parameter	Name="Article"						Direction="In"		Value="${Article}" />
							<Parameter	Name="PossibleArticleWarehouses"	Direction="In"		Value="${ArticleWarehouses}" />
							<Parameter	Name="WebShopArticleWarehouse"		Direction="Out"										OutputProperty="${WebShopArticleWarehouse}" />
						</WorkflowCall>

						<When Name="WebShopArticleWarehouse" Condition="${WebShopArticleWarehouse} != Empty">
							<Assign Name="Set WebShopWarehouse" Property="${WebShopArticleWarehouse.WebShopWarehouse}" Value="True" />

							<WorkflowCall Name="ArticleWarehouse_UpdateWebShopWarehouse" WorkflowName="ArticleWarehouse_UpdateWebShopWarehouse">
								<Parameter	Name="ArticleWarehouse"	Direction="In"		Value="${WebShopArticleWarehouse}" />
							</WorkflowCall>
						</When>
					</Otherwise>
				</Choose>
			</ForEach>
		</Transaction>

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

Article_ActionField1106_UpdateWarehousebewerken

Beschrijving: Toggle UltimoSettings.ManageStockPerWarehouse update warehouse.

<Workflow Name="Article_ActionField1106_UpdateWarehouse" Version="2025.07.28" WorkflowType="Standard" AllowUserInteraction="False" xmlns="urn:Ultimo.Framework.Workflow-mapping">
	<Security EditLevel="10" ViewLevel="20" UserContentLevel="30" />
	<Description>Toggle UltimoSettings.ManageStockPerWarehouse update warehouse.</Description>
	<Properties>
		<Property	Name="Article"								Type="Article"									Accessor="Internal" />
		<Property	Name="ArticlesWithoutArticleWarehouse"		Type="List[Article]"							Accessor="Internal" />
		<Property	Name="ArticleWarehouseWithPurchaseIsYes"	Type="Int64"									Accessor="Internal" />
		<Property	Name="FirstArticleWarehouse"				Type="ArticleWarehouse"							Accessor="Internal"						Default="Empty"	Comment="FirstArticleWarehouse where stock is updated" />
		<Property	Name="GroupedArticleWarehousesByArticle"	Type="GroupedList[Article,ArticleWarehouse]"	Accessor="Internal"										Comment="Only search article warehouses once so provide them all" />
		<Property	Name="MaximumStock"							Type="Decimal"									Accessor="Internal" />
		<Property	Name="PurchaseLevel"						Type="Decimal"									Accessor="Internal" />
		<Property	Name="ReservedQuantity"						Type="Decimal"									Accessor="Internal" />
	</Properties>
	<Execution>
		<UserContent Name="Pre" />

		<Transaction>
			<GetList Name="Get Articles Without Warehouse" Type="Article" OutputProperty="${ArticlesWithoutArticleWarehouse}" OrderBy="Id" OrderDirection="Ascending">
				<Filters>
					<NotFilter>
						<InFilter PropertyName="Id">
							<Subquery Type="ArticleWarehouse">
								<Properties>
									<Property Name="Id.Article" Alias="articleid" Type="Property" />
								</Properties>
							</Subquery>
						</InFilter>
					</NotFilter>
				</Filters>
			</GetList>

			<ForEach Name="ArticleWithoutWarehouse" In="${ArticlesWithoutArticleWarehouse}" As="ArticleWithoutWarehouse">
				<WorkflowCall Name="Article_ResetArticlePurchase" WorkflowName="Article_ResetArticlePurchase">
					<Parameter	Name="Article"	Direction="In"		Value="${ArticleWithoutWarehouse}" />
				</WorkflowCall>
			</ForEach>

			<GetGroupedList Name="Get GroupedArticleWarehousesByArticle" Type="ArticleWarehouse" OutputProperty="${GroupedArticleWarehousesByArticle}" GroupBy="Id.Article" OrderBy="Id.Warehouse.Id" OrderDirection="Ascending" />

			<ForEach Name="ForEach GroupedArticleWarehousesByArticle" In="${GroupedArticleWarehousesByArticle}" As="GroupedArticleWarehouse">
				<Assign Name="Use internal variable for readability" Property="${Article}" Value="${GroupedArticleWarehouse.Key}" />

				<Choose Name="ManageStockPerWarehouse">
					<When Name="When Stock By ArticleWarehouse is False" Condition="#{UltimoSettings.ManageStockPerWarehouse} == False">
						<Assign Name="Reset FirstArticleWarehouse" Property="${FirstArticleWarehouse}" Value="Empty" />

						<ForEach Name="ArticleWarehouse" In="${GroupedArticleWarehouse}" As="ArticleWarehouse">
							<Assign Name="Set ArticleWarehouse.PurchaseLevel" Property="${ArticleWarehouse.PurchaseLevel}" Value="0" />
							<Assign Name="Set ArticleWarehouse.MaximumStock" Property="${ArticleWarehouse.MaximumStock}" Value="0" />
							<Assign Name="Set ArticleWarehouse.Purchase" Property="${ArticleWarehouse.Purchase}" Value="${Article.Purchase}" />

							<When Name="FirstArticleWarehouse empty" Condition="${FirstArticleWarehouse} == Empty">
								<Assign Name="Set FirstArticleWarehouse" Property="${FirstArticleWarehouse}" Value="${ArticleWarehouse}" />
								<Assign Name="Set FirstArticleWarehouse.PurchaseLevel" Property="${FirstArticleWarehouse.PurchaseLevel}" Value="${Article.PurchaseLevel}" />
								<Assign Name="Set FirstArticleWarehouse.MaximumStock" Property="${FirstArticleWarehouse.MaximumStock}" Value="${Article.MaximumStock}" />
								<Assign Name="Set FirstArticleWarehouse.ReservedQuantity" Property="${FirstArticleWarehouse.ReservedQuantity}" Value="${Article.ReservedQuantity}" />
								<Assign Name="Set FirstArticleWarehouse.JobMaterialWarehouse" Property="${FirstArticleWarehouse.JobMaterialWarehouse}" Value="True" />

								<When Name="Article.ShowInWebShop" Condition="${Article.ShowInWebShop} == True">
									<Assign Name="Set FirstArticleWarehouse.WebShopWarehouse" Property="${FirstArticleWarehouse.WebShopWarehouse}" Value="True" />
								</When>
							</When>
						</ForEach>

						<WorkflowCall Name="Article_ResetArticlePurchase" WorkflowName="Article_ResetArticlePurchase">
							<Parameter	Name="Article"	Direction="In"		Value="${Article}" />
						</WorkflowCall>
					</When>


					<When Name="When Stock By ArticleWarehouse is True" Condition="#{UltimoSettings.ManageStockPerWarehouse} == True">
						<GetSum Name="Get PurchaseLevel" Type="ArticleWarehouse" OutputProperty="${PurchaseLevel}" PropertyName="PurchaseLevel">
							<Filters>
								<PropertyFilter	PropertyName="Id.Article"	Operator="="		PropertyValue="${Article}" />
							</Filters>
						</GetSum>

						<GetSum Name="Get MaximumStock" Type="ArticleWarehouse" OutputProperty="${MaximumStock}" PropertyName="MaximumStock">
							<Filters>
								<PropertyFilter	PropertyName="Id.Article"	Operator="="		PropertyValue="${Article}" />
							</Filters>
						</GetSum>

						<GetSum Name="Get ReservedQuantity" Type="ArticleWarehouse" OutputProperty="${ReservedQuantity}" PropertyName="ReservedQuantity">
							<Filters>
								<PropertyFilter	PropertyName="Id.Article"	Operator="="		PropertyValue="${Article}" />
							</Filters>
						</GetSum>

						<GetCount Name="Count ArticleWarehouse With Purchase IsYes" Type="ArticleWarehouse" OutputProperty="${ArticleWarehouseWithPurchaseIsYes}">
							<Filters>
								<PropertyFilter	PropertyName="Id.Article"	Operator="="		PropertyValue="${Article}" />
								<PropertyFilter	PropertyName="Purchase"		Operator="="		PropertyValue="True" />
							</Filters>
						</GetCount>

						<ForEach Name="ArticleWarehouse" In="${GroupedArticleWarehouse}" As="ArticleWarehouse">
							<Assign Name="Set ArticleWarehouse.PurchaseLevel" Property="${ArticleWarehouse.PurchaseLevel}" Value="0" />
							<Assign Name="Set ArticleWarehouse.MaximumStock" Property="${ArticleWarehouse.MaximumStock}" Value="0" />
							<Assign Name="Set ArticleWarehouse.ReservedQuantity" Property="${ArticleWarehouse.ReservedQuantity}" Value="0" />
							<Assign Name="Set ArticleWarehouse.Purchase" Property="${ArticleWarehouse.Purchase}" Value="False" />
							<Assign Name="Set ArticleWarehouse.JobMaterialWarehouse" Property="${ArticleWarehouse.JobMaterialWarehouse}" Value="False" />

							<Comment><![CDATA[No need to clear warehouses from purchaserequestlines]]></Comment>

							<Assign Name="Clear WebShopWarehouse" Property="${ArticleWarehouse.WebShopWarehouse}" Value="False" />
						</ForEach>

						<Assign Name="Set Article.Purchase" Property="${Article.Purchase}" Value="False" />

						<When Name="One warehouse with purchase is true" Condition="${ArticleWarehouseWithPurchaseIsYes} &gt; 0">
							<Assign Name="Set Article.Purchase" Property="${Article.Purchase}" Value="True" />
						</When>

						<Assign Name="Set Article.ArtPurchLevel" Property="${Article.PurchaseLevel}" Value="${PurchaseLevel}" />
						<Assign Name="Set Article.ArtMaximum" Property="${Article.MaximumStock}" Value="${MaximumStock}" />
						<Assign Name="Set Article.ReservedQuantity" Property="${Article.ReservedQuantity}" Value="${ReservedQuantity}" />
					</When>
				</Choose>
			</ForEach>
		</Transaction>

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

Article_ActionField1106_UpdateWarehouseAndSitebewerken

Beschrijving: Toggle UltimoSettings.ManageStockPerWarehouse update warehouse and site.

<Workflow Name="Article_ActionField1106_UpdateWarehouseAndSite" Version="2025.07.28" WorkflowType="Standard" AllowUserInteraction="False" xmlns="urn:Ultimo.Framework.Workflow-mapping">
	<Security EditLevel="10" ViewLevel="20" UserContentLevel="30" />
	<Description>Toggle UltimoSettings.ManageStockPerWarehouse update warehouse and site.</Description>
	<Properties>
		<Property	Name="Sites"								Type="List[Site]"				Accessor="Optional"	Direction="In"		Default="Empty"	Comment="List of Articles" />

		<Property	Name="ArticleSites"							Type="List[ArticleSite]"		Accessor="Internal"						Default="Empty" />
		<Property	Name="ArticleWarehouses"					Type="List[ArticleWarehouse]"	Accessor="Internal"						Default="Empty" />
		<Property	Name="ArticleWarehouseWithPurchaseIsYes"	Type="Int64"					Accessor="Internal" />
		<Property	Name="FirstArticleWarehouse"				Type="ArticleWarehouse"			Accessor="Internal"						Default="Empty"	Comment="FirstArticleWarehouse where stock is updated" />
		<Property	Name="MaximumStock"							Type="Decimal"					Accessor="Internal" />
		<Property	Name="PurchaseLevel"						Type="Decimal"					Accessor="Internal" />
		<Property	Name="ReservedQuantity"						Type="Decimal"					Accessor="Internal" />
	</Properties>
	<Execution>
		<UserContent Name="Pre" />

		<Transaction>
			<ForEach Name="All Sites" In="${Sites}" As="Site">
				<GetList Name="Get ArticleSites" Type="ArticleSite" OutputProperty="${ArticleSites}" OrderBy="Id" OrderDirection="Ascending">
					<Filters>
						<PropertyFilter	PropertyName="Id.Site"	Operator="="		PropertyValue="${Site}" />
					</Filters>
				</GetList>

				<When Name="When Stock By ArticleWarehouse is False" Condition="#{UltimoSettings.ManageStockPerWarehouse} == False">
					<ForEach Name="All ArticleSites" In="${ArticleSites}" As="ArticleSite">
						<GetList Name="Get ArticleWarehouses" Type="ArticleWarehouse" OutputProperty="${ArticleWarehouses}" OrderBy="Id.Warehouse.Id" OrderDirection="Ascending">
							<Filters>
								<PropertyFilter	PropertyName="Id.Article"	Operator="="		PropertyValue="${ArticleSite.Id.Article}" />
								<PropertyFilter	PropertyName="Site"			Operator="="		PropertyValue="${Site}" />
							</Filters>
						</GetList>

						<ForEach Name="All ArticleWarehouses" In="${ArticleWarehouses}" As="ArticleWarehouse">
							<Assign Name="Set ArticleWarehouse.PurchaseLevel" Property="${ArticleWarehouse.PurchaseLevel}" Value="0" />
							<Assign Name="Set ArticleWarehouse.MaximumStock" Property="${ArticleWarehouse.MaximumStock}" Value="0" />
							<Assign Name="Set ArticleWarehouse.Purchase" Property="${ArticleWarehouse.Purchase}" Value="${ArticleSite.Purchase}" />
						</ForEach>

						<When Name="at least one Articlewarehouse" Condition="${ArticleWarehouses.Count} &gt; 0">
							<Assign Name="Set FirstArticleWarehouse" Property="${FirstArticleWarehouse}" Value="=#elementat(${ArticleWarehouses}, 0)" />
							<Assign Name="Set FirstArticleWarehouse.PurchaseLevel" Property="${FirstArticleWarehouse.PurchaseLevel}" Value="${ArticleSite.PurchaseLevel}" />
							<Assign Name="Set FirstArticleWarehouse.MaximumStock" Property="${FirstArticleWarehouse.MaximumStock}" Value="${ArticleSite.MaximumStock}" />
							<Assign Name="Set FirstArticleWarehouse.ReservedQuantity" Property="${FirstArticleWarehouse.ReservedQuantity}" Value="${ArticleSite.ReservedQuantity}" />
							<Assign Name="Set FirstArticleWarehouse.JobMaterialWarehouse" Property="${FirstArticleWarehouse.JobMaterialWarehouse}" Value="True" />

							<When Name="Article.ShowInWebShop" Condition="${ArticleSite.Id.Article.ShowInWebShop} == True">
								<Assign Name="Set FirstArticleWarehouse.WebShopWarehouse" Property="${FirstArticleWarehouse.WebShopWarehouse}" Value="True" />
							</When>
						</When>

						<Assign Name="Set ArticleSite.Purchase" Property="${ArticleSite.Purchase}" Value="False" />
						<Assign Name="Set ArticleSite.ArtPurchLevel" Property="${ArticleSite.PurchaseLevel}" Value="0" />
						<Assign Name="Set ArticleSite.ArtMaximum" Property="${ArticleSite.MaximumStock}" Value="0" />
						<Assign Name="Set Article.Purchase" Property="${ArticleSite.Id.Article.Purchase}" Value="False" />
						<Assign Name="Set Article.ArtPurchLevel" Property="${ArticleSite.Id.Article.PurchaseLevel}" Value="0" />
						<Assign Name="Set Article.ArtMaximum" Property="${ArticleSite.Id.Article.MaximumStock}" Value="0" />
					</ForEach>
				</When>

				<When Name="When Stock By ArticleWarehouse is True" Condition="#{UltimoSettings.ManageStockPerWarehouse} == True">
					<ForEach Name="All ArticleSites" In="${ArticleSites}" As="ArticleSite">
						<GetSum Name="Get PurchaseLevel" Type="ArticleWarehouse" OutputProperty="${PurchaseLevel}" PropertyName="PurchaseLevel">
							<Filters>
								<PropertyFilter	PropertyName="Id.Article"	Operator="="		PropertyValue="${ArticleSite.Id.Article}" />
								<PropertyFilter	PropertyName="Site"			Operator="="		PropertyValue="${Site}" />
							</Filters>
						</GetSum>

						<GetSum Name="Get MaximumStock" Type="ArticleWarehouse" OutputProperty="${MaximumStock}" PropertyName="MaximumStock">
							<Filters>
								<PropertyFilter	PropertyName="Id.Article"	Operator="="		PropertyValue="${ArticleSite.Id.Article}" />
								<PropertyFilter	PropertyName="Site"			Operator="="		PropertyValue="${Site}" />
							</Filters>
						</GetSum>

						<GetSum Name="Get ReservedQuantity" Type="ArticleWarehouse" OutputProperty="${ReservedQuantity}" PropertyName="ReservedQuantity">
							<Filters>
								<PropertyFilter	PropertyName="Id.Article"	Operator="="		PropertyValue="${ArticleSite.Id.Article}" />
								<PropertyFilter	PropertyName="Site"			Operator="="		PropertyValue="${Site}" />
							</Filters>
						</GetSum>

						<GetCount Name="Count ArticleWarehouse With Purchase IsYes" Type="ArticleWarehouse" OutputProperty="${ArticleWarehouseWithPurchaseIsYes}">
							<Filters>
								<PropertyFilter	PropertyName="Id.Article"	Operator="="		PropertyValue="${ArticleSite.Id.Article}" />
								<PropertyFilter	PropertyName="Purchase"		Operator="="		PropertyValue="True" />
								<PropertyFilter	PropertyName="Site"			Operator="="		PropertyValue="${Site}" />
							</Filters>
						</GetCount>

						<GetList Name="Get ArticleWarehouses" Type="ArticleWarehouse" OutputProperty="${ArticleWarehouses}" OrderBy="Id" OrderDirection="Ascending">
							<Filters>
								<PropertyFilter	PropertyName="Id.Article"	Operator="="		PropertyValue="${ArticleSite.Id.Article}" />
								<PropertyFilter	PropertyName="Site"			Operator="="		PropertyValue="${Site}" />
							</Filters>
						</GetList>

						<ForEach Name="All ArticlesArticleWarehouses" In="${ArticleWarehouses}" As="ArticleWarehouse">
							<Assign Name="Set ArticleWarehouse.PurchaseLevel" Property="${ArticleWarehouse.PurchaseLevel}" Value="0" />
							<Assign Name="Set ArticleWarehouse.MaximumStock" Property="${ArticleWarehouse.MaximumStock}" Value="0" />
							<Assign Name="Set ArticleWarehouse.ReservedQuantity" Property="${ArticleWarehouse.ReservedQuantity}" Value="0" />
							<Assign Name="Set ArticleWarehouse.Purchase" Property="${ArticleWarehouse.Purchase}" Value="False" />
							<Assign Name="Set ArticleWarehouse.JobMaterialWarehouse" Property="${ArticleWarehouse.JobMaterialWarehouse}" Value="False" />

							<Comment><![CDATA[No need to clear warehouses from purchaserequestlines]]></Comment>

							<Assign Name="Clear WebShopWarehouse" Property="${ArticleWarehouse.WebShopWarehouse}" Value="False" />
						</ForEach>

						<Assign Name="Set ArticleSite.Purchase" Property="${ArticleSite.Purchase}" Value="False" />

						<When Name="One warehouse with purchase is true" Condition="${ArticleWarehouseWithPurchaseIsYes} &gt; 0">
							<Assign Name="Set ArticleSite.Purchase" Property="${ArticleSite.Purchase}" Value="True" />
						</When>

						<Assign Name="Set ArticleSite.ArtPurchLevel" Property="${ArticleSite.PurchaseLevel}" Value="${PurchaseLevel}" />
						<Assign Name="Set ArticleSite.ArtMaximum" Property="${ArticleSite.MaximumStock}" Value="${MaximumStock}" />
						<Assign Name="Set ArticleSite.ReservedQuantity" Property="${ArticleSite.ReservedQuantity}" Value="${ReservedQuantity}" />
					</ForEach>
				</When>
			</ForEach>
		</Transaction>

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