Categorie: reference
Bijgewerkt: 2026-04-08
actionfield workflow actionfield1068
ActionField1068
Beschrijving: Create ObjectBatch(es) for JobMaterial. Custom: Nee
Propertiesbewerken
| Property | Type | Accessor |
|---|---|---|
| JobMaterial | JobMaterial | Root |
XMLbewerken
<Workflow Name="ActionField1068" Version="2025.07.28" WorkflowType="Standard" xmlns="urn:Ultimo.Framework.Workflow-mapping">
<Security EditLevel="10" ViewLevel="20" UserContentLevel="30" />
<Description>Create ObjectBatch(es) for JobMaterial.</Description>
<Properties>
<Property Name="JobMaterial" Type="JobMaterial" Accessor="Root" Direction="In" />
<Property Name="ArticleWarehouseLocation" Type="ArticleWarehouseLocation" Accessor="Internal" />
<Property Name="FoundWarehouseLocation" Type="WarehouseLocation" Accessor="Internal" />
<Property Name="JobMaterialQuantityOutUpdated" Type="Boolean" Accessor="Internal" Default="False" />
<Property Name="ObjectBatchesToDelete" Type="List[ObjectBatch]" Accessor="Internal" />
<Property Name="OriginalQuantityOut" Type="Decimal" Accessor="Internal" Default="${JobMaterial.QuantityOut}" />
</Properties>
<Settings>
<SettingsGroup Name="ObjectBatch">
<Setting Name="UpdateDomainObjectQuantityAfterDelete" Type="Boolean" Value="False" />
</SettingsGroup>
</Settings>
<Execution>
<UserContent Name="Pre" />
<Assign Name="Set Update To False" Property="#{Settings.ObjectBatch.UpdateDomainObjectQuantityAfterDelete}" Value="False" />
<Transaction>
<When Name="QuantityOut" Condition="${JobMaterial.QuantityOut} > 0 && ${JobMaterial.WarehouseLocation.IssueLocation?} == False">
<Assign Name="Wrong WarehouseLocation" Property="${JobMaterial.WarehouseLocation}" Value="Empty" />
</When>
<When Name="QuantityIn" Condition="${JobMaterial.QuantityIn} > 0 && ${JobMaterial.WarehouseLocation.ReceiptLocation?} == False">
<Assign Name="Wrong WarehouseLocation" Property="${JobMaterial.WarehouseLocation}" Value="Empty" />
</When>
</Transaction>
<WorkflowCall Name="ActionField1068_JobMaterial_CreateObjectBatch" WorkflowName="JobMaterial_CreateObjectBatch">
<Parameter Name="JobMaterial" Direction="In" Value="${JobMaterial}" />
<Parameter Name="RecalculateRaise" Direction="In" Value="=${JobMaterial.Id.Job.InternalChargeMethod.ForMaterials?} == InvoiceActualCost" />
</WorkflowCall>
<When Name="Check if not inventory method" Condition="${JobMaterial.Article.InventoryMethod?} == Empty">
<Transaction>
<GetList Name="Get ObjectBatches to delete" Type="ObjectBatch" OutputProperty="${ObjectBatchesToDelete}" OrderBy="Id" OrderDirection="Ascending">
<Filters>
<PropertyFilter PropertyName="JobMaterial" Operator="=" PropertyValue="${JobMaterial}" />
</Filters>
</GetList>
<ForEach Name="Loop ObjectBatchesToDelete" In="${ObjectBatchesToDelete}" As="ObjectBatchToDelete">
<DeleteObject Name="Delete ObjectBatch" DomainObject="${ObjectBatchToDelete}" />
</ForEach>
<When Name="article available" Condition="${JobMaterial.Article} != Empty && ${JobMaterial.WarehouseLocation} == Empty">
<WorkflowCall Name="JobMaterial_GetWarehouseAndArticleWarehouseLocation" WorkflowName="JobMaterial_GetWarehouseAndArticleWarehouseLocation">
<Parameter Name="JobMaterial" Direction="In" Value="${JobMaterial}" />
</WorkflowCall>
</When>
</Transaction>
</When>
<UserContent Name="Post" />
</Execution>
</Workflow>