Caribou Lou 14.1.0


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

Version

Caribou Lou 14.1.0

Release date

February 21, 2025

Release type

Minor

In this document:

Improvements

CLIC Modules

Description

ID

When you recalculate changes in line items made within the collaboration workflow’s review step, only line items assigned to your group are recalculated. Other items are not included in the recalculation not to interfere with reviews done by other user groups.

PFUN-27241

Optimization

Description

ID

Added the model.tableNames() API method to retrieve the list of table names for the current model.

PFUN-20736

The datamart.createfc endpoint validates all field types, including MONEY, CURRENCY, QUANTITY, and UOM, against the Avro schema, ensuring compatibility with various DMField types.

PFUN-28489

Import Manager

Description

ID

SKU and other business key columns are now editable in the new rows in Import Manager.

PFUN-28014

The Import Products button is disabled when you try to import a Product Extension table which does not have any Business key defined. A tooltip explaining the problem is displayed when you hover the mouse curser over the disabled button.

PFUN-28180

CRM Integration

Description

ID

Interceptor now automatically reloads immediately after changes are made in Unity.

PFUN-27973

Configuration

Description

ID

Query API now gives an easy access to CalculableObject Calculation Results (CalculationGridItem, CompensationRecord, PriceGridItem, PriceListItem, RebaterRecord). Example: api.queryApi().tables().priceGridItems(<id>).calculationResult("myElementName")

PFUN-27599

Missing Query API method qapi.source(table, filter) has been added.

PFUN-28573

General

Description

ID

Implemented automatic expiration of large context stored on the backend to prevent unnecessary resource consumption.

PFUN-18631

Updated the description for the “Max Grid Group By” setting in System Configuration > General Settings.

PFUN-28318

Bug Fixes

Description

ID

In the Analytics module, in the Pie Chart the Data Label remains visible despite unchecking the "Show Legend" checkbox.

PFUN-6782

Workflow delegation: Better error handling regarding deletion of initialized records. Action buttons are displayed only if the server allow those actions.

PFUN-13100

Summary workflow emails are sent to deactivated and deleted users.

PFUN-13563

Synchronous file download: The filename in response headers is different than the filename of the actually downloaded file. Fix: Added specific prefixes for synchronous downloads for exports of UserGroups, BusinessRoles and Two Factor Authentications.

PFUN-17101

Administration > Logs > Emails > Body preview - some elements are aligned incorrectly.

PFUN-18479

Add an error message if the items filter logic is not found by the configured name. Fix: Added for Agreements/Promotions, Rebate Agreements, Compensation Plans.

PFUN-19464

Message templates > Allow sending column: Missing tooltips with explanation. Fix: In the template message list when user hovers over each fixed message template a message with the reason why it is fixed appears on a tooltip.

PFUN-19936

Message templates > Allow sending column: Distinguishing between editable and read-only values in boolean columns. Fix: Enable/disable toggle added to the Message Templates page. Read-only rows appear disabled to distinct them visually.

PFUN-19938

Errors "Not authorized for command: ..." when assigning/un-assigning user roles in GCP, AWS clusters.

PFUN-20982

Export to excel button in Result Matrix allow the user to click multiple times. Fix: When exporting a table to Excel the button is disabled after it is clicked for the first time and is enabled only after the download is finished.

PFUN-21247

Actions: Hide the Version column on the Attachments tab.

PFUN-22563

Implement 'Quote has been saved' notification for manual saving of the Quote.

PFUN-23049

Password restriction : "User name included in password" rule can be bypassed by a combination of lower case and upper case characters.

PFUN-23136

Two success pop-up messages appear after submitting a Quote.

PFUN-24791

Support for a shared HTTP connection pool was added to the SandboxAPI.httpCall method. If enabled, the HTTP call shares connections between HTTP requests instead of creating a new connection for every HTTP request.

PFUN-25397

"My pending approvals" portlet shows no data since there are pending entities. Fix: The permission to fetch workflows was added into the Manage A&P role.

PFUN-25930

Calculations - Fill in the 'Created By' field in Jobs with the name of the person who created the calculation schedule.

PFUN-26267

Support for converting "key1" to "name" for MLTV lookups is only partial. Fix: Now virtual field names can be used to refer to columns when using api.find and api.stream.

PFUN-26567

CLIC: Items tab - incorrect number of displayed rows and pagination when simple filter is used.

PFUN-26629

Models: Inline edit of a model is possible even for users who have the Manage MO Role and are assigned to Read Only Group that is set on the Model Class.

PFUN-27144

Quotes: Submit button is disabled after calculation. Fix: A backend issue. The lastCalculationDate and lastUpdateDate after sync and async calculation are now synchronized.

PFUN-27235

