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

ActionField087

Beschrijving: Approve Receipt (status must be Created or PreApproved). Custom: Nee

Propertiesbewerken

Property Type Accessor
Receipt Receipt Root

XMLbewerken

<Workflow Name="ActionField087" Version="2025.07.28" WorkflowType="Standard" xmlns="urn:Ultimo.Framework.Workflow-mapping">
	<Security EditLevel="10" ViewLevel="20" UserContentLevel="30" />
	<Description>Approve Receipt (status must be Created or PreApproved).</Description>
	<Properties>
		<Property	Name="Receipt"									Type="Receipt"			Accessor="Root"		Direction="In" />

		<Property	Name="QuestionMoreReceivedThanPurchasedAllowed"	Type="RequestResult"	Accessor="Internal" />
	</Properties>
	<Settings>
		<SettingsGroup Name="ReceiptLine">
			<Setting	Name="ApproveMethod"	Type="ReceiptMethod"	Value="ApproveReceivedAll" />
		</SettingsGroup>
	</Settings>
	<Execution>
		<UserContent Name="Pre" />

		<Validation Name="ReceiptStatus OK?" Condition="${Receipt.Status} == ReceiptStatus.Created || ${Receipt.Status} == ReceiptStatus.PreApproved" MessageCode="0555">
			<Parameter	Name="Receipt"	Direction="In"		Value="${Receipt}" />
		</Validation>

		<When Name="Receive more than purchased allowed" Condition="#{UltimoSettings.MoreReceivedThanPurchasedAllowed} == True">
			<ForEach Name="Foreach ReceiptLine" In="${Receipt.Lines}" As="ReceiptLine" Condition="${ReceiptLine.Status} == ReceiptLineStatus.Created || ${ReceiptLine.Status} == ReceiptLineStatus.PreApproved || ${ReceiptLine.Status} == ReceiptLineStatus.PurchaseLineAdded">
				<When Name="Too much received" Condition="${ReceiptLine.ReceivedQuantity} &gt; ${ReceiptLine.PurchaseLine.ToReceiveQuantity}">
					<Question Name="Received more than purchased allowed, continue?" Type="YesNo" MessageCode="1454" Default="Yes" OutputProperty="${QuestionMoreReceivedThanPurchasedAllowed}">
						<Parameter	Name="ReceiptLine"	Direction="In"		Value="${ReceiptLine}" />
					</Question>

					<When Name="Received (or more) » Answer is yes" Condition="${QuestionMoreReceivedThanPurchasedAllowed} == No">
						<Stop Name="Stop" Mode="Abort" />
					</When>
				</When>
			</ForEach>
		</When>

		<Transaction>
			<ChangeStatus Name="Approve Receipt" DomainObject="${Receipt}" NewStatus="ReceiptStatus.Approved" />
		</Transaction>

		<UserContent Name="Post" />

		<Message Name="ummRECEIPTAPPROVEDRCVDALL" MessageCode="0581">
			<Parameter	Name="Receipt"	Direction="In"		Value="${Receipt}" />
		</Message>
	</Execution>
</Workflow>