Pricefx Classic UI is no longer supported. It has been replaced by Pricefx Unity UI.

 

Collins 5.0

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

VersionCollins 5.0
Build Id (UI)947
Build revision UI (first 8 characters)649ae04b
Build Id (SRV)1234
Build revision SRV (first 8 characters)

649ae04b

Release dateApr 26, 2020

In this document:

Watch a presentation of the new features in the /wiki/spaces/UDEV/pages/2119008520 video (37 mins).

Supported Browsers

Pricefx can run in the following browsers:

  • Chrome 80+ (Windows/MacOS/Linux/ChromeOS)
  • Firefox ESR 68+ / Firefox 74+ (Windows/MacOS/Linux)
  • Safari 13.1+ (MacOs)
  • MS Edge 80+ (Windows)

For best results we recommend setting your browser zoom to 100%. With a different zoom setting, you might experience issues with displaying some parts of the page content.

Other Supported Components

  • Java used for the server
    • OpenJDK 11
  • Highcharts and Highmaps used in charts/dashboards
    • Version 8.0.0
  • Excel Client, used with Pricefx, has the following requirements:
    • 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)
  • The 1904 date system is not supported by Pricefx when uploading data from Microsoft Excel.

Supported Languages

To see in which languages the application UI is available, visit Localization

Improvements

All Modules Improvements

New Feature DescriptionID
It is possible to see now whether and to whom an attachment was sent. This allows you to check if the sending was successful.PFCD-6096

PriceAnalyzer Improvements

New Feature DescriptionID
The options 'Merge Close Data Points' and 'Show Full Data Set in Grid' are now included in the code definition of charts.PFCD-6103
Highcharts and Highmaps libraries have been upgraded to version 8.0.PFCD-6227
It is not allowed anymore to set the Incremental option for Truncate Data Loads. For older jobs (created before upgrade to Collins 5.0 release) where this option was enabled, it will stay enabled. If you disable the Incremental option the check-box will become non-editable and you will not be able to enable the option again. For Data Loads saved with the Incremental option off, the check-box is completely hidden.PFCD-6286
When downloading the content of a PA data grid, a dialog now asks whether hidden columns should be included or not. So far hidden columns were always downloaded.PFCD-6357

PriceBuilder Improvements

New Feature DescriptionID
It is now possible to increase the number of key columns in the Price Parameter tables (e.g., from Matrix2 to Matrix5). All the existing values will be preserved and for the new key(s), the values will be set to an asterisk. This placeholder character can be changed in Advanced Configuration Options.PFCD-5855
There can now be several Price List tabs opened simultaneously in the browser.PFCD-5959
The Last Updated By and Created By columns display the name of the user who created / last edited a Price List, Manual Price List, Live Price Grid and Price Parameter.PFCD-6054
Product/customer extension's attributes can now be made available in the Product/Customer input filter when you use the new datamartProductGroupEntry or datamartCustomerGroupEntry methods. The returned product group object can be used in a Datamart query.PFCD-6189
Products can be added to or removed from Price Lists or LPGs by the header logic.PFCD-6333

QuoteConfigurator Improvements

New Feature DescriptionID
Quote mass update jobs can be scheduled as calculation flows. Use the CalculationFlowActionBuilder's method addQuoteMassUpdateAction.PFCD-6079
Comments can be added to Quotes when using the quote mass update functionality.PFCD-6080
Quote Types entitlement: You can limit which Quote Types the user will see when creating a new Quote by adding a user group in the 'User Group (Can Use)' column. Similarly, you can determine which users will be able to edit a Quote Type. PFCD-6085
It is possible to define what logic will be executed when a user does the 'Convert Quote to Deal' action. The hook is hook available under the "QUOTE_TO_DEAL_PRE" event name.PFCD-6098
Quote calculation message is available in the Internationalization section under the QUOTE_CALCULATED key.PFCD-6232

RebateManager Improvements

New Feature DescriptionID
It is possible now to issue warnings without showing "calculated with errors".PFCD-6075
Rebate Type filter logics (defined in Configuration > RebateManager) can determine which rebate types will a user see when creating a new Rebate Agreement. It works in the same way as the already available Contract Term Type filter logic.PFCD-6086

Dashboards Improvements

New Feature DescriptionID
Embedded Dashboards created with api.dashboard().openInTabOrRecalculateOn(eventName) or api.dashboard().openInWindowOrRecalculateOn(eventName) now have a new option .andCloseOn(eventName) which allows to have them closed on a specified event.PFCD-6308