The Condition Record Logic would not trigger if the watcher step was positioned after the approval step in the workflow.

PFUN-27256

'Not authorized' sometimes pops up for Custom Form for users with 'View Custom Form' role.

PFUN-27287

Context Linking: An uncaught exception occurs when creating a pre-filled dashboard.

PFUN-27483

Add validation on CFTrait payload to prevent Calculation Flow processing stuck on Deserialization Error. Fix: Validation of CalculationFlow and CalculationFlowTrait added. Now it is not possible to save these entities with invalid configuration field.

PFUN-27504

Tables: New label translations are not saved for extra info columns. Fix: Editing local translations is not allowed for instances that are stored in table preferences.

PFUN-27541

Issue in case of multiple events (mass submit) and two sources consume the same event. Fix: MQTT events will now always be sent after the DB transaction has been committed.

PFUN-27575

Quotes, Price Lists, Custom Forms: Buttons "Add workflow approvers/watchers" are visible for users with only "View" user roles.

PFUN-27582

Custom Form in MCA: Filtering CFOs via type is causing casting error. Fix: On Category Custom forms listing table it is possible to use quick filter on the typedId column.

All the options in Advanced filter can be used when using typedId in Module category pages.

PFUN-27660

Incorrect behaviour of api.stream or api.find when using lookupTable.uniqueName.

PFUN-27774

The USER_FETCH permission has been removed from the following roles: CONTRACTS_PERM, CONTRACTS_RO_PERM, QC_EDIT_PERM, QC_RO_PERM, RM_REBATEAGREEMENTS_PERM, RM_REBATEAGREEMENTS_RO_PERM, SC_COMPENSATIONS_RO_PERM.

PFUN-27853

PL/LPG header section: Some hidden buttons are still displayed. Fix: The portletCalculationInputsButton, headerLogicSaveAndRecalculateButton, outputChartDefinition and calculationResultsButton keys can be used in the JSON configuration.

PFUN-27923

When importing items from the clipboard without a header, the progress percentage is displayed incorrectly.

PFUN-27943

Salesforce > DBV in Custom Forms: Filters set in JSON configuration in CFOT don't work as expected. Fix: The DVB configuration for the list view is always valid even after row editing in the table.

PFUN-27979

Context Linking: After replacing line items, the displayed number of rows is incorrect until the page is refreshed.

PFUN-27982

Import Manager: Restrict file size of possible uploads to 1 GB.

PFUN-28003

Collaboration Workflow: The recalculation process during the review step returns validations from both - “Other items” and "Items for review" tabs instead of only the "Items for review" tab.

PFUN-28009

Jobs & Tasks: Missing tab "Calculation Items" in JST sider for MO Parallel Calc and PA DDL jobs.

PFUN-28030

Import Manager permissions: Manage-level role must be required for import and all other actions in Import Manager. View-level role must be required to see Import details.

PFUN-28032

Header inputs are not displayed in the sider during the collaboration step, and users can override Calculation Results.

PFUN-28034

Filtering and sorting applied on the “Items for review” tab is incorrectly carried over to the “Other Items” tab.

PFUN-28041

Issue regarding inconsistent date format conversions within the Condition Record Set.

PFUN-28121

The log messages have been incorporated into the Data Load run statistics and results. These logs will indicate if the user associated with the run lacks the necessary privileges or has been deleted.

PFUN-28140

Workflow denial reasons: "Other Denial Reason" option is displayed even if it is not allowed via Groovy.

PFUN-28181

Analytics: Invalid Excel file upload creates an empty row with only "LastUpdateDate" in DS.

PFUN-28185

In the message templates configuration section every time the user selects a new template from the list the whole page reloads.

PFUN-28200

Custom Form Recalculate button is not working when triggered from the "3 dots" button.

PFUN-28252

Permissions are not consistent – RM_REBATEAGREEMENTS_PERM and CONTRACTS_PERM fail to inherit all permissions from their corresponding read-only roles.

PFUN-28264

Collaboration Workflow: The collaboration workflow step is incorrectly displayed to users after another user completes it.

PFUN-28271

CLIC: The simple filter in the Items tab is not saved when saved as a preference.

PFUN-28279

Company Parameters: Not possible to cancel change of Company Parameter type. The Cancel button in the warning pop-up dialog is unresponsive.

PFUN-28296

Internalization: Missing Translation key in Internationalization table for Custom Forms.

PFUN-28299

importmanager.upload loads the whole file in memory when streaming to S3. Fix: Unity will send the exact size of the uploaded file size in the X-Pricefx-Size-Of-File HTTP header of the importmanager.upload request and server will provide that value to the S3 API (if the header is present).

PFUN-28302

The Analytics module is not able to load Data Sources, Datamarts, and Data Feeds.

PFUN-28305

