Clover Club 12.0

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

Version

Unity Clover Club 12.0.0

Release Date

January 28, 2024

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 Clover Club 12.0.0.

Other Supported Components

Highcharts and Highmaps used in charts/dashboards: version 11.2.0

Upgrade Troubleshooting

If you experience any functionality issues after upgrading to Clover Club 12.0, see the troubleshooting section that provides solutions to reported problems:

Note: When upgrading to version 12.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, Paper Plane 11.0, the following major new features have been introduced:

  • Enhanced Actionable Insights – Proactively detect business opportunities and risks with new options to set the data observation and actions from Dashboards and Charts.

  • Agreements Accelerator – Pre-releasing new Accelerator with the initial focus on formula-based customer agreement pricing designed for process manufacturers.

  • Product Recommendation 2.0 – Leverage AI Optimization for new Product Recommendation types, including similar products, private label brands and up-sell opportunities.

  • Negotiation Guidance 2.0 – Leverage AI Optimization to refine pricing guidance by aligning pricing segments with attribute gaps, such as location and competitiveness.

  • Rebate Records grouping – Group Rebate Records automatically on calculation and submit them together to simplify workflow approvals and reduce approval steps.

  • Integration with SAP S/4HANA – Utilize multiple enhancements and additional scenarios for Price Management & Optimization plug & play integration use-case.

  • Custom logo – Align your Pricefx system with your corporate brand by adding your own custom logo and selecting from a range of colours to match.

  • Usability and other improvements – Improvements to Table Column Options across the Pricefx application and multiple enhancements in PlatformManager.

For more detailed information about Clover Club 12.0 new features, see pricefx.com/cloverclub12.


New Clover Club Features

Dashboards

Description

ID

Description

ID

The chart inputs structure is unified between charts in Data Analyzer and Dashboards for consistent user experience. In Dashboards, the dimensions filter is now in the same section as other filters.

PFUN-21981

The Create Action / Watcher buttons are available in the Dashboard header.

CloverClub01.png

PFUN-22332

Analytics

Description

ID

Description

ID

When selecting a data source for a Chart or Actionable Insights Watcher, Model Objects that have no child DMT tables (and therefore there is nothing to select) are hidden from the data source list.

PFUN-12123

A Watcher/Action can be created from any Data Analyzer chart type by a click of a button.

PFUN-20160

The datamart.query endpoint supports streaming SQL database queries for improved performance and memory usage.

PFUN-21620

Support of links to originator Analytics charts in the Actions table.

PFUN-21890

Charts: The Aggregation Expression editor has been simplified and it now displays the code editor in the main dialog without the need to click the magnifying glass icon.

CloverClub02.png

PFUN-22429

Price Setting

Description

ID

Description

ID

When editing the name or label of a Price List, LPG, Calculation Grid, Manual Price List, Simulation or Price Setting Type, the current character count is displayed and the user cannot type more characters when the limit of 255 characters is reached.

PFUN-19023

Visibility of calculation logic element results by user group is now supported also in Price Setting (Price Lists, Live Price Grids, Calculation Grids and Simulations).

PFUN-19088

Price Lists cannot be submitted for approval if there is a critical alert on any row. To keep the pre-12.0 behavior, set the application property allowPLSubmitWithCriticalAlert to true.

PFUN-19388

You can add inputs to Calculation Grid logic that will be displayed to users when they create a new Calculation Grid.

PFUN-21048

If there is no workflow logic defined for Calculation Grid items, the items are automatically approved.

PFUN-21643

Calculation Grids: A field for the possibility to indicate that the item has been successfully calculated (isCompleted: true) has been added.

PFUN-21691

Quoting

Description

ID

Description

ID

If a Quote product filter logic is configured, it applies also to products offered as recommended items. Applies only to React version.

PFUN-20987

The values in the Last Update Date and Last Updated By columns are not updated when the user opens the Quote for editing but doesn’t save any changes.

PFUN-21421

Possibility to switch on/off automatic saving of Quotes. If disabled, any changes in Quotes must be saved manually by clicking the Save button. The switch is available at Configuration > Quoting General Settings > Autosave. Available only for React version. Behavior in default configurations remains the same.

PFUN-22196, 22283

The Create Quote Option: Do noting is supported when enabled together with autosave. Newly created Quote is not saved immediately after creation and can be discarded.

