Paper Plane 11.0

This document summarizes major improvements and fixes introduced in the Pricefx Unity release version.

Version

Unity Paper Plane 11.0.0

Release Date

June 25, 2023

Release Type

Public

In this document:

Technical Requirements

Supported Platforms

Pricefx Unity interface is supported on the following hardware/platform combinations:

Unity Version / Platform

Standalone UI

Salesforce

SAP C4C

MS Dynamics

Unity Version / Platform

Standalone UI

Salesforce

SAP C4C

MS Dynamics

Desktop

  • Chrome

  • Firefox

  • MS Edge

  • Chrome

  • Firefox

  • MS Edge

  • Chrome

  • MS Edge

Mobile

  • iPad + Safari

  • iPhone + Safari

  • Android + Chrome

  • iPhone + Salesforce app

  • iPad + Salesforce app

  • iPad + Safari + Salesforce (in browser, no Lightning)

 

 

Note: Firefox supports interceptors since version 113 in case that you set the dom.workers.modules.enabled option to true in about:config. From version 115 this option should be set to true by default. You can use interceptors in Chrome or MS Edge without any restrictions.

Minimum Software and Hardware Requirements

Hardware and Network

A modern computer with at least 8 GB RAM (more memory is necessary for multiple browser tabs opened simultaneously).
Reasonable network bandwidth (at least 8 Mbps) and latency (50 - 200 ms).

Web Browser

Only the latest version of each of the above listed browsers is supported. We strongly recommend using the 64-bit browser version.

Excel Client

  • MS Office 2013 or higher on Windows
    Versions down to MS Office 2007 are expected to work as well but Pricefx does not fix issues related solely to these older versions.

  • .NET Framework 4.5 or higher (due to increased security requirements)

Compatible Pricefx Backend Version

The minimum required Pricefx version for this release is Paper Plane 11.0.0.

Other Supported Components

Highcharts and Highmaps used in charts/dashboards: version 10.2.1

Upgrade Troubleshooting

If you experience any functionality issues after upgrading to Paper Plane 11.0, see the troubleshooting section that provides solutions to reported problems:

Note: When upgrading to version 11.0 from version 9.3 or lower, the migration script executes the resaveFormulas command by default. This command does not change the logic or the Last Update Name but it sets the Last Update Date to the time of the execution.


The Main Features Since the Last Public Release

Since the last major public release, Bee’s Knees 10.0, the following major new features have been introduced:

  • Actionable Insights – Proactive business opportunity and risk detection with relevant contextual actions to follow up on the specific situation.

  • Visual Configuration – Improved and generally released Pricing Strategy Designer and introducing Workflow Designer, to enable you to configure visually and without coding.

  • Enhanced Optimization Use Cases – Multiple use-cases easily deployable using Pricefx Accelerators to realize value and start leveraging the benefits of optimal prices faster.

  • Front-End API – New Front-end API to embed Pricefx into any 3rd party application through iFrame and use visual mapping of fields for basic integration scenarios.

  • Integration with SAP S/4HANA – Pricefx productized integration with SAP S/4HANA through SAP BTP Integration Suite is available and enabling common use-cases.

For more detailed information about Paper Plane 11.0 new features, see pricefx.com/paperplane.


New Paper Plane Features

Analytics

Description

ID

Description

ID

To avoid the ‘Duplicate Fields’ error when running a Data Load in situations when the data source contains fields named ‘AttributeN’ (because the related Data Feed names the fields ‘AttributeN’ as well), the following change has been introduced:

  • useLegacyFeedMapping parameter has been added to the Data Source class.

  • It is set to false by default for existing Data Sources, i.e., there is no change in behavior for existing Data Source - Data Feed pairs.

  • It will be set to true by default for newly created Data Sources. The new field mapping will be DF.field.name = DS.field.name, DF.field.label = DS.field.label (instead of the legacy mapping DF.field.name = “attributeN”, DF.field.label = DS.field.name).

PFUN-11924

Charts: Improved code formatting in Formula Builder for better readability.

PFUN-19823

Multiple data series can be defined in Data Analyzer Data Tables.

PFUN-20151

The order of filters in charts and Data Table has changed to show required inputs first. The new order is: Group By, Measure, Aggregation Filter, Products Filter, Customers Filter, Dimension Filter, Generic Filter.

