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

ActionField1715

Beschrijving: Complete (or reset to not complete) a credit InternalCharge Custom: Nee

Propertiesbewerken

Property Type Accessor
InternalCharge InternalCharge Root

XMLbewerken

<Workflow Name="ActionField1715" Version="2025.07.28" WorkflowType="Standard" xmlns="urn:Ultimo.Framework.Workflow-mapping">
	<Security EditLevel="10" ViewLevel="20" UserContentLevel="30" />
	<Description>Complete (or reset to not complete) a credit InternalCharge</Description>
	<Properties>
		<Property	Name="InternalCharge"				Type="InternalCharge"			Accessor="Root"		Direction="In" />

		<Property	Name="CompleteCreditInternalCharge"	Type="RequestResult"			Accessor="Internal"						Default="Yes"								Comment="Continue completing the credit invoice, yes or no" />
		<Property	Name="InternalChargeLines"			Type="List[InternalChargeLine]"	Accessor="Internal" />
		<Property	Name="Now"							Type="DateTime"					Accessor="Internal"						Default="#{Environment.CurrentDateTime}" />
	</Properties>
	<Execution>
		<UserContent Name="Pre" />

		<Comment><![CDATA[ if the CreditInternalChargeCompleted is true, this means that it has just been set to true
			and after a negative answer to the question, must be reset]]></Comment>

		<When Name="is the flag CompletedCreditInternalCharge true" Condition="${InternalCharge.CreditInternalChargeCompleted} == True &amp;&amp; (${InternalCharge.Status} == InternalChargeStatus.Open || ${InternalCharge.Status} == InternalChargeStatus.Approved)">
			<Transaction>
				<GetList Name="get a list of lines having the IncludeInCorrectionInternalCharge flag set" Type="InternalChargeLine" OutputProperty="${InternalChargeLines}" OrderBy="Id" OrderDirection="Ascending">
					<Filters>
						<PropertyFilter	PropertyName="IncludeInCorrectionInternalCharge"	Operator="="		PropertyValue="True" />
						<PropertyFilter	PropertyName="Id.InternalCharge"					Operator="="		PropertyValue="${InternalCharge}" />
						<PropertyEmptyFilter PropertyName="CorrectionInternalChargeLine" />
					</Filters>
				</GetList>
			</Transaction>

			<When Name="if there are any of these lines, ask user if he wants to complete the credit invoice anyway" Condition="${InternalChargeLines.Count} &gt; 0">
				<Question Name="CompleteCreditInvoice" Type="YesNo" MessageCode="3416" Default="Yes" OutputProperty="${CompleteCreditInternalCharge}" />
			</When>

			<When Name="if yes" Condition="${CompleteCreditInternalCharge} == Yes">
				<Transaction>
					<Assign Name="set flag" Property="${InternalCharge.CreditInternalChargeCompleted}" Value="True" />
					<Assign Name="set Date" Property="${InternalCharge.CreditInternalChargeCompletedDate}" Value="${Now}" />
					<Assign Name="set Employee" Property="${InternalCharge.CreditInternalChargeCompletedEmployee}" Value="#{User.EmployeeId}" />
				</Transaction>

				<Stop Name="Stop" Mode="EndCurrent" />
			</When>
		</When>

		<Transaction>
			<Assign Name="reset flag" Property="${InternalCharge.CreditInternalChargeCompleted}" Value="False" />
			<Assign Name="reset Date" Property="${InternalCharge.CreditInternalChargeCompletedDate}" Value="Empty" />
			<Assign Name="reset Employee" Property="${InternalCharge.CreditInternalChargeCompletedEmployee}" Value="Empty" />
		</Transaction>

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