Quotes that do not require approval are not automatically converted to Deals when using the 'Auto-convert Quote to Deal after approval’ option.

PFUN-28310

JST jobs fail to start because the pod is unable to connect to the PA database.

PFUN-28317

Agreement & Promotion and Quotes Mass Update: “Create duplicates (original Agreements & Promotions will not be changed)” and “Automatically submit updated (or duplicated) Agreements & Promotions where possible“ options are displayed as false on FE and true on BE.

PFUN-28329

A label from the Document Creation Workflow remains displayed after finishing the workflow when the "Submit on Creation WF finish and restart the last state when denied or withdrawn" option in Quoting General Settings is enabled.

PFUN-28349

Quotes: In concurrent editing, item sorting does not update correctly for other users until they switch tabs or refresh the document.

PFUN-28364

The 'Review Done' button remains inactive for a user in the second sub-step who had already accepted the line item in the first attempt.

PFUN-28365

Add new Custom Form dialog: User can create many CFOs by mistake when backend pre-phase takes a long time.

PFUN-28387

Issue that allows the creation of multiple duplicate Price Lists using the Duplicate button.

PFUN-28397

Line Items are not visible on the Items tab, and after recalculation and saving, non-TMP line items are duplicated.

PFUN-28412

Strategy Designer: Live Preview fails when using a text argument in a snippet.

PFUN-28439

The ‘Review Done’ button remains inactive when it should be active.

PFUN-28444

The ‘Total Margin’ and 'Total Margin %' columns are incorrectly displayed after submitting an Agreement/Promotion.

PFUN-28483

Error message appears during the creation of the new Price List.

PFUN-28545

Analytics: Incorrect CcyValidTo dates set after uploading currency data to the Data Source.

PFUN-28556

Error with PlatformManager export Table to CSV integration.

PFUN-28574

Distributed Data Load with "Allowed Distributed Calculation = false" does not execute the logic.

PFUN-28591

Saving a configuration with collaboration workflow-specific tabs fails due to a validation error in the JSON structure (configuration.steps.type).

PFUN-28597

api.find() with "customerGroup" field selection gives unexpected results.

PFUN-28611

The Pricefx Copilot displays in chat "0" during the creation of an action.

PFUN-28652

Strategy Designer: Live preview crashes when a variable is passed to a data lookup.

PFUN-28666

Query API: The nullIf function incorrectly takes more than two arguments.

PFUN-28826

Hot Fixes

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

14.1.1 PR

Released on February 28, 2025

Description

ID

Display inherited values correctly for multi tier, dateTime User Entry (timestamp), percent, list of numbers and boolean in sider.

PFUN-23824

LPG: Cannot select only Product which is entered in Text Entry but have to Select All.

PFUN-28353

Allow AsyncDownloadService, AsyncLoaddataService, AsyncImportFileService to use external endpoint for S3 service.

PFUN-28408

Distributed Data Load with "Allowed Distributed Calculation = false" does not execute the logic.

PFUN-28591

Strategy Designer: Missing input in LP after duplicating a Strategy.

PFUN-28804

Cannot clear Auto-approve parameter of Live Price Grid.

PFUN-28853

Emails not sent when address contains Capital Letter after upgrade.

PFUN-28928

14.1.2 PR

Released on March 3, 2025

Description

ID

Cannot call model.inputs in the Groovy console.

PFUN-28862

14.1.3 PR

Released on March 14, 2025

Description

ID

Analytics: NPE when key fields in Datamart are not the same as in main Data Source.

PFUN-25792

Datamart validation gap.

PFUN-27296

Rebate Agreements: Logic element timing out even though Timeout Override is set.

PFUN-27699

Data Load refresh issue after upgrade from 13.2.1 to 13.3.6. Fix: When a dim DATE placeholder field is added to a new DM, then no derived Calendar fields are added to the DM.

PFUN-28423

Heartbeat should put last pod log line into JST messages on unexpected crash (OOM, or something else).

PFUN-28488

Copyfile fails when concurrent threads check for dir at the same time.

PFUN-28533

CLIC: Header type entitlements should not limit filtering options.

PFUN-28590

Analytics: Failure to obtain advisory lock not visible in Data Load calculation messages.

PFUN-28816

Editable cell - typing -0 plus decimals doesn't work.

PFUN-28845

Default pricing logic not defaulting in Price Lists.

PFUN-28907

Not possible fetch data from CX50 table due to error: Could not find property 'attribute32' on class class net.pricefx.domain.CX30.

PFUN-28977

Data Feed misaligned after Data Source field label change. Fix: A DS field with either a changed name or label is now correctly seen as a modified field,. i.e., the dbColumn mapping is preserved and no data is lost (in the DF) by the DS change.

PFUN-29025

