Transaction Element 

Description

The <Transaction> element is the starting and ending tag for each transaction. Transaction elements vary according to the configuration of each transaction. All of the possible elements of a transaction are listed in the table below, in the general order that they should appear in the transaction's XML configuration, with links to the topic explaining each element in detail.

Note:  This is not the same as the <Transaction> sub-element of several other business rules.

Transaction Element/Attribute Table

Element/Tag

Attribute

Definition

Element/Attribute Value

<Transaction>

 

 

This is the start and end element for the transaction.

 

<CopyBook>

 

See CopyBook element.

 

<EffectiveDate>

 

See EffectiveDate element.

 

<Allocation>

 

See Allocation element.

 

<AllocationFrom>

 

See AllocationFrom element.

 

<DefaultAllocation>

 

See DefaultAllocation element.

 

<FundAllocation>

 

See FundAllocation element.

 

<Valuation>

 

See Valuation element.

 

<Suspense>

 

See Suspense element.

 

<ValuesBlock>

 

See ValuesBlock element.

 

<Withholding>

 

See Withholding element.

 

<AllowComments>

 

See AllowComments element.

 

<Transitions >

 

See Transitions element.

 

<MultiSuspense>

 

See MultiSuspense element.

 

<FundLevel>

  See FundLevel Element.  

<Fields>

 

See Fields element.

 

<Actions>

 

See Actions element.

 

<Events>

 

See Events element.

 

<MultiFields>

 

See MultiFields element.

 

<Address>

 

See Address element.

 

<ScreenMath>

 

See ScreenMath element.

 

<Math>

 

See Math element.

 

<Validation>

 

See Validation element.

 

<Spawns>

 

See Spawns element.

 

<Buttons>   See Buttons element.  


XML Example

<Transaction>
<EffectiveDate STATUS="Enabled" TITLE="Next Subscription Date" TYPE="SYSTEM"/>
<Valuation>
<EffectiveDateNUVMustExist>No</EffectiveDateNUVMustExist>
<SystemDateNUVMustExist>No</SystemDateNUVMustExist>
</Valuation>
<FundLevel LEVEL="Child">
<Relation>
<Criteria NAME="BandVariable" DATATYPE="TEXT">Policy:BandVariable</Criteria>
</Relation>
</FundLevel>
<Fields>
<Field>
<Name>ModalFrequency</Name>
<Display>Fund Subscription Frequency</Display>
<DataType>Combo</DataType>
<Query TYPE="SQL">SELECT CodeValue, ShortDescription FROM AsCode 
WHERE CodeName = 'AsCodeMode' 
AND CodeValue IN ('01', '02', '04', '12') 
ORDER BY CodeValue DESC</Query>
</Field>
<Field>
<Name>TerminatePlan</Name>
<Display>Terminate Plan</Display>
<DataType>Check</DataType>
</Field>
<Field>
<Name>ConfirmationNumber</Name>
<Display>Confirmation Number</Display>
<DataType>Identifier</DataType>
<ClearOnRecycle>Yes</ClearOnRecycle>
<Hidden>Yes</Hidden>
<Parts>
<Part TYPE="VALUE">C</Part>
<Part TYPE="VALUE">N</Part>
<Part TYPE="SEQUENCE" FORMAT="0000000000">ConfirmationNumber</Part>
</Parts>
</Field>
</Fields>
<Math>
<MathVariables>
<MathVariable VARIABLENAME="ActivityEffectiveDate" TYPE="FIELD" DATATYPE="DATE">Activity:EffectiveDate</MathVariable>
<MathVariable VARIABLENAME="ModalFrequencyMV" TYPE="FIELD" DATATYPE="TEXT">Activity:ModalFrequency</MathVariable>
<MathVariable VARIABLENAME="NextSubscriptionSpawnDate" TYPE="FUNCTION" DATATYPE="DATE">NextMultipleMode(ActivityEffectiveDate, ModalFrequencyMV, 1)</MathVariable>
<MathVariable VARIABLENAME="SourceFundAllocationCount" TYPE="SQL" DATATYPE="INTEGER">SELECT COUNT(*) FROM AsAllocation WHERE RelatedGUID = '[Activity:PolicyGUID]' AND TypeCode = '13'</MathVariable>
<MathVariable VARIABLENAME="TargetFundAllocationCount" TYPE="SQL" DATATYPE="INTEGER">SELECT COUNT(*) FROM AsAllocation WHERE RelatedGUID = '[Activity:PolicyGUID]' AND TypeCode = '16'</MathVariable>
<MathVariable VARIABLENAME="InputOffset" TYPE="PLANFIELD" DATATYPE="INTEGER">ExchangeDateOffset</MathVariable>
<MathVariable VARIABLENAME="CurrencyExchangeDate" TYPE="VALUE" DATATYPE="DATE"/>
<MathVariable VARIABLENAME="GainLossCurrencyExchangeDate" TYPE="VALUE" DATATYPE="DATE"/>
<MathVariable VARIABLENAME="RatesExist" TYPE="EXPRESSION" DATATYPE="BOOLEAN">false</MathVariable>
<MathStatement TYPE="ACTIVITYFUNCTION" FUNCTIONNAME="FindNextExchangeDatePricing">
<Parameters>
<Parameter NAME="ExchangeDateOffset" TYPE="INPUT">InputOffset</Parameter>
<Parameter NAME="GuaranteedExchangeDate" TYPE="OUTPUT">CurrencyExchangeDate</Parameter>
<Parameter NAME="GainLossExchangeDate" TYPE="OUTPUT">GainLossCurrencyExchangeDate</Parameter>
<Parameter NAME="RatesExist" TYPE="OUTPUT">RatesExist</Parameter>
</Parameters>
</MathStatement>
<MathVariable VARIABLENAME="SwitchFeeRate" TYPE="VALUE" DATATYPE="DECIMAL" LOG="Yes">0.0</MathVariable>
<MathVariable VARIABLENAME="SwtitchFeeMoneyTypeCode" TYPE="VALUE" DATATYPE="TEXT" LOG="Yes">05</MathVariable>
<MathVariable VARIABLENAME="ConfirmationNumberMV" TYPE="IDENTIFIER" DATATYPE="TEXT"
LOG="Yes">
<Parts>
<Part TYPE="VALUE">C</Part>
<Part TYPE="VALUE">N</Part>
<Part TYPE="SEQUENCE" FORMAT="0000000000">ConfirmationNumberMV</Part>
</Parts>
</MathVariable>
</MathVariables>
<Assignment TYPE="Switch" SWITCHFEERATE="SwitchFeeRate" SWITCHFEEMONEYTYPE="SwtitchFeeMoneyTypeCode"/>
</Math>
<Transitions>
<Queue METHOD="VALUATION" ADVANCETOSYSTEMDATE="No"/>
</Transitions>
<Spawns>
<Spawn IF="Activity:TerminatePlan = 'UNCHECKED'">
<Transaction SPAWNCODE="03" FIELD="NextSubscriptionSpawnDate">AutomaticInvestment</Transaction>
<SpawnFields>
<SpawnField>
<From>Activity:ModalFrequency</From>
<To>ModalFrequency</To>
<DataType>Text</DataType>
</SpawnField>
<SpawnField>
<From>Activity:TerminatePlan</From>
<To>TerminatePlan</To>
<DataType>Text</DataType>
</SpawnField>
</SpawnFields>
</Spawn>
</Spawns>
<Buttons>
<Button>Ok</Button>
</Buttons>
</Transaction>