PFUN-20174

Price Setting

Description

ID

Description

ID

You can display product image in the Label column for products added to a Price List or Live Price Grid. The new feature flag showProductImagesInPriceBuilder must be enabled.

PFUN-16690

Mass actions applicable to all the records or a set of filtered records are available in Calculation Grids (edit, calculate, delete and workflow actions).

PFUN-19386

Optimization

Description

ID

Description

ID

Improved PMML evaluation by sharing api.global between the calling formula and the called evaluation.

PFUN-15055

Errors generated by calculation logic evaluation are displayed in the relevant places on the Model Object tabs, not as pop-up notifications.

PFUN-15171

Added support for wider range of SQL and support of DatamartContext.SqlQuery bindings in model.loadTable.

PFUN-18269

A Model Object support context linking, i.e., can pre-fill its inputs based on the passed context.

PFUN-18625

The Model Classes page has been moved from the Optimization module menu to Administration > Configuration > Optimization.

PFUN-18740

A new Groovy API has been introduced to fetch, add, update, remove a schedule for a Model Object. The Calculation Schedules are identified by their name and thus Calculation Schedule names are unique within the context of the given model. Use def schedCtx = model.schedulesContext() to get the schedule context, schedCtx.schedules() to get the list of schedules, schedCtx.schedule("ScheduleName") to get a specific schedule, schedCtx.delete("ScheduleName") to delete a schedule.

PFUN-18839

Possibility to schedule a calculation of an approved model using the new action type task.

PFUN-19853

The Optimization Engine page is now visible in the module menu only if the enableOptimizationEnginePage advanced configuration option is set to true.

PFUN-20041

Agreements & Promotions

Description

ID

Description

ID

The module menu option Agreement & Promotion Types has been moved above the Condition Types option so that the option order of the A&P menu is consistent with other modules’ menus.

PFUN-20286

Master Data

Description

ID

Description

ID

The Product/Customer Detail view can be opened by clicking the Product/Customer ID in the Product/Customer table. The Product/Customer Detail button below the table is no longer available.

PFUN-15266

CRM Integration

Description

ID

Description

ID

Visual mapping of CRM payload fields to Pricefx documents' header or line items for easy integration. It is possible configure this mapping together with an interceptor for advanced integration requirements. The supported documents are Quotes, Rebate Agreements, Agreements/Promotions and Compensation Plans.

PFUN-16543

New Configuration > CRM Integration > Overview page displays all the relevant information (e.g., CRM config, relay state, active interceptor) related to a specific CRM setting in one place.

PFUN-16861

There is a separate section dedicated to CRM integrations in Administration > Configuration where you can find information about CRM integration settings and configure visual mapping and interceptors.

PFUN-19317

It is possible to manipulate Unity using the postMessage method. It’s supported when Unity is embedded in some other platform, and also when another platform is embedded inside Unity.

PFUN-19558

External apps can be embedded in a custom tab of a Quote, Agreement/Promotion, Rebate Agreement and Compensation Plan.

PFUN-20022

Possible fields available for parsing into external app query string parameters limited to Id, Label, uniqueName and External Reference.

PFUN-20373

Custom Forms

Description

ID

Description

ID

Links from emails informing user about a new message lead directly to the relevant conversation not just to the Messages tab.

PFUN-15451

Possibility to delete a Custom Form using Groovy API: api.customFormApi().withId(344).delete()

PFUN-20085

Administration

Description

ID

Description

ID

Custom Forms: If your Custom Form has few inputs but many outputs including charts and result matrixes, you can adjust the layout to give more space to the outputs and display their content directly, without the need to click the Show link. Use the "renderOutputsAs" : "inline" parameter in the Custom Form configuration.

PFUN-16360

Users are no longer able to change the CloudConvert API token on the Configuration > External Systems > CloudCovert page.

PFUN-19931

Configuration

Description

ID

Description

ID

Possibility to recalculate a Custom Form from other places in the application using the Groovy API helper class recalculateApi and the method doRecalculate().

PFUN-15886

SAML SSO: Deactivated users are not able to log in to Pricefx even if auto-provisioning is enabled. For users soft-deleted from Pricefx, the user account is recreated with all previously assigned user roles and groups if auto-provisioning is enabled.

