Categorie: reference
Bijgewerkt: 2026-04-08
actionfield workflow actionfield443
ActionField443
Beschrijving: Creates Purchases from PurchaseRequestLines belonging to the given PurchaseAdvice. Custom: Nee
Propertiesbewerken
| Property | Type | Accessor |
|---|---|---|
| PurchaseAdvice | PurchaseAdvice | Root |
| ContextPurchase | Context | Optional |
| ContextPurchaseLine | Context | Optional |
| DontPrintPurchase | Boolean | Optional |
| GetGroupPurchaseRequestLineByProjectId | Boolean | Optional |
| PurchaseStatus | Status | Optional |
XMLbewerken
<Workflow Name="ActionField443" Version="2025.07.28" WorkflowType="Standard" xmlns="urn:Ultimo.Framework.Workflow-mapping">
<Security EditLevel="10" ViewLevel="20" UserContentLevel="30" />
<Description>Creates Purchases from PurchaseRequestLines belonging to the given PurchaseAdvice.</Description>
<Properties>
<Property Name="PurchaseAdvice" Type="PurchaseAdvice" Accessor="Root" Direction="In" />
<Property Name="ContextPurchase" Type="Context" Accessor="Optional" Direction="In" Default="PurchaseContext.Purchase" Comment="Create Purchase with this context" />
<Property Name="ContextPurchaseLine" Type="Context" Accessor="Optional" Direction="In" Default="PurchaseLineContext.Purchase" Comment="Create PurchaseLine with this context" />
<Property Name="DontPrintPurchase" Type="Boolean" Accessor="Optional" Direction="In" Default="False" Comment="Ask if created Purchases must be printed" />
<Property Name="GetGroupPurchaseRequestLineByProjectId" Type="Boolean" Accessor="Optional" Direction="In" Comment="Not in use" />
<Property Name="PurchaseStatus" Type="Status" Accessor="Optional" Direction="In" Default="PurchaseStatus.Conceptual" Comment="Create Purchase with this status" />
<Property Name="CreatedPurchases" Type="List[Purchase]" Accessor="Internal" />
<Property Name="OrderedPurchaseRequestLines" Type="List[PurchaseRequestLine]" Accessor="Internal" />
<Property Name="Purchase" Type="Purchase" Accessor="Internal" />
<Property Name="PurchaseRequestLineWithoutVendorCount" Type="Int64" Accessor="Internal" />
<Property Name="SelectedPurchaseRequestLinesCount" Type="Int64" Accessor="Internal" />
</Properties>
<Execution>
<UserContent Name="Pre" />
<Transaction>
<Validation Name="Validate status" Condition="${PurchaseStatus} == PurchaseStatus.Created || ${PurchaseStatus} == PurchaseStatus.Approved || ${PurchaseStatus} == PurchaseStatus.Active || ${PurchaseStatus} == PurchaseStatus.Conceptual" MessageCode="0656">
<Parameter Name="PurchaseAdvice" Direction="In" Value="${PurchaseAdvice}" />
</Validation>
<GetCount Name="Count PurchaseRequestLines without Vendor" Type="PurchaseRequestLine" OutputProperty="${PurchaseRequestLineWithoutVendorCount}">
<Filters>
<CombinedFilter FilterOperator="And">
<PropertyFilter PropertyName="PurchaseAdvice" Operator="=" PropertyValue="${PurchaseAdvice}" />
<PropertyFilter PropertyName="Selected" Operator="=" PropertyValue="True" />
<PropertyEmptyFilter PropertyName="Vendor" />
</CombinedFilter>
</Filters>
</GetCount>
<Validation Name="Check PurchaseRequestLines without Vendor" Condition="${PurchaseRequestLineWithoutVendorCount} == 0" MessageCode="0992">
<Parameter Name="PurchaseAdvice" Direction="In" Value="${PurchaseAdvice}" />
<Parameter Name="PurchaseRequestLineCount" Direction="In" Value="${PurchaseRequestLineWithoutVendorCount}" />
</Validation>
<GetCount Name="Count selected PurchaseRequestLines" Type="PurchaseRequestLine" OutputProperty="${SelectedPurchaseRequestLinesCount}">
<Filters>
<CombinedFilter FilterOperator="And">
<PropertyFilter PropertyName="PurchaseAdvice" Operator="=" PropertyValue="${PurchaseAdvice}" />
<PropertyFilter PropertyName="Selected" Operator="=" PropertyValue="True" />
</CombinedFilter>
</Filters>
</GetCount>
<Validation Name="Validate selected PurchaseRequestLines" Condition="${SelectedPurchaseRequestLinesCount} > 0" MessageCode="1902">
<Parameter Name="PurchaseAdvice" Direction="In" Value="${PurchaseAdvice}" />
</Validation>
<Command Name="PurchaseRequestLine_GetOrderedList" CommandName="PurchaseRequestLine_GetOrderedList">
<Parameter Name="PurchaseAdvice" Direction="In" Value="${PurchaseAdvice}" />
<Parameter Name="PurchaseRequestLineList" Direction="Out" OutputProperty="${OrderedPurchaseRequestLines}" />
</Command>
<WorkflowCall Name="PurchaseAdvice_CreatePurchaseWithPurchaseLine" WorkflowName="PurchaseAdvice_CreatePurchaseWithPurchaseLine">
<Parameter Name="ContextPurchase" Direction="In" Value="${ContextPurchase}" />
<Parameter Name="ContextPurchaseLine" Direction="In" Value="${ContextPurchaseLine}" />
<Parameter Name="OrderedPurchaseRequestLines" Direction="In" Value="${OrderedPurchaseRequestLines}" />
<Parameter Name="PurchaseAdvice" Direction="In" Value="${PurchaseAdvice}" />
<Parameter Name="PurchaseStatus" Direction="In" Value="${PurchaseStatus}" />
<Parameter Name="CreatedPurchases" Direction="Out" OutputProperty="${CreatedPurchases}" />
<Parameter Name="Purchase" Direction="Out" OutputProperty="${Purchase}" />
</WorkflowCall>
</Transaction>
<UserContent Name="Post" />
<When Name="Purchase is not empty" Condition="${CreatedPurchases} != Empty">
<Message Name="ummPURCHADVICE2PURCHCREATED" MessageCode="0538">
<Parameter Name="PurchaseAdvice" Direction="In" Value="${PurchaseAdvice}" />
<Parameter Name="PurchaseCount" Direction="In" Value="${CreatedPurchases.Count}" />
</Message>
<When Name="There are PurchaseLines Created" Condition="${CreatedPurchases.Count} > 0">
<When Name="Purchase state is Create,Conceptual or Active" Condition="${Purchase.Status} == PurchaseStatus.Created || ${Purchase.Status} == PurchaseStatus.Conceptual || ${Purchase.Status} == PurchaseStatus.Active">
<When Name="Purchase must be printed" Condition="${DontPrintPurchase} == False">
<WorkflowCall Name="Purchase_Print" WorkflowName="Purchase_Print">
<Parameter Name="CreatedPurchases" Direction="In" Value="${CreatedPurchases}" />
<Parameter Name="Purchase" Direction="In" Value="${Purchase}" />
</WorkflowCall>
</When>
</When>
</When>
</When>
</Execution>
</Workflow>