PFUN-22205

Rebates

Description

ID

Description

ID

Rebate Agreement detail now contains a tab listing Rebate Records related to that Rebate Agreement.

PFUN-16194

Rebate Records can be grouped to provide a better overview and speed up the approval process.

PFUN-20925

Attribute extensions are available for Rebate Records and Rebate Record groups.

PFUN-21579

The URL for Rebate Records listing, Compensation Records listing and their detail pages has been changed. Now it contains RebateRecordSetId. If there is a link, where it is impossible to compute the SetId, it uses /set/ instead and calculates the actual SetId only after the page is opened. The old detail URL will be correctly redirected.

PFUN-22132

Optimization

Description

ID

Description

ID

Optimization Engine is deprecated and no longer available in the Optimization menu.

PFUN-16040

Models / Watchers: Tooltips are available for the input fields in the Add Schedule dialog to provide quick help for the user.

PFUN-21530

Deprecated Pricing Guidance is hidden from the Optimization menu, also the associated user roles are no longer available. If needed, the menu item and user roles can be made visible by setting the enablePricingGuidance advanced configuration option to true.

PFUN-21580

You can quickly open the Calculation Schedule dialog from the Models or Watchers list page by selecting a Model/Watcher and clicking the Schedule button.

PFUN-21828

The option Hide from New Model Dialog in the Model Class configuration enables you to hide the Model Class from the list of available MCs when creating a new Model.

PFUN-22142

Agreements & Promotions

Description

ID

Description

ID

Possibility to recalculate approved Agreements/Promotions and generate new Price Records.

PFUN-20286

Master Data

Description

ID

Description

ID

Product / Customer / Seller filtering: A new option in General Settings (Apply User Filter in Product/Customer/Seller Extensions) enables you to apply user-level filter also to Product / Customer / Seller Extensions.

PFUN-18295

CRM Integration

Description

ID

Description

ID

A link to the Interceptors Developer Guide is available for the user's convenience on the Configuration > Interceptors page.

PFUN-20872

Visual Mapping: A newly added Pricefx object is automatically selected.

PFUN-21023

An option to turn on verbose logging for interceptor methods and interceptor API calls has been added to the Configuration > Interceptors page.

PFUN-21679

ClicInterceptorAPI supports deleting line items.

PFUN-21867

A new interceptor masterDataCustomersListFilterAdd for filtering in customer master data has been added.

PFUN-22324

Custom Forms

Description

ID

Description

ID

Possibility to manipulate a Custom Form using customFormApi. New methods for submitting, withdrawing and revoking a Custom Form.

PFUN-19626

Possibility to approve/deny a Custom Form using the Groovy API .workflowAction() .approve() or .deny() methods.

PFUN-19627

Custom Forms Groovy API (customFromApi() and its methods) now respects the allowObjectModification setting. The old behaviour can be kept by setting the new advanced configuration option customFormApiAlwaysAllowsObjectModification to true.

PFUN-20501

With the support of the Attachments tab, the advanced configuration option customFormUseMultiTabDocuments has been introduced. If set to true, the Documents dynamic tab behaves the same way in 12.0 as it did in 11.3, i.e., it contains two sub-tabs, Specific and Files (containing attachments). This option is set to true during upgrade to 12.0 if there is an already existing configuration using the Documents dynamic tab in Custom Forms.

PFUN-21595

New options in Custom Forms general settings: you can choose to fully calculate a newly created Custom Form (pre and post phase) or to save and fully calculate. These options complement the already existing ones - running only the pre-phase with or without saving.

PFUN-21747

The Custom Form Status column is displayed by default in the Custom Form list page.

PFUN-21772

The Attachments tab is now part of the default Custom Form configuration.

PFUN-22295

Watchers

Description

ID

Description

ID

Detection Rules for the results of the Dashboard logic and for the specific portlet can be created in Dashboard Watcher.

PFUN-21035

When creating a new Watcher from the Watchers list page, the title of the dialog is now Create New Watchers to align it with the Create New Watchers button.

PFUN-21719

The button Save Model available when editing a Watcher has been changed to Save Watchers.

PFUN-21729

Possibility to define in Model Class definition a helpText and helpTextTitle for the Data Scope step that is displayed when there is no data to be shown.

PFUN-21811

Administration

Description

ID

Description

ID