PFUN-18120

Two new Groovy API methods api.movePriceItems() and api.copyPriceItems() allow you to conveniently move price items between price calculable entities (Price Lists and LPGs).

PFUN-18455

Possibility to hide the Dashboard preferences menu and use the provided properties map instead of loading any saved preferences when embedding a Dashboard e.g. to a tab or header. New api.dashboard methods .withPreferences(prefsMap) and .withEmbeddedIconHidden().

PFUN-18975

Context linking: The targetPageAction parameter supports the Approve, Reject and Withdraw values for the Quoting, Rebates, Agreements&Promotions and Sales Compensations modules.

PFUN-19328

Possibility to add advanced filters via Groovy into the input area as inline. This is particularly useful in wizard-like screens like in Actionable Insights, CFOs, Model Classes or Deal Plans where user doesn't have to open any pop-up dialog. The condition is shown as inline. Use the api.inputBuilderFactory() method .showInline().

PFUN-19443

The column max. Sales Compensation Users is available in the Partition Admin table allowing you to set the maximum number of Sales Compensation users in the UI.

PFUN-19617

The size of the Partitions.customSchemaInfo DB column has been increased to 512 characters.

PFUN-19997

Advanced configuration option autoAlignResults enables you to determine if all the results of all data types in the Calculation Results table will be aligned to the left (false) or aligned to the right or left according to their data type (true).

PFUN-20531

General

Description

ID

Description

ID

On the Items tab of Quotes, Agreements/Promotions, Rebates and Compensation Plans, a count of line items with alerts is displayed after a calculation is run. You can click the alert icon to display only items with the corresponding alert level.

PFUN-16991

Quotes and Agreements/Promotions that are included in the mass update cannot be edited or any workflow action performed on them while the update job is running.

PFUN-18472

There is now only one view preference for the whole Home page that includes the layout and all portlet customizations. Possibility to save preferences for individual portlets has been removed.

PFUN-18800

There can now be more than one Actions tab in Documents (Quotes, Rebate Agreements, Custom Forms, etc.). Actions created on a specific tab will be always displayed only on that tab. Older Actions (created before upgrading to 11.0) will be displayed on all tabs unless you specifically say that on a certain tab you want to display only new Actions created on that tab and nothing else. You can make this setting by adding "parameters": {"showOnlySpecific": true} to the document type configuration for that specific tab.

PFUN-18856

New buttons (delivered by Actionable Insights Accelerator) are available in Charts and Dashboards allowing you to create Actions or Actionable Insights Watchers.

 

PFUN-18882

Quotes, Agreements/Promotions, Rebates, Compensation Plans: The Details tab with document information (author, status, etc.) is available also on the Header tab.

PFUN-19024

The new object Module Category (type code MCA) has been introduced to enable you to configure under which module menu a Model Object or a Custom Form will be listed. In the UI, there is a new page Module Category in Administration > System Configuration.

PFUN-19168

When you create a new Quote, Rebate Agreement, Agreement/Promotion or Compensation Plan and try to leave the page without making any edits, you are prompted if you want to discard or save the document.

PFUN-19177

The 'Assign to' drop-down list on the Messages tab supports searching.

PFUN-19283

Quotes, Agreements/Promotions, Rebates, Compensation Plans: A counter of warnings, alerts and exceptions is displayed on the header with the possibility to click the counter to display related messages.

PFUN-19449

Messages informing users about finished calculation of Quote, Agreement/Promotion, Rebate Agreement and Compensation Plan (successful, with alerts or errors) are available in the Internationalization section where they can be changed or translated.

PFUN-19529

When editing Quote, Rebate Agreement, Agreement & Promotion, Compensation, Plan, Custom Form or Action Types, there is a validator that will not allow you to save the JSON definition if it contains unsupported tabs.

PFUN-19990

In the configuration of scheduled executions of Calculation Flows or calculations of Rebates, Agreements/Promotions and Compensation Plans, you can now use month and year as values for Period / Time Unit.

PFUN-20237

Bug Fixes

Description

ID

Description

ID

Live Price Grids: The number of items in the list is shown incorrectly when deleting 2 items on the detail page.

