Package net.pricefx.formulaengine


package net.pricefx.formulaengine
Formula engine interfaces exposed to Groovy logics.

A logic obtains some of these types from an api call. The context and manager types are bound directly as logic variables, depending on the executing logic.

  • DatamartContext queries and loads Analytics data. Obtain it with api.getDatamartContext().
  • DatamartQueryResult gives access to the result of such a query.
  • DatamartRowSet represents the data of an Analytics field collection, such as a Data Feed, Data Source or Datamart. Obtain it with api.getDatamartRowSet().
  • TableContext is the starting point for in memory data table operations. Obtain it with api.getTableContext().
  • DistFormulaContext is the dist binding when Pricefx evaluates the logic of a Distributed Calculation Data Load.
  • DistCalcFormulaContext is the dist binding when that Data Load runs.
  • ModelFormulaContext is the model binding in a model logic.
  • ModelCalcFormulaContext is the model binding when Pricefx calculates a model.
  • ModelEvaluator exposes a trained model to modules outside price optimization. Obtain it with api.modelEvaluator(name).
  • IRebateRecordManager is the rebateRecords binding. It is available in Rebate Agreement and Compensation calculations, in their read only evaluations, and in Rebate Record Set and Compensation Record Set calculations.
  • IRebateRecordGroupManager is the rebateRecordGroup binding. It manipulates a Rebate Record Group.
  • PayoutRecordManager is the payoutRecords binding in a Rebate Record calculation, and the accrualRecords binding in a Compensation Record calculation.
  • XExpression is the standard exception of the expression layer.

A distributed calculation runs in three stages: initialization, calculation and summary. The stages run on separate nodes. Caches and in memory tables are not shared between stages, and not shared between calculation threads.

The newer read only and read write model context variants live in the net.pricefx.formulaengine.optimization subpackage.