By clicking (Ctrl+Click or command+Click) on the frontend or backend commit hash on the User Settings page, you can open the commit page in GitLab.

PFUN-21686

Possibility to export to XLSX the content of the Access Admin > User Group Admin / Business Role Admin / Two-Factor Management tables.

PFUN-22270

Internationalization: Translation keys for recommended items have been added.

PFUN-22377

Configuration

Description

ID

Description

ID

Auto provisioning can be configured in the UI on the SAML Configuration page.

PFUN-14612

Context linking: Added support for Convert to deal and Mark as lost actions for Quotes.

PFUN-20377

Added support for .setFitFieldWidths(true) to InputMatrix and configuratorTable. This improves text width measurement in the columnAutofit feature.

PFUN-20618

Possibility to recalculate an Action Item from the Groovy API using the new doRecalculate() method.

PFUN-20656

Groovy API methods add, addOrUpdate, update and delete support the type code CFOT to allow users manage Custom Forms via API.

PFUN-20793

Restrictions using a list of permissions can now be applied to the JSON Web Token (JWT) generated by the /accountmanager.getjsonwebtoken endpoint.

PFUN-20863

It is possible to add a context linking parameter which allows displaying a dialog with a comment text field (targetPageComment, targetPageCommentContent, targetPageCommentPlaceholder, targetPageCommentTitle).

PFUN-20965

Context linking: Possibility to configure a dialog where the user confirms the context linking action, e.g., approving a Quote. Use the targetPageConfirm, targetPageConfirmContent or targetPageConfirmTitle parameters.

PFUN-20966

It is possible in Groovy to disable dragging and dropping and resizing a dashboard portlet using withDragDrop(boolean enabled);, withResizing(boolean enabled);.

PFUN-21227

In Groovy, it is possible to set portlet size also with matrix.withLayout(2, 2, "grid"), withWidth(2, "grid") or withHeight(2, "grid").

PFUN-21242

The setHiddenColumns(List<String> columns) method is supported in InputMatrixInputBuilder.

PFUN-21319

JSON definition editor (used when you configure e.g., Quote Types) now uses syntax highlighting for better code readability.

PFUN-21357

Possibility to override in advanced configuration options the true/false value of the Feature Flag quoteButtonsConfiguration.showCreateOpportunity to the array ["DRAFT", "SUBMITTED", "DENIED"]. Then the button will be displayed base on the workflow status of the Quote. Works also for Agreements/Promotions and Rebate Agreements.

PFUN-21509

Result Matrix Output Groovy API supports grouping by column and grouping by data.

PFUN-22020

Pricefx terms of use are available for reference at User menu > Terms of Use.

PFUN-22147

Possibility to set portlet size from Groovy also for embedded dashboards.

PFUN-22352

The new Groovy API method setClearMissingInDM(boolean) in DMFieldInputBuilder sets the flag for input field behavior.

PFUN-22614

Added an alias for the Action Item Groovy API: doExecute is an alias of doRecalculate.

PFUN-22771

General

Description

ID

Description

ID

You can add a logo to the application header and change the header color on the Configuration > Appearance page. The color of the header text, menu icon and logo is adjusted to maintain a sufficient contrast with the selected header color. Supported only in the React version of the UI.

PFUN-9982, 22065

Added security to workflow endpoints workflowsmanager.fetch and workflowsmanager.fetchdetailsviaapprovable. Users without at least “view” user roles (e.g., View LPG), cannot see workflows now.

PFUN-14358

Tables: Arrows for manually increasing/decreasing a number value have been removed from editable cells. A formatted placeholder (e.g., $0.00) now indicates the input type.

PFUN-15371

Analytics: Schedules for Data Loads are fetched in batches from the database to improve loading time.

PFUN-15385

Partition name can be displayed in the application header at the beginning of the breadcrumb navigation. It can be enabled/disabled at both partition and user level. Partition name is also displayed at the bottom of the Module menu (always visible, non-configurable).

PFUN-18191

Quotes, Rebate Agreements, Agreements & Promotions, Compensation Plans: An icon is displayed on the Recalculate / Recalculate Changes button to indicate that changes have been made that require recalculation to display updated calculation results.

PFUN-19008

Custom Forms and Configuration Wizards can be embedded in Actions as tabs.

PFUN-19595

The Select Fields to Display dialog has been renamed to Table Column Options and redesigned for better user experience.

