You are here: Configuration > Configuration Panes > Math Pane > Math Statement

 

MathStatement

The MathStatement math variable is a type of system function that is similar to the existing type FunctionCall. Unlike business rule functions, functions called by the MathStatement exist in the base code; however, the Rules Palette guides the configuror through the available functions and the required parameters for each function.   

 

MathStatement will not appear in the math tab of the Activity Results screen. Valuation objects created by MathStatements will not write valuation records to the data base.

 

mathstatement math variable

MathStatement Math Variable in Palette Window

 

The following functions and their parameters are currently supported:

 

Define the MathStatement

Drag and drop the MathStatement function from the Palette window onto the Math Pane. Enter the following information for the MathStatement. 

 

Check-in the transaction to save the information to the database.

 

 

FindBillDetail:

The array of AsBillDetail records can be passed to the CreateBill (APE) for the resulting AsBill record. The function accepts threshold and date parameters to limit the number of BillDetail records returned. Only Pending detail records that fall within the parameter values are included in the array. All parameter values are inclusive meaning BillDetail dates will be greater than or equal to the StartDate parameters and bill amounts must be greater than or equal to the BillMinimumAmountThreshold value.

 

Below are the optional output parameters for FindBillDetail. The values available for these parameters would be any string array defined above in the insertion point of the MathStatement in the transaction math.

 

FindNextExchangeDatePricing

Uses exchange date offset as the input. The output is a guaranteed exchange date (exchange date the system will use) and the gain/loss exchange date (current system date)as well as a boolean result that identifies whether rates exist in the Rates table for the guaranteed exchange date. If rates do not exist, the activity cannot process.

 

Below are the configuration parameters for FindNextExchangeDatePricing:

 

The parameters GuaranteedExchangeDate and GainLossExchangeDate are passed into the Assignment. Assignment simply checks that MathStatementActivityFunction:GuaranteedExchangeDate is logged into AsActivityMath. These parameters are needed for unit linked funds to the help system determine exchange dates. Mapping the output parameters to math variables is optional as the system will automatically log the values. The output parameters should be configured only if the values are to be used elsewhere in the activity math.

 

 

XML Example

<MathStatement TYPE="ACTIVITYFUNCTION" FUNCTIONNAME="FindNextExchangeDatePricing">
<Parameters>   
<Parameter NAME="ExchangeDateOffset" TYPE="INPUT">InputOffset</Parameter>      
<Parameter NAME="GuaranteedExchangeDate" TYPE="OUTPUT">ExchangeDate</Parameter>      
<Parameter NAME="GainLossExchangeDate" TYPE="OUTPUT">GainLossExchangeDate</Parameter>      
<Parameter NAME="RatesExist" TYPE="OUTPUT">RatesExist</Parameter>      
</Parameters>   
</MathStatement>

 

 

FindLastExchangeDatePricing

 

Below are the configuration parameters for FindLastExchangeDatePricing:

 

XML Example

<MathStatement TYPE="ACTIVITYFUNCTION" FUNCTIONNAME="FindLastExchangeDatePricing"><Parameters>   
          <ParameterNAME="GuaranteedExchangeDate" TYPE="OUTPUT">ExchangeDate</Parameter>
<Parameter 
 NAME="GainLossExchangeDate" TYPE="OUTPUT">GainLossExchangeDate</Parameter>
 </Parameters>   
</MathStatement>

 

GetBenefitSplit

This function reads parameters to calculate the benefit split record for the activity calculation. Below are the configuration parameters for the function.

MathValuation

This executes the policy valuation as of a specified date for use inside transaction math. The valuation date specified in the Activity valuation is not read by OIPA and only the activity's effective date is applied to the activity valuation. The new valuation object created in math holds all of the same data that the activity valuation contains. Retrieving data from the math variable valuation object uses a different syntax but all of the same data is available (Fund, Deposit or Policy values). Once created, a math valuation object remains in memory until it is replaced by another math valuation object. Only one math valuation object exists in memory at the same time as activity valuation. Activity valuation is calculated independently of the math valuation and the two co-exist inside the transaction processing and can be independently accessed.

 

The presence of the activity <Valuation> element is not a prerequisite to calculating valuation in transaction math. Calculation of the math valuation is not available to screen math or math in attached rules. A stack trace is thrown if configured in an invalid location. All valuation is executed using the plan configuration (point in time or from inception).

 

Below are the configuration parameters for MathValuation:

XML Example

<MathStatement TYPE=”ACTIVITYFUNCTION” FUNCTIONNAME="MathValuation">
<Parameters>
<Parameter NAME=”ValuationDate” TYPE="INPUT">MyValuationDate</Parameter>
<Parameter NAME=”PolicyValues” TYPE="INPUT">Yes</Parameter>
<Parameter NAME=”NearestPrice” TYPE="INPUT">Yes</Parameter>
<Parameter NAME=”ExactPriceDateUsed” TYPE="OUTPUT">ExactPriceDateUsedMV</Parameter>
</Parameters>
</MathStatement>

 

GetFundPositions

This function will retrieve a collection of parent funds that have fund balances, as well as the values of these parent funds. GetFundPositions can only be used in transaction math if the transaction is configured to perform valuation. If this function is added to a transaction that is not configured to perform validation, a system error will occur in OIPA, which should indicate that the configuration was not set up properly.

 

Below are the configuration parameters for GetFundPositions:

XML Example

<MathStatement TYPE="ACTIVITYFUNCTION" FUNCTIONNAME="GetFundPositions">
<Parameters>
<Parameter NAME="ExcludeFunds" TYPE="INPUT">FundTypeArray</Parameter>
<Parameter NAME="ParentFundAmountCollection" TYPE="OUTPUT">OutputCollection</Parameter>
</Parameters>
</MathStatement>

 

Copyright © 2009, 2015, Oracle and/or its affiliates. All rights reserved. Legal Notices