Issue with Price List creation after 14.1.2 upgrade.

PFUN-29059

14.1.4 PR

Released on March 19, 2025

Description

ID

Company Parameters: Cannot mass edit JSON/JSON2 type. Fix: Drop stringtype=unspecified all the way from the oldstable in the postgres-pg-config.xml hibernate connection configuration.

PFUN-28672

Rebate Records: java.lang.String is in module java.base of loader 'bootstrap'. Issue occurred when a valueField property was specified in the filter and the returned list contained only one item.

PFUN-29047

Unable to deploy Post Step Logic when api.enableAutoFlushMode is used.

PFUN-29087

Import Manager: Uploading a new file is not updating the reference to original file properly.

PFUN-29088

Copy paste within an XLSX file via LibreOffice is making Import Manager validation confused.

PFUN-29089

Support "compileOnly/incremental" for Workflow logics as well. Fix: The following new options are available: workflowbuildermanager.update/{formulaId}/incremental, workflowbuildermanager.update/{formulaId}/compileOnly, workflowbuildermanager.update/{formulaId}/incremental/compileOnly.

PFUN-29093

Master Data: There is an error when filtering by Customer Extension attribute to get Customer. Error in join Customer and Customer Extension.

PFUN-29144

14.1.5 PR

Released on March 27, 2025

Description

ID

Percent columns showing as text in Price List Simulation.

PFUN-22396

Table columns options not updating in Customer/Product Extension configuration.

PFUN-26291

Company Parameters: Cannot mass edit JSON/JSON2 type. Fix: Drop stringtype=unspecified all the way from the oldstablein the postgres-pg-config.xml hibernate connection configuration.

PFUN-28672

OTel: Top level CMD span is discarded if request body is too big. Fix: Now the ClientRequest.toString() will format data as JSON (for better readability) and limit the size to 4000 chars.

PFUN-28773

Analytics: Index name too long for Citus distributed table. Fix: Reserving extra 8 characters for the PostgreSQL/Citus shard indexes.

PFUN-28817

QueryAPI: Ensure Enum values are converted to Strings.

PFUN-28827

Public QueryAPI is now tracked by revAPI to ensure that API changes are backward compatible or carefully done.

PFUN-28828

QueryAPI: Ensure structured objects are returned as Maps so that QAPI does not leak any domain object to the Groovy API.

PFUN-28838

When advanced config property paDailyCurrencyConversionRates = true, when loading data in the ccy DS, any gaps between rows for the same currency pairs are now automatically filled by adding additional rows, so that there is one rate for each day. This is intended for customer that have frequent ccy rate changes, but not quite daily. It should not be used for weekly or less frequent changes.

PFUN-28994

Improve PurgeEventTasks to remove the old unprocessed events. Fix: A new configuration setting event.retainEventsInDays.unprocessed has been introduced. This setting controls the max number of days an unprocessed EventTask can stay in the DB. As a result, any EventTask older than this setting will be deleted by the janitor task.

PFUN-29003

Formula does not get persisted on save. Fix: Now when a logic is saved from the UI, all the elements are compiled and saved even if the execution raises an exception in syntax check.

PFUN-29016

Citus: Allow non-distributed DM using distributed DS option. Fix: New AppProp paAllowNonDistributedDMMisalignment = true allows validation for a DM to be distributed even though it uses a source DS that is distributed.

PFUN-29046

Analytics: Reduce the logging volume.

PFUN-29149

Creation Workflow status resets to Draft instead of Finished when the Contract is approved.

PFUN-29162

Cannot find file to Import to Import Manager. Fix: Make filename unique for uploaded files for Import Manager.

PFUN-29171

Heartbeat incorrectly use a backoffLimit for single/master jobs. Fix: The backoffLimit as well as the parallelism/completions is explicitly set to 1.

PFUN-29214

Analytics: NPE in datamart.rebuildtables endpoint. Fix: The NPE is fixed and info-all vs info mode has been introduced, with the latter now returning far less data.

PFUN-29226

Analytics: The lookup of the ‘id’ sequence name returns null and the code is not recovering from that by reverting to the default (expected) sequence name. Apparently, this happens when the sequence is created manually, instead of derived from the BigSerial type of the ‘id’ column. Fix: Default the 'id' sequence name to the expected value when SELECT pg_get_serial_sequence() doesn't return the name.

PFUN-29227

QueryAPI: The isFalse expression is not working.

PFUN-29232

Users no longer able to see the option to Approve or Deny Price Lists.

PFUN-29285

Revert changes in Company Parameters - mass edit undefined typeid.

PFUN-29324

api.find errors with JSON filter.

PFUN-29346

Configuration > PX/CX/SX Master Extension: It is not possible to set attribute-meta, button is not clickable.

PFUN-29353