PFUN-21409

Actionable Insights: When creating a measure for join series, in Formula Builder there are some options for measures. Now we show the label of these measures as: Label | Name.

PFUN-21524

Possibility to hide the My Actions portlet from the Home page at System Configuration > Home Page.

PFUN-22033

The async Data Change Request submit notification contains a link to the Data Change Request object.

PFUN-22069

The Agreements & Promotions Calculations page can be displayed/hidden using the advanced configuration option enableAPRecalculation.

PFUN-22258

Improved Feature Flags documentation with a how-to section. The documentation is easily accessible via a button on the Feature Flags page.

PFUN-22443

Actions: The Documents tab now shows only linked documents, attached documents can be found on the newly supported Attachments tab. Unlike for Custom Forms, there is no configuration option that would let you keep the old design.

PFUN-22457

Possibility to launch Custom Forms within the context of an existing document (Quote, Agreement/Promotion, Rebate Agreement, Compensation Plan) to be able to build more integrated solutions. New input type CustomFormListPopup is available.

PFUN-22484

The currently used config file name is displayed on the Feature Flags page next to the page heading.

PFUN-22576

Bug Fixes

Description

ID

Description

ID

Attachment UI is adding an undesired suffix to the downloaded file name.

PFUN-11774

In Accrual Records there is a column called Condition Type that has name “compensationType“ and should have label “Compensation Type“.

PFUN-15536

Analytics Charts: Dimension filters show no data in case the first filter is empty.

PFUN-15805

React UI - Input Matrix column types get reset to Text once the object is approved.

PFUN-16493

Administration > CFS > Configure: TypeError thrown when the source object of the CFS no longer exists.

PFUN-16832

"Attribute 1", "Attribute 2", "Attribute 22", "Attribute 23" display in Condition Type table when user clicks on "Browse item" in Promotion Manager and Rebate Manager.

PFUN-17421

Dropdowns do not filter by letter in “Set Parameters” when creating an LPG.

PFUN-17534

It should not be allowed to save a Rollup without visibility.

PFUN-18178

Rollups: The default value in Aggregation Expression is not stored.

PFUN-18289

Pod stays running on shutdown because of Redis infinite blocking.

PFUN-18493

Advanced filter for field type "Entity Reference" not showing all available filters.

PFUN-18598

Dashboard configurator's "On change" actions are triggered on preferences load.

PFUN-19029

When we group the data in Data Table, summary of values is displayed only in the first grouping row, after adding to the dashboard no data in any grouping row.

PFUN-19340

Price List - adding multiple items to a price list, brings over just a subset of those selected.

PFUN-19925

Rebate Record detail: Selecting the category Calculation Base and then selecting a Datamart throws an error.

PFUN-20021

There is no CustomFormStatus verification during submitting the workflow meaning that Custom Forms in status superseded and invalidated can be submitted via Groovy API.

PFUN-20546

User that has no name is displayed as anonymous (nothing is shown in the place of sender) instead of showing their login name.

PFUN-20609

On AWS, Loki logs are breaking on the “<“ special character.

PFUN-21003

Postgres api.find(): cannot filter by parent table id in Postgres (distinct with sort).

PFUN-21175

When configuring an LPG, user can save the configuration before output elements are fully loaded. Fix: The Save button is inactive until all output elements are loaded.

PFUN-21380

Rebate Record is not deleted after Rebate Agreement(draft) Item is deleted by logic.

PFUN-21443

Agreements & Promotions: After recalculation and clicking on a warning summary or switching tabs between header and items, an unhandled exception is thrown.

PFUN-21696

api.add/api.addOrUpdate fails when column size is exceeded.

PFUN-21806

SQL error: SELECT DISTINCT, ORDER BY expressions must appear in select list.

PFUN-21881

DMQueryBuilder does not provide its correct initial validation status to Configurator.

PFUN-21916

Analytics: Remove superfluous datamart.canceldataload endpoint.

PFUN-21955

Message templates: Incorrect link from email for new message in quote.

PFUN-22028

Groovy API: api.addOrUpdate not parsed correctly when values come in as List.

PFUN-22046

Visual Configuration: Syntax error is shown when a user enters decimal or negative number.

PFUN-22064

Calculation Flows: Job is repeated twice even though it shouldn't in specific scenario.

PFUN-22075

Incorrect sorting order for numeric inputs.