Excel Client Improvements

New Feature DescriptionID
Excel Client newly validates if required hidden fields have a value.PFCD-6303

Workflow Improvements

New Feature DescriptionID
Added summary workflow notification emails that are sent at a specified interval and/or as an overall once-a-day summary.PFCD-6060
Users can add comments when submitting a Price List.PFCD-6077
Individual workflow notification messages can be switched off in Configuration. You can, for example, disable all notifications for Quotes. Until now, notifications could be disabled only for specified events.PFCD-6090
There is an easier approval for users who are members of multiple user groups to which an approval step is assigned. Users now do not have to approve for each of the groups separately but can do it in one step. The trick is not to select any group in the workflow dialog and click the Approve icon. If a group is selected, the user will approve only for this group. In the workflow logic, use the withParallelStepApprovalAllowed(true) method to add this feature to your workflow.PFCD-6091

Administration Improvements

New Feature DescriptionID
In a newly created partition, there is a default business role called 'All Roles' which contains all the existing roles. Assigning this role to a newly created user saves you time that you would have to otherwise spend on assigning dozens of user roles.PFCD-6050
The new 'Name' column in the Job/Task Tracking table displays the unique name or label of the object for which the job has been executed. Applies only to jobs started after an upgrade to the Collins 5.0 version.PFCD-6058
Using the API, it is possible to assign a role, business role or user group to multiple users at once.PFCD-6093

Backend Improvements

New Feature DescriptionID
Names defined in Attribute Metadata can be used in Groovy API functions and also when specified, Groovy API functions return objects with these names.PFCD-6010
The performance of Calculation Flows is improved by introducing indexing and automatic CFT table cleanup.PFCD-6040
The new method api.abortSyntaxCheck enables to skip syntax check if the user knows that there are no inputs to be evaluated in the subsequent elements of the logic. It helps to save computation time for more complex logics if all the inputs are created in the first elements of the logic.PFCD-6049
The new sendEmail API method allows you to set (among other things) the sender's name and email address and enables you to use custom SMTP server settings.PFCD-6052
The new Source Object column in the Email Admin displays the ID of the object (Quote, Contract, Price List, etc.) where the email was generated.PFCD-6056
Email notifications on failed background jobs contain now detailed information about the failed job. In addition, you can edit the template for the email message's subject and body. PFCD-6057
PFCD-6055
The status of calculation flow jobs can be tracked more easily. The flow's typedId can be displayed in the Calculation Flows configuration and the typedId and name of the flow can then be found on the Job/Task Tracking page. PFCD-6059
When a logic element execution times out, you can now see the logic's and the element's name in the logic test drive results or in the log file. This is especially useful for debugging configurations that use many libraries and many nested calls.PFCD-6069
On the server, it is possible now to select what export format can be used for a specific publishing template, so that users can create e.g. only PDF documents instead of DOC documents.PFCD-6087
The groovy.util.Node class has been whitelisted.PFCD-6089
You can make a calculation logic element's code hidden if it contains sensitive information (e.g., 3rd part intellectual property). When a logic with a protected element is saved, the source code of this element will not be returned to the client in any subsequent fetch operations and will not be visible in the expression editor. A protected element can still be updated.PFCD-6174
The api.findLookupTableValues is now able to sort the returned values of the specified Price Parameter table.PFCD-6208
Users with appropriate admin or support rights can cancel a running job in the Job/Task Tracking section of the individual jobs or on the JST overview page in Administration.PFCD-6238
The getSkusFromProductGroup and getCustomerIdsFromCustomerGroup methods return SKU or customer IDs based on the group definition.PFCD-6287
For SAML connections to ADFS, Azure, Office 365 or Okta an easier way to configure the Pricefx part is now to use the data from the so called "federation metadata URL" which returns a XML document that holds all necessary values to configure SAML (in particular the IdP URL and the signing certificate). Once the federation metadata URL is entered and saved, the configuration is updated automatically.

PFCD-6329
PFCD-6380

The CalculationResult class can now be used in Groovy scripts.PFCD-6473
Allocation to Datamart now works besides Rebate Records for also for other objects, such as Quotes, Contracts, Price Lists, Price Parameters, etc. Use the emitDMScopedObject API method in the PA calculation logic.PFCD-6485


Fixed Issues

Common Fixed Issues

Bug DescriptionID
If a document (quote/contract/agreement) name contains a dot and the document is exported to Excel, the file is downloaded without the .xlsx, .xlsm extension.PFCD-6533

