Installation (Agreements)
This section will guide you when installing and upgrading the Agreements Accelerator package in your environment.
- 1 Installation Steps
- 2 Post-installation Steps
- 2.1 Set up the Hidden Group Prefix Feature Flag
- 2.2 Set up Create Behavior of Custom Forms
- 2.3 Set up Historical Data
- 2.4 Set up Cost Plus Forecast Data (Optional)
- 2.5 Set up Cost Plus Data (Optional)
- 2.6 Set up Additional Configuration Options (Optional)
- 2.7 Set up Formula Designer Additional Information
- 2.8 Set up Approval Workflow
- 2.9 Assign Business Roles
- 3 Upgrade Steps
Installation Steps
Get access to PlatformManager and target partition, as described in common installation prerequisites.
Go to PlatformManager at https://platform.pricefx.com/ and log in.
Go to Marketplace and find the Agreements accelerator.
Click the accelerator tile, select the partition where you want to deploy the accelerator package, and confirm the deployment dialogue to start.
For detailed description of all deployment options, see PlatformManager documentation.
Post-installation Steps
To ensure proper functioning of the Agreements package, you have to go through the steps below. After completing this part, you can start configuring the calculation logics according to your needs.
Set up the Hidden Group Prefix Feature Flag
Some outputs need to be passed between Header and Line Item logics, but remain hidden from the user. To make sure this works properly, the Feature Flag called “hiddenGroupPrefix” needs to be set to “Hidden_Group”. The Feature Flag can be found in Administration > Feature Flags.
Set up Create Behavior of Custom Forms
Navigate to Administration > Configuration > Custom Forms General Settings and set the Create Custom Form Option to Save and Calculate pre-phase for new Custom Form immediately. This is necessary to properly pass values between the Custom Form tabs.
Set up Historical Data
In order to properly utilize forecasting features available in the package, Historical Data Datamart needs to be properly set up.
First, prepare a Datamart that will contain the Historical Data that will be used for Forecasts. The Datamart has to have certain columns:
ProductId – Column with Product Id (SKU)
Data Type: Text
CustomerId – Column with Customer ID
Data Type: Text
Margin – Column with Margin
Data Type: Money
Cost – Column with Cost
Data Type: Money
Currency – Column with the Currency code (EUR, USD etc.)
Data Type: Currency
UnitOfMeasure – Columns with Unit of Measure code (KG, LB, PCS, etc.)
Data Type: UOM
PricingDate – Column with Pricing Date
Data Type: Date
Function: Pricing Date
Volume – Column with Volume
Data Type: Quantity
Function: Per Unit Basis
Navigate to an Advanced Configuration Option called “AGR_Historical_AdvancedConfiguration” in Administration > Configuration > Advanced Configuration Options. There is a JSON file with properties that need to be filled in according to the Datamart setup.
The fields are as follows:
sourceType – For now only the value “DM” is supported, meaning that Historical Data is stored in a Datamart.
sourceName – Name of the Historical Data Datamart
productIdFieldName – Name of Product Id (SKU) column
customerIdFieldName – Name of Customer Id column
marginFieldName – Name of Margin column
costFieldName – Name of Cost column
currencyFieldName – Name of Currency Code column
unitOfMeasureFieldName – Name of Unit of Measure Code column
pricingDateFieldName – Name of Pricing Date column
volumeFieldName – Name of Volume column
defaultCalculationCurrency – Defines the default Calculation Currency (should reflect the Base Currency of the DM).
defaultCalculationUOM – Defines the default Calculation Unit of Measure (should reflect the Base Unit of Measure of the DM)
Once this setup is complete, various Forecast Engines can be used, for example included with the package Average Forecast (but not Cost Plus, this one needs more setup, as described below).
Set up Cost Plus Forecast Data (Optional)
In order to properly utilize Cost Plus forecasting features available in the package, the Forecast Cost Data Price Extension as well as Volume Data Price Extension needs to be properly set up.
First, create a Product Extension for Cost Data with the following mandatory columns:
Product Id (sku)
Cost
Currency
Unit of Measure
Period (Values in this column should be stored in the DM Price Date Month format, which is yyyy-MM.)
Navigate to an Advanced Configuration Option called “AGR_CostForecast_AdvancedConfiguration” in Administration > Configuration > Advanced Configuration Options. There is a JSON file with properties that need to be filled in according to the Price Extension setup.
The fields are as follows:
sourceType – For now only the value “PX” is supported.
sourceName – Name of the Price Extension.
productIdFieldName – Name of the column containing the Product Id (SKU).
costFieldName – Name of the attribute that holds Cost value.
currencyFieldName – Name of the attribute that holds Currency Code value.
uomFieldName – Name of the attribute that holds Unit Of Measure value.
periodFieldName – Name of the attribute that holds Period value.
Then create a Product Extension for Volume Data with the following mandatory columns:
Product Id (sku)
Volume
Unit Of Measure
Period (Values in this column should be stored in the DM Price Date Month format which is yyyy-MM.)
Navigate to an Advanced Configuration Option called “AGR_VolumeForecast_AdvancedConfiguration” in Administration > Configuration > Advanced Configuration Options. There is a JSON file with properties that need to be filled in according to the Price Extension setup.
The fields are as follows:
sourceType – For now only the value “PX” is supported.
sourceName – Name of the Price Extension.
productIdFieldName – Name of the column containing the Product Id (SKU).
volumeFieldName – Name of the attribute that holds Volume value.
uomFieldName – Name of the attribute that holds Unit Of Measure value.
periodFieldName – Name of the attribute that holds Period value.
Proper setup of these two PX tables makes it possible to use Cost Plus Forecast Engine on Agreements.
Set up Cost Plus Data (Optional)
In order to properly utilize Cost Plus Input-Based Formula available in the package, the Cost Data Price Extension needs to be properly set up.
First, create a Product Extension with the following columns:
Product Id (sku)
Cost
Currency
Unit of Measure
Valid From – Holds the start of the validity period for the given Cost/Currency/UOM pairing.
Valid To (optional) – If left empty (or not mapped), then there is no “expiration date” set on the Cost/Currency/UOM pairing.
Once the PX with Cost Data has been set up, it can be utilized in the Cost Plus Input-Based Formula, which is described here.
Set up Additional Configuration Options (Optional)
There is a number of additional Advanced Configuration Options available in the package. To configure them navigate to the option called “AGR_AdvancedConfiguration” in Administration > Configuration > Advanced Configuration Options. There is a JSON file with properties that can be modified as needed.
The properties are:
defaultCalculationCurrency – Defines the default currency in which all agreements will be calculated. This influences the preselection on the agreement header.
defaultCalculationUOM – Defines the default Unit of Measure in which all agreements will be calculated. This influences the preselection on the agreement header.
forecastMonths – Defines the forecasting period in months. Requires an integer value, e.g., 12 means all forecast engines will be run 12 times producing a yearly forecast.
maximumAmountOfRecalculationAttempts – If a Condition Record fails (ends up in ERROR status, for example due to missing cost), then it will be picked up again by the Feeder logic, maximum times that this value defines. For example 3 means that the Record will be recalculated 3 times until it will be marked with MAXIMUM_RECALCULATION_ATTEMPTS_REACHED status and no longer picked up by the Feeder logic.
defaultForecastEngine – Defines the default Forecast Engine for both the header and scenario folder when creating a new agreement.
Set up Formula Designer Additional Information
Formula Designer can return custom information from all formulas. The additionalInfoFields parameter should be filled based on project needs (for more info see Formula Designer (Agreements) | Advanced Configuration).
The parameter additionalInfoFields is a list of maps that follow a certain structure:
{
"name": "formulaDetail", <--- provides the name of the returned value
"label": "Formula Detail", <--- provides the label displayed on the block
"type": "string" <--- defines the type of the value, can also be set to "number"
}
This mechanism is designed to allow for passing values from Formula Designer to Condition Records, if necessary. See How to Modify What Is Saved in Condition Records
Set up Approval Workflow
The package workflow is fully based on Approval Workflow Package.
There are three workflow logics which utilize the following Workflow Types that are required for Approval Workflow setup (ApprovalWorkflowSetup table):
Agreement workflow uses “FormulaBasedPricing”.
Formula workflow uses “Formula”.
Input-Based Formula workflow uses “InputBasedFormula”.
Assign Business Roles
To give users view/edit rights to parts of the accelerator, use the available business roles or incorporate them in your own permission setup.
Upgrade Steps
To upgrade Agreements Accelerator in PlatformManager, follow these steps:
Create a backup of all logics to ensure your changes are preserved.
Identify the current the Agreements Accelerator package by navigating to Marketplace > Templates Management > Deployed Templates.
Review all manual changes needed by checking the upgrade notes provided.
Execute all upgrade notes in the specified order.
Run the "Agreements Accelerator – Upgrade" in PlatformManager.
Complete any remaining upgrade notes as necessary.