PFUN-9114

Deletion of skus from LPG fails during dynamic filter-based setup during calculation.

PFUN-13868

When adding a new Model Object or Model Class and there is a validation error on some field, the error message doesn’t indicate which field it is.

PFUN-14643

Advanced Table: Decimal instead of percentage is displayed in modal when value is restricted by list.

PFUN-14795

Overridable field cannot be edited in a submitted quote in the table and simple table views.

PFUN-15873

recommendations.recommend needs information about all items and not only about items on the current page.

PFUN-17189

Job & Task Tracking: Searching by ID column ends in error in Postgres.

PFUN-17562

Quotes, Rebate Agreements, Agreements/Promotions, Sales Compensations: Validation error is displayed for required fields even though their value is inherited from header/folder.

PFUN-17620

Distributed dirty pass executions in fatSlaves mode for PL does not seem to take into account the system-defined max number of passes.

PFUN-17917

Sales Compensations scheduled calculation task: Missing required field name in notification and asterisk in the input label.

PFUN-18260

Rebate Agreements: The same date is displayed for the Payout date and the End date on the Detail & Settings panel.

PFUN-18276

Quoting: UI keeps deleted item as selected.

PFUN-18346

Sales Compensations export: Sellers selected in the document are missing in the exported file.

PFUN-18347

Model Class: Error when trying to query ID column from Model DMTable.

PFUN-18358

PA/MO/DMM: Improve index management on and after DMTables data loading.

PFUN-18488

Wrong routing from Notifications to Custom Form Messages - correct Custom Form but a wrong tab is displayed.

PFUN-18523

Dashboard multiselect input leads to timeout when each dropdown selection leads to one query to DB.

PFUN-18569

Interceptors cannot stop running action using pre-method like: quotesDetailNewCheck, contractsDetailNewCheck, rebateAgreementsDetailNewCheck and compensationsDetailNewCheck.

PFUN-18824

Documents tab: Created By and Last Updated By columns quick filters are not rendered as searchable drop-downs.

PFUN-18879

Running Data Load ADD_TABLE_PARTITIONS fails - table partitions are not found in the DB.

PFUN-19151

Frontend error when editing User Group (view or edit) in Agreements & Promotions.

PFUN-19186

Model Class: When changing an input, if we don’t click outside of the cell, then the input is not considered when clicking on Continue.

PFUN-19246

Default View Preferences dropdown list in Price Setting Types is empty.

PFUN-19295

Calculation Flows page is not reloaded when you click the Reload button several times.

PFUN-19339

Quotes: Import of items from clipboard hangs if I try to import a folder.

PFUN-19457

Some PA Data Load jobs don't preserve VARCHAR(4000) data type of LOB attributes in the target table.

PFUN-19462

Model Objects: User should not be able to recalculate a step if the model is readonly.

PFUN-19873

Model Objects: Unsaved changes pop-up appears when moving too fast between steps that do not completely load.

PFUN-19897

backEndCall successMessage/FailMessage does not display the notification message in version 10.

PFUN-19946

Agreements & Promotions: Header inputs are not inherited by line items.

PFUN-19958

When adding a chart with aggregation filter to a dashboard, the filter value is not displayed on the chart settings panel on the Dashboards page.

PFUN-19966

Charts, Dashboards: Not all empty required fields are highlighted after clicking the Apply button.

PFUN-19999

It is not possible to edit table preferences in a Result Matrix in Unity.

PFUN-20004

Rebate Records, Compensation Records: Info that the record has been saved or submitted is displayed in an alert or other message instead of being displayed in a separate message.

PFUN-20008

Quotes, Rebate Agreements, Agreements/Promotions, Compensation Plans: ‘New version exists…’ error after withdrawing and editing a document with inputs on folder level.

PFUN-20018

Quotes, Rebate Agreements, Agreements/Promotions, Compensation Plans: After clicking Recalculate Changes in case of errors or alerts on line items, the message color is correct but the text says “Calculated successfully”.

PFUN-20020

Core Backend API stream and find can return wrong results when getting labels of columns from CP tables(filtered by lookuptable.uniqueName).

PFUN-20051

PX/CX/SX tables sometimes show no records because no request is sent to the server as if the ‘Load content of PX/CX/SX automatically’ option was set to false.