PFUN-22111

Data Table: Chart setting validation error is displayed after going back from Rollup.

PFUN-22124

User Settings: App crashes when there is no item in the Main menu.

PFUN-22163

Analytics Data Table: Custom label is applied for all series when entering the custom label for series 1.

PFUN-22202

CFO, CFO in MCA > attribute extensions: Cannot duplicate CFO when attribute extension column is set (jsonDeserialize: deserialization error).

PFUN-22206

Agreements & Promotions: "Copy all items to clipboard" doesn't work well with special characters.

PFUN-22259

Analytics: Do not allow path separator in file name param in the datamart.import endpoint.

PFUN-22263

Number of duplicates displayed as 0 when importing Price Parameters CSV that contains only duplicates of the original table (on PostgreSQL).

PFUN-22339

Advanced filter: Cannot create a filter with a space in property name.

PFUN-22353

When the user creates a new Preference at the listing page at the Optimization - Model, it’s shared with the Actionable Insights - Watchers listing pages.

PFUN-22387

Cannot create ResultMatrixFilterBuilder input if the columnFormats is Null.

PFUN-22413

Excel/PDF exports for contracts are grouping line data incorrectly.

PFUN-22415

Timeout logout page doesn't work with useCustomLogout feature flag.

PFUN-22464

If there is an error during the execution of a query in api.stream then the error is logged but the logic is not notified and the caller believes there is zero results.

PFUN-22506

Distributed Calculation Data Load: Test Logic doesn't pass correct params' value the first time.

PFUN-22521

Quoting: Quote folder looks like selected but in reality it is not.

PFUN-22530

Translated labels are not displayed for elements in Quote Line Item.

PFUN-22550

Dimension filter is not displayed for some dimensions on the Dashboard. Fix: The dimension filter input should display all Datamart fields that was marked as dimension, and should not rely on field's type (e.g., type "time").

PFUN-22562

Children objects in action items are not deleted when deleting the parent.

PFUN-22583

Error is thrown on Advanced Filter when the user selects Action as column in Security & Configuration logs.

PFUN-20066

All Price Lists are shown when a folder is selected and not just the Price Lists inside the folder.

PFUN-22648

CommandDispatcher - Returning error 206: null in log.

PFUN-22668

Libraries updated for 12.0: slf4j bump from 2.0.6 to 2.0.9, logback-classic version bump up from 1.4.5 to 1.4.14.

PFUN-22714

Channel Manager > Claim detail: Version conflict when editing more values on one row.

PFUN-22726

Background task (janitor, heartbeat, etc.) exceptions are not always logged.

PFUN-22728

FileSecretsManager is not properly initialized.

PFUN-22730

If user enters a lengthy text in Label Field in Create Custom Form screen, platform throws only 'System Error' without proper error message.

PFUN-22756

Internal copy Data Load error - No files in the import folder.

PFUN-22764

Duplicate values in the dimension filter when typing text in the textbox.

PFUN-22852

Data is not updated correctly when user updates values in the Global Dimension filter.

PFUN-22853

Product advanced filters don't work when used in Product Extensions.

PFUN-22883

Unlimited length of log records causing problems. Fix: Configurable maximum message length with 8,000 characters as the default (in logback.xml and logback-cloud.xml).

PFUN-22909

Backend global (RR) is listed as in Processing state but job is in ready state.

PFUN-22931

If a default folder saved in a preference is a subfolder, it is not expanded when switching to the preference.

PFUN-22944

Quotes, Rebate Agreements, Agreements/Promotions, Compensation Plans: alwaysEditable should not be editable in superseded or invalidated status.

PFUN-22989

Rebate/Compensation Record calculations: Start Date value missing in the Calculations table.

PFUN-23027

Sales Compensation, Rebate Records: Inline configurator does not display saved values.

PFUN-23069

Groovy API: Result Matrix Aggregation - If Result Matrix contains no data an exception is thrown. Fix: Empty entries in aggregation are allowed.

PFUN-23078

quotesDetailCrmFindOpportunitiesPre is not returning anything into modal list.

PFUN-23115

Error occurs when resultMatrix.withLogicName(''...') returns no value.

PFUN-23139

Count queries no longer correctly make use of workers in the PA DB.

PFUN-23312

 

Found an issue in documentation? Write to us.

 
Pricefx version 12.0