PSP Advanced Cost Module

This module provides additional cost strategies which are used for pricing strategies and margin calculations. Each cost strategy has its own dependency mapping configuration and data source configuration (including optional valid dates or currency).

Mechanism

Similarly to pricing strategies, there can be many cost strategies. In a product segment, several cost strategies can be selected. The cost strategies will be calculated and their values are presented in the Advanced Costs element of the PL/LPG. However, only the first valid value (top-down order) is used for margin calculation.

Example: If there are Cost1=null, Cost2=45, Cost3=50, then Cost2 value will be used to calculate the margin.

Advanced Cost and Simple Cost

By enabling the AdvancedCost module, the Cost Lookup configuration from the Cost And Margin module will become unused and can be removed.

Advanced Cost replaces the single cost source with multiple sources with one of them marked as the main source. However, the values from all the cost sources can be passed as parameters to strategy calculations and use them according to your needs.

Cost Aggregation Types

Currently, there are three types supported:

  • SINGLE – Lookup for only one cost.

  • AVG – Lookup for costs in the targeted Product Extension, then return the average of all found values.

  • SUM – Lookup for costs in the targeted Product Extension, then return the sum of all found values.

Cost Strategy and Pricing Strategy

Naming Convention

A cost strategy value can be passed to a pricing engine as a parameter. When defining a cost strategy, a proper engine suffix has to be provided. The base name of any engine parameter is always "COST", so if a cost strategy has the "_EXAMPLE" engine suffix, then its engine parameter name is “COST_EXAMPLE”.

Usage

In terms of pricing engine parameters, only costs from the CostSelection CP for the current product are loaded + "PRODUCT_COST".

Example:

In CostTypeDefinition CP, there are COST1, COST2, COST3, COST4, COST5, COST6.

In CostSelection CP, it is set to use COST1, COST2, COST3, COST4, COST5.

During the calculation process, COST1, COST3, and COST4 were not calculated properly. It means that the product's cost will be COST2 (first valid calculated cost value) and 3 parameters will be loaded to engines, which are "PRODUCT_COST", "COST2", and "COST5". “PRODUCT_COST” represents the first valid cost and it has the same value as COST2.

Configuration

The preferred way to configure the Advanced Cost module is by using Configuration Wizard. You can, however, do the settings manually:

Set Module Status

Set the module status in the PriceSettingModules CP table whose module name is PSP_ADVANCED_COST.

Set Cost Strategy Definition

To set up a cost strategy, create a new data row in the CostTypeDefinition CP with details in Advanced Cost Lookup (CostTypeDefinition CP).

Set Cost Strategy Selection

Set selections in the CostSelection CP table which correspond with the current dependency level.
Table naming convention: <<dependency>>CostSelection.
Examples: AsiaCostSelection, GlobalCostSelection,…

Using Cost Strategy Engine Parameter (Optional)

For each SKU in a PL/PG run, only its selected cost strategies will be loaded. To pass a cost strategy value as a parameter to a pricing engine, the cost strategy must be selected in the corresponding row in the CostTypeDefinition CP table. Then, add the parameter name in the desired pricing strategy, in the StrategyCalculationParameters property. For details, see StrategyDefinition CP.