Categorie: reference
Bijgewerkt: 2026-04-08
actionfield workflow actionfield1830
ActionField1830
Beschrijving: Create stock count lines based on site, warehouse and abc code. Custom: Nee
Propertiesbewerken
| Property | Type | Accessor |
|---|---|---|
| StockCount | StockCount | Root |
XMLbewerken
<Workflow Name="ActionField1830" Version="2025.07.28" WorkflowType="Standard" xmlns="urn:Ultimo.Framework.Workflow-mapping">
<Security EditLevel="10" ViewLevel="20" UserContentLevel="30" />
<Description>Create stock count lines based on site, warehouse and abc code.</Description>
<Properties>
<Property Name="StockCount" Type="StockCount" Accessor="Root" Direction="In" />
<Property Name="ArticleWarehouseLocations" Type="List[ArticleWarehouseLocation]" Accessor="Internal" />
<Property Name="StockCountLine" Type="StockCountLine" Accessor="Internal" />
<Property Name="StockCountLines" Type="List[StockCountLine]" Accessor="Internal" />
</Properties>
<Execution>
<UserContent Name="Pre" />
<Transaction>
<GetList Name="Get Lines" Type="StockCountLine" OutputProperty="${StockCountLines}" OrderBy="Id.StockCount" OrderDirection="Ascending">
<Filters>
<PropertyFilter PropertyName="Id.StockCount" Operator="=" PropertyValue="${StockCount}" />
</Filters>
</GetList>
</Transaction>
<When Name="StockCount has lines?" Condition="${StockCountLines.Count} > 0">
<ContinuationQuestion Name="Delete StockCountLines" MessageCode="3820">
<Parameter Name="StockCount" Direction="In" Value="${StockCount}" />
</ContinuationQuestion>
</When>
<Transaction>
<ForEach Name="StockCountLine" In="${StockCountLines}" As="StockCountLineToRemove">
<DeleteObject Name="Remove object" DomainObject="${StockCountLineToRemove}" />
</ForEach>
<GetList Name="Get ArticleWarehouseLocations" Type="ArticleWarehouseLocation" OutputProperty="${ArticleWarehouseLocations}" OrderBy="DefaultIssueLocation" OrderDirection="Descending">
<Joins>
<Join Name="Id.WarehouseLocation" Alias="warehouseLocation" Type="InnerJoin" />
<Join Name="warehouseLocation.Id.Warehouse" Alias="warehouse" Type="InnerJoin" />
<Join Name="Id.Article" Alias="article" Type="InnerJoin" />
</Joins>
<Filters>
<WhenFilter Condition="${StockCount.Site} != Empty">
<PropertyFilter PropertyName="warehouse.Site" Operator="=" PropertyValue="${StockCount.Site}" />
</WhenFilter>
<WhenFilter Condition="${StockCount.Warehouse} != Empty">
<PropertyFilter PropertyName="warehouse.Id" Operator="=" PropertyValue="${StockCount.Warehouse}" />
</WhenFilter>
<WhenFilter Condition="${StockCount.AbcCodeId} != Empty">
<PropertyFilter PropertyName="AbcCodeId" Operator="=" PropertyValue="${StockCount.AbcCodeId}" />
</WhenFilter>
<PropertyFilter PropertyName="article.RegisterStock" Operator="=" PropertyValue="True" />
<PropertyFilter PropertyName="article.Context" Operator="=" PropertyValue="ArticleContext.Standard" />
<CombinedFilter FilterOperator="Or">
<PropertyEmptyFilter PropertyName="NextCountDate" />
<PropertyFilter PropertyName="NextCountDate" Operator="<=" PropertyValue="#{Environment.CurrentDateTime.Date}" />
</CombinedFilter>
<PropertyEmptyFilter PropertyName="article.InventoryMethod" />
</Filters>
</GetList>
<ForEach Name="ArticleWarehouseLocation" In="${ArticleWarehouseLocations}" As="ArticleWarehouseLocation">
<Insert Name="Create StockCountLine" ObjectType="StockCountLine" OutputProperty="${StockCountLine}">
<Parameter Name="Id.StockCount" Direction="In" Value="${StockCount}" />
<Parameter Name="Status" Direction="In" Value="StockCountLineStatus.Created" />
<Parameter Name="Article" Direction="In" Value="${ArticleWarehouseLocation.Id.Article}" />
<Parameter Name="WarehouseLocation" Direction="In" Value="${ArticleWarehouseLocation.Id.WarehouseLocation}" />
</Insert>
</ForEach>
</Transaction>
<UserContent Name="Post" />
</Execution>
</Workflow>