PFUN-20062

Rebate Agreements: Line items supposed to be deleted by a calculation logic remain displayed in the Items table if they are manually selected before the logic is run.

PFUN-20066

Custom Form Types User Group entitlement: User with Administer CFO user role cannot see a Custom Form Type with the following entitlement setting: User Group (Edit) is empty and User Group (Can Use) is restricted by a group where the user is not a member.

PFUN-20072

Custom Form Types, Quote Types User Group entitlement: Duplicate button is not displayed for a regular user with Administer CFO user role who is a member of User Group (Can Use).

PFUN-20073

When adding a new line item to Quote, Rebate Agreement, Agreement/Promotion, Compensation Plan the notification should only confirm adding the item and not display errors or alerts generated by the item.

PFUN-20161

Yugabyte - Pricefx does not reconnect in the case when the whole Yugabyte cluster restarts.

PFUN-20181

Analytics: Group By in Data Table does not render grouped values correctly.

PFUN-20235

Custom Forms: Object deletion results in DB lock error.

PFUN-20257

Missing records in incremental Datamart refresh.

PFUN-20269

Analytics Charts: It is possible to see private Rollups created by other users but they should be visible only to their creators.

PFUN-20335

Existing Calculation Flows are displaying "Invalid Date" in the Next Run Date field and are not getting triggered.

PFUN-20344

Live Price Grids: fetch/PGI returns PGI from soft deleted LPG.

PFUN-20367

Quoting, Rebates, Agreements & Promotions, Sales Compensations: Workflow set for the Default header type is not triggered.

PFUN-20545

Quote, Agreement & Promotion, Rebate Agreement, Compensation Types: User belonging to User Group (Can use) can't copy header type.

PFUN-20603

Analytics: Incorrect Datamart incLoadDate applied in Datamart Refresh Data Load.

PFUN-20623

Dashboard and Context-linking: Creating quote from DB does not prefill CustomerID.

PFUN-20635

Null Pointer Exception in ResultMatrix.normalizeDateTimes().

PFUN-20644

LPG: Resetting column type in Reset Column Name and Type is not working.

PFUN-20651

MPL list: Error appears after using Group by in any column.

PFUN-20677

LPG configuration: Product filtering when a preference is saved in the product table does not work correctly.

PFUN-20705

Hot Fixes

The following hot fixes have been released for the 11.0 version:

11.0.1 PR

Description

ID

Description

ID

URL parameters passed from CPQ to dashboard stopped working properly.

PFUN-20821

Product Extensions - Unable to change column type.

PFUN-20825

If database contains soft-deleted records for a user, this user is not able to SSO login.

PFUN-20827

11.0.2 PR

Description

ID

Description

ID

VisualMapping calls fetch/AP.

PFUN-20837

11.0.3 PR

Description

ID

Description

ID

In a matrix PL/LPG in the Product Detail view, the same product ID is selected multiple times.

PFUN-20790

In same cases, the configurator is marked for rerun after its first evaluation.

PFUN-20818

In Module Category / Model Object, redirection from the /model-objects/ route to MCA route incorrectly requires Optimization roles.

PFUN-20824

11.0.4 PR

Description

ID

Description

ID

bdmanager.fetchfromuploadslot may try to read uncommitted data from the BinaryData table.

PFUN-20637

UI - Pricing Parameters - cannot create record with boolean key set to False.

PFUN-20830

Model Objects: model.lookupTablesContext().addLookupTable() silently fails to add incorrect columns.

PFUN-20959

Input matrix on configurator not resizing on larger screens.

PFUN-21106

Loki logs: Error message “TypeError: Cannot read properties of undefined (reading 'replaceAll')” displayed on the log UI.

PFUN-21127

Job processing by heartbeat orders incorrectly.

PFUN-21307

11.0.5 PR

Description

ID

Description

ID

Low level back end exception when user opens a Rebate Agreement that has an item with an output that the user is not supposed to see.

PFUN-21096

Not possible to login as root or pricefx-support user from PlatformManager.

PFUN-21365

Business Group and User Role are not populating for users in Pricefx when syncing user from Salesforce.

PFUN-21426

 

Found an issue in documentation? Write to us.

 
Pricefx version 12.0