In this document:
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
- Highcharts and Highmaps used in charts/dashboards
- 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 (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 Description | ID |
---|
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 Description | ID |
---|
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 Description | ID |
---|
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 Description | ID |
---|
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 Description | ID |
---|
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 Description | ID |
---|
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 Description | ID |
---|
Excel Client newly validates if required hidden fields have a value. | PFCD-6303 |
Workflow Improvements
New Feature Description | ID |
---|
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 Description | ID |
---|
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 Description | ID |
---|
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 Description | ID |
---|
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 Description | ID |
---|
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 Description | ID |
---|
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 Description | ID |
---|
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 Description | ID |
---|
When trying to download a Rebate Agreement to Excel, you get a HTTP ERROR 500 screen. | PFCD-6155 |
Dashboard Fixed Issues
Bug Description | ID |
---|
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 Description | ID |
---|
A number returned by api.runSummaryQuery(q) is not properly formatted in messageTemplates. | PFCD-6160 |
Excel Client Fixed Issues
Bug Description | ID |
---|
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 Description | ID |
---|
Users with the 'Investigate for Support' role cannot see ToDo items in the ToDo Admin page. | PFCD-6421 |
UI Fixed Issues
Bug Description | ID |
---|
When you use a special character in a column label, you get a misleading error message. | PFCD-6492 |
Backend Fixed Issues
Bug Description | ID |
---|
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 |