PriceAnalyzer Fixed Issues

Bug DescriptionID
Heatmap does not support zooming and was incorrectly displaying a checkbox for disabling that.PFCD-6147
Labels for fields in Product and Customer Data Sources are not properly synced with the Products and Customers tables. PFCD-6161
Some Data Sources are created without the LastUpdateDate system field.PFCD-6262
The upload option on Datamart Data tab should be disabled since it is not possible to directly upload data to Datamart based on a DataSource or to upload data to Datamarts which are not based on any DataSource.PFCD-6356
Support for the Highcharts boost.js module has beed added.PFCD-6480
In PriceAnalyzer, calculation processes too many rows when batching enabled.PFCD-6508

PriceBuilder Fixed Issues

Bug DescriptionID
In Simulations, it is not possible to filter on the basepricelist or basepricegrid. PFCD-5565
In the simple filter, the operators "==" and "!" do not work as expected.PFCD-5741
In Product master, PX and PP quick filters with == do not work.PFCD-6211
When you download a PDF file with LPG (Matrix) Details, the file is downloaded with a wrong extension (.XLSX in case of EXCEL template; no extension in case of WORD template).PFCD-6257
When creating a new Price List, there is no option for "Matrix logic element" in the step "Get Parameters".PFCD-6319
Full api.global is stored in the database between LPG passes and consequently creation of the dirty JST fails on “Could not send query: query size is >= to max_allowed_packet“PFCD-6363
A single dirty item does one additional pass only.PFCD-6506

QuoteConfigurator Fixed Issues

Bug DescriptionID
In QuoteConfigurator, the option "Add customer input to root item automatically" does not work properly.PFCD-6302
Denying a quote causes a database error.PFCD-6484

RebateManager Fixed Issues

Bug DescriptionID
When trying to download a Rebate Agreement to Excel, you get a HTTP ERROR 500 screen.PFCD-6155

Dashboard Fixed Issues

Bug DescriptionID
Dashboard preferences are not deleted when the dashboard itself is deleted.PFCD-6094
When trying to add a Data Table to a Dashboard with more than one series, the saved changes to the second tab (e.g. Series 2) are not imported into the Dashboard.PFCD-6284

Workflow Fixed Issues

Bug DescriptionID
A number returned by api.runSummaryQuery(q) is not properly formatted in messageTemplates. PFCD-6160

Excel Client Fixed Issues

Bug DescriptionID
When you download data from LPG through Excel Client, all fields are downloaded regardless of whether some fields are hidden in the default preference of the LPG. Excel Client does not respect the default preference of the LPG, whereas in PX and PP it does.PFCD-6281

Administration Fixed Issues

Bug DescriptionID
Users with the 'Investigate for Support' role cannot see ToDo items in the ToDo Admin page.PFCD-6421

UI Fixed Issues

Bug DescriptionID
When you use a special character in a column label, you get a misleading error message.PFCD-6492

Backend Fixed Issues

Bug DescriptionID
In Configuration Wizard Admin, the Label should be a required field (to avoid blank rows in the Configuration Wizard menu).PFCD-5896
In Price Parameters, the 'Last Updated By' and 'Created By' columns do not have consistent behavior when it comes to mass update, database records and being logged in.PFCD-6062
Multiple users can create global preferences with the same name.PFCD-6111
It is possible to create multiple publishing templates with the same name.PFCD-6136
Nested @Field annotations do not work in the currently used Groovy sandbox.PFCD-6144
Remote login does not work when there is an expired normal login session in the browser.PFCD-6339
When importing configuration using the Packaging tool, it is not possible to load a Data Source, there is an error "Ambiguous currency for Data Source: CcyFrom and CcyTo".PFCD-6354
When a huge price grid is deleted in the UI, the PGIs/XPGIs stay in the database and the parent object (PG) gets deleted. This leads to issues, e.g. with DB disk space.PFCD-6381
There is a unclear "recursive like" log output for CFS jobs.PFCD-6410
When you copy a logic, assign it to an LPG and run the LPG, the CompiledClasses folder gets overpopulated and there is on cleanup of the files, which affects the performance.PFCD-6443
When you download a full log, the file is created correctly but the suffix is incorrect (.LOG instead of .ZIP).PFCD-6445
api.find() and api.stream() throw an exception when Filter.in() is used on the "Long" type field.PFCD-6468
DataLoadAction cannot be used in scheduled jobs with dependencies.PFCD-6500

Found an issue in documentation? Write to us.