QPR ProcessAnalyzer Release Notes: Difference between revisions

From QPR ProcessAnalyzer Wiki
Jump to navigation Jump to search
No edit summary
 
Line 1: Line 1:
This page contains new features and fixed issues for each QPR ProcessAnalyzer release. For information about compatibility of different versions, see [[QPR ProcessAnalyzer Version Compatibility|Version Compatibility Information]].
This page lists all new features and fixed issues for each QPR ProcessAnalyzer release.


== Next Release: QPR ProcessAnalyzer 2021.9 (planned release date 2021-12-14) ==
== Next Release: QPR ProcessAnalyzer 2025.7 (planned 2025-11-11) ==
[[Next_Release_Roadmap|See roadmap for next release features and fixes]]


<div style="border:1px solid #dfdfdf;padding:0.5em 1em 0.5em 1em;background-color:#E7EAEC;margin:10px 0px 0px 10px;">
== Latest Release: QPR ProcessAnalyzer 2025.6 (build 10690) (released 2025-10-01) ==
QPR ProcessAnalyzer WCF API is now deprecated and it will not be available starting from 2022.1 release. All customized integrations and other solutions that use WCF API need to be converted to use [[QPR_ProcessAnalyzer_API|Web API]]. Note that there may also exist scripts that contact the WCF API using the [[SQL_Scripting_Commands#--.23CallWebService|--#CallWebService]] command. The API generation in use can be distinguished from the url: if it contains "/MainService.svc" the connection is to the WCF API and changes are required.
New features presentation: [https://files.qpr.com/releases/QPR_ProcessAnalyzer_2025_6.pdf QPR_ProcessAnalyzer_2025_6.pdf]
</div>
 
<div style="border:1px solid #dfdfdf;padding:0.5em 1em 0.5em 1em;background-color:#E7EAEC;margin:10px 0px 0px 10px;">
Starting from 2021.9, QPR ProcessAnalyzer ScriptLauncher uses Web API instead of legacy WCF API. To take the Web API into use, ScriptLauncher needs to be updated to 2021.9. In addition, in the ScriptLauncher configuration file, ''ConnectionType'' setting needs to be ''WebApi'' (the setting is in place in the 2021.9 release package). The new Web API based ScriptLauncher is not anymore dependent on the API protocol version, and thus starting from 2021.9, information about the protocol version is not published. The old ScriptLauncher using protocol version 39 still works with the 2021.9, but as the WCF API is deprecated, ScriptLauncher update is mandatory before updating to 2022.1.
</div>
 
<div style="border:1px solid #dfdfdf;padding:0.5em 1em 0.5em 1em;background-color:#E7EAEC;margin:10px 0px 0px 10px;">
SQL scripting commands that create datatables and temporary tables, create the tables now using specific data types (such as VARCHAR, INT, DATETIME2, BIT) instead of SQL_VARIANT. This may affect SQL commands that have relied on the SQL_VARIANT column type.
</div>
 
'''Features:'''
* B-06360: Model Manager view has been removed.
 
'''Fixed issues:'''
* D-11282: Some system presets for task log analysis were very slow.
* D-11296: Data grid and pivot grid were showing "No records to display" when about to show content.
* D-11300: Following error appeared when doing logout when PA session was expired: Cannot read properties of null (reading 'find').
* D-11315: CSV export was missing from Root causes visualization.
* D-11316: Unnecessary error message appeared in login screen when user logged out quickly after opening the navigation menu.
 
== Latest Release: QPR ProcessAnalyzer 2021.8 (build 614) (released 2021-11-02) ==


<div style="border:1px solid #dfdfdf;padding:0.5em 1em 0.5em 1em;background-color:#E7EAEC;margin:10px 0px 0px 10px;">
<div style="border:1px solid #dfdfdf;padding:0.5em 1em 0.5em 1em;background-color:#E7EAEC;margin:10px 0px 0px 10px;">
Known issue in 2021.8: Some dashboards created with earlier releases, may give following error when opened: ''Chart settings are invalid, and the chart may not work correctly. Type of property "measures/0/nullValue" must be string."'' The issue can be resolved by going through all charts in the dashboard and opening the ''Chart settings'' (in the ''Advanced'' tab). If the settings contain one of the following: ''nullValue: null'', ''emptyStringValue: null'', ''trueValue: null'' or ''falseValue: null'', replace them is follows: ''nullValue: ""'', ''emptyStringValue: ""'', ''trueValue: ""'', ''falseValue: ""''. When changes have been made, save the dashboard, and check that there is no error, when the dashboard is opened.
Known issue: If the [[PA_Configuration_database_table#:~:text=DefaultUiLanguage|DefaultUiLanguage]] system configuration is not defined, users who haven't changed their own language, are unable to login. To prevent this problem, please ensure the DefaultUiLanguage is defined. The next release will fix this issue (D-14706).
</div>
</div>


<div style="border:1px solid #dfdfdf;padding:0.5em 1em 0.5em 1em;background-color:#E7EAEC;margin:10px 0px 0px 10px;">
<div style="border:1px solid #dfdfdf;padding:0.5em 1em 0.5em 1em;background-color:#E7EAEC;margin:10px 0px 0px 10px;">
Known issue in 2021.8: Some dashboards created with earlier releases, may give following error when opened: ''Chart settings are invalid, and the chart may not work correctly. Property "expressionType" is required in dimensions/0."'' This issue appears if there are empty ("(none)") measures or dimensions above defined measured or dimensions. The issue can be resolved by removing the empty measured or dimensions by clicking the ''Remove'' button for the measure/dimension. This may affect how the remaining measures and dimensions are mapped to the visualization, so the mappings may need to be adjusted in the measure/dimension settings. When changes have been made, save the dashboard, and check that there is no error, when the dashboard is opened.
Content-Security-Policy (CSP) HTTP header has been updated to enhance security by implementing more restrictive settings. The following directives have been added:
</div>
* object-src 'none'
 
* frame-ancestors 'self'
'''Features:'''
* form-action 'none'
* B-06288: CSV file import can update existing rows in the datatable.
* base-uri 'none'
* B-06281: User specific date format, first day of week and 12/24 clock can now be set separately from the language.
* worker-src blob:
* B-06291: Script log is refreshed automatically during the script run.
* B-06269: In Workspace, projects have been moved into a separate tab.
* B-06213: Performance for numeric and date dimensions has been improved (by taking into use NumberPrecision and DatetimeTruncation parameters). Additionally, data type is now specified only for custom expressions, and for the custom dimensions, there is new setting "Date interval" for date values granularity (Truncate function is not used anymore).
* B-06316: Old data import view has been removed.
* B-06267: Blocking for brute force password guess attacks.
* B-06290: Expression optimization for pattern <aggregation function>(_.Attribute(<attribute name>)).
* B-06286: Backend support for date format, first weekday and 12-hour clock in server side.
* B-06262: Error codes added for different cancelling operation situations.
* B-06323: Added support for stored calculation sessions.
* B-06335: Frontend components have been updated.
* B-06327: Translation updates for PA release 2021.8.
* B-06221: .NET core migration: Thread.Abort calls are replaced with Thread.Interrupt.
* B-06349: ColumnTypes property for IDataFrame.
* B-06289: Enable ScriptLauncher to use Web API - improvements.
 
'''Fixed issues:'''
* D-11257: Sometimes date axis marks didn't match with data points.
* D-11136: In prediction preset, when all cases were filtered out, there was error "Index was outside the bounds of the array".
* D-11284: When viewing datatable contents, float type of columns are now shown in two decimals.
* D-11242: When dashboard was opened, it might have initially been in the scrolled down position.
* D-11116: Validation was missing when dashboard is imported from file.
* D-11252: Benchmark performance did not have input value limitation check for Repeat benchmarks.
* D-11219: Workspace tabs did not use Open Sans SemiBold correctly.
* D-11213: Dashboard Save button text was not well aligned vertically.
* D-11225: BPMN context menu stayed on screen when other functions were used.
* D-11199: CSV import validation process continued forever when the file had format error.
* D-11134: Two popup menus were displayed at the same time in the Workspace.
* D-11178: Underline of tabs was in the wrong order.
* D-11179: Checkbox at the table header was misaligned.
* D-11173: Some icons had visual defects.
* D-11160: Workspace item name create/rename validation failure was not clear.
* D-11211: Following error appeared: Could not convert object of type 'System.String' to type System.Collections.Generic.List.
* D-11262: Query designer didn't work in the dataframe mode if "dataframe" was not written in lowercase.
* D-11299: Importing timestamps from CSV that didn't exist in the local time, was incorrectly incremented by one hour.
* D-11263: Model was incorrectly loaded into memory event though query is run in dataframe mode.
* D-11227: "Self referencing loop detected ..." error for weighted root caused when there was expression filter with NumberPrecision.
* D-11170: Error: "Unable to set the value of an uninitialized variable var1 due to variable not being defined inside the current parallel context".
* D-11089: Querying same column multiple times omitted the duplicates from the response in SQLDataFrame.
* D-11247: Filtering numeric values gave incorrect results near zero.
* D-11198: Models where MOD_LAST_MODIFIED_DATE is null could not be deleted or modified.
* D-11230: Removed hardcoded allowed TLS versions from software.
* D-09453: Boolean values didn't work with EventAttributeValue filter.
* D-11256: Importing data to datatable having data and with previously created column created new columns as sql_variant.
* D-09452: Designed exceptions in running expressions shouldn't be logged as errors.
* D-11050: Time information was missing in error message.
* D-09497: Duplicate and empty column names gives now better error message in ODBC data source model.
* D-11113: Stopping never ending expression calculation did not stop processing.
* D-11226: Operation end time was not recorded when operation was canceled.
* D-11258: WriteLog function didn't write to script log if function call was in sub scope.
* D-11171: Log level for aborted operations should be info.
* D-11228: Entries were written to the script log twice.
 
== QPR ProcessAnalyzer 2021.7 (build 535) (released 2021-09-21) ==
'''Notes:'''


<div style="border:1px solid #dfdfdf;padding:0.5em 1em 0.5em 1em;background-color:#E7EAEC;margin:10px 0px 0px 10px;">
These new restrictions may affect usage that has previously been possible. For example, with the new settings, QPR ProcessAnalyzer can be embedded to a website only within the same origin. For detailed instructions on embedding QPR ProcessAnalyzer on a different website, please refer to [[Embed_to_Website|this quide]]. Additionally, for information on modifying the CSP settings, see documentation for [[QPR_ProcessAnalyzer_Security_Hardening#HTTP_Response_Headers|security hardening]].
QPR ProcessAnalyzer is now fully web browser based software, and so QPR ProcessAnalyzer Excel Client is not released anymore. If you have any issues in switching over to the web UI, please give us feedback through customercare@qpr.com and describe your process mining use case.
</div>
</div>


'''Features:'''
* B-05991: Models can be managed in the [[QPR_ProcessAnalyzer_Project_Workspace#Models|Workspace]] in a new tab.
* B-06212: [[Image|Images]] can be added to dashboards.
* B-05926: Presets performance can be [[Navigation_Menu#Benchmark_Performance|benchmarked]] with one click and results report can be export.
* B-06230: When duplicating elements in dashboards, now the width and height of duplicate stays same.
* B-05994: Duration datatype is now supported when importing data to datatables.
* B-05857: Implement expression language function to remove all preprocessings from model.
* B-06203: Translations for release 2021.7.
* B-06206: Web API: Existing datatable rows can be updated in CSV import (UI support implemented later).
* B-06207: Web API: Support for startFromPosition parameter to get last entries of the current script run log (UI support implemented later).
* B-06208: Exception codes implemented for usual exceptions returned by server (UI support implemented later).
* B-06265: Enable ScriptLauncher to use Web API (1).
* B-05856: Enable ScriptLauncher to use Web API (2).
* B-05848: Model loading has been refactored in backend.
'''Fixed issues:'''
* D-11188: CSV file import didn't work with negative numbers.
* D-11210: In boxplot presets, "no outliers" minimum/maximum might incorrectly have been lower/greater than the real minimum/maximum.
* D-11183: Chart datalabels showed wrong numbers for some presets.
* D-11175: Single select list was not updated when value was set from multi select list through variable.
* D-11099: Operation log for open operations does not now show the current operation.
* D-11206: Underscore before attribute function call caused some parse tree pattern matchers to not work.
* D-11155: Caching is now disabled when switching between tabs in Workspace.
* D-11161: Font was broken in the contextual popup menu.
* D-11165: Dropdown list values were not updated when changing preset.
* D-11177: Data grid excel filter item selection unselected checkbox layout was incorrect.
* D-11184: Unclear error information when tried to feed string value to Highcharts when value should be numerical.
* D-11189: Nothing happened when clicking Delete dimension when there were no dimensions.
* D-11166: All text type filter should have "Not Contains" option.
* D-11220: Shuffle function was incorrectly constant foldable.
* D-11185: Filtering didn't work for charts using variables in columns and row initialization expressions.
* D-11190: When deleting or modifying expressions, non-matching on-screen settings are now removed to avoid errors.
* D-11207: Javascript error "RangeError: Maximum call stack size exceeded" when clicked empty data grid rows area in Notifications and Business calendar.
* D-11208: When very small percentage of cases are shown, the header showed ".00" (now it shows ≈0%).
* D-11203: Removing parameters from url went to login page without clearing session and showed unnecessary error message.
* D-11138: Javascript error in console: "Cannot read property 'column' of undefined at Gs.cellSelecting".
* D-11200: Unselecting selected cell in table didn't hide the suggested filter.
* D-11215: There was a javascript error when selecting a range of two or more cells in the same line and then click any cell.
* D-11090: User terminated expression scripts didn't write to log.
* D-11172: Path until selected event analysis caused "Variable already exists in context" error.
* D-11162: DatetimeTruncation parameter didn't work with null values in filters.
* D-11060: Concurrency issue resolved with Clustering Cases analysis.
* D-09496: All needed parameters were not not passed to expression parsing.
* D-11204: Preset CasesByDurationBetweenEvents was failing in Snowflake.
* D-11218: Cancellation flag was not used correctly when checking if operation was cancelled.
== Additional release for QPR ProcessAnalyzer 2021.6 (build 474) (released 2021-08-25) ==
'''Notes:'''
<div style="border:1px solid #dfdfdf;padding:0.5em 1em 0.5em 1em;background-color:#E7EAEC;margin:10px 0px 0px 10px;">
<div style="border:1px solid #dfdfdf;padding:0.5em 1em 0.5em 1em;background-color:#E7EAEC;margin:10px 0px 0px 10px;">
There is a change in the expression language behavior, as now existing variables cannot be reinitialized using the '''let''' operator. Thus, an error is given, if there is already a variable with the same name in the same scope. The new behavior reflects better how programming languages usually work, and also it's able to spot likely bugs in expression scripts.
In the QPR ProcessAnalyzer 2025.6 Native App, the release version number is not displayed correctly in the User Settings dialog. This omission does not have any other complications. QPR ProcessAnalyzer 2025.6 is the only release with this issue, making it possible to identify this release despite the missing version number. This issue is specific to the Native App only. The next release will fix this issue (D-14703).
</div>
</div>


'''Features:'''
===New features===
* B-06245: Performance issue: Separate eventlogs were sometimes still created when drilling down in dashboards.
* [[User_Settings#Starting_dashboard|Starting dashboard]] after login can be defined for user groups, allowing to create customized starting pages for easy navigation. (B-08791)
* B-05937: Trying to initialize existing variable in the same scope gives now error.
* Snowflake [[QPR_ProcessAnalyzer_Chart#Filtering_Settings|chart's event filters]] are now embedded to filters created from chart, to precisely follow chart calculation. (B-08845)
* B-03091: Columns of the datatables stored to SQL Server use now specific data types instead of SQLVARIANT.
* Result data can be filtered in Snowflake charts using [[QPR_ProcessAnalyzer_Chart#:~:text=Result%20filtering%20expression|result filtering expression]] which works for any datasets. (B-08751)
* B-06205: Frontend 3rd party components have been updated.
* Filter rules order now stays the same when making filter selections and confirming filter. (B-08801)
* B-06021: Server logging has been improvement.
* Added model setting [[QPR_ProcessAnalyzer_Project_Workspace#Hiding_Object_Count_Statistics|Show object count statistics]] to hide object counts information in dropdown lists to optimize performance. (B-08849)
 
* Added support for [[Chart_On-screen_Settings#:~:text=showStatistics|hiding statistics for on-screen setting]] dropdown lists to improve performance, and in addition the case ID is hidden Case/Event attribute profiling presets. (B-08840)
'''Fixed issues:'''
* Added following audit fields to users and groups: Created date, Created by, Last modified date, and Last modified by. (B-08792)
* D-11094: In datatable import dialog, emptying datatable column name field didn't take effect.
* Snowflake Native App: Added procedure to that [[QPR_ProcessAnalyzer_Native_App_in_Snowflake#Recover_administrator_access|creates administrator user to Native App]] if access to the app has been lost. Also, prevented user management operations that remove own access. (B-08733)
* D-11159: In chart, opening datatables list in "Datatable contents" gave error.
* Snowflake Native App: Added procedure to [[Change_Native_App_Compute_Pool_Size|change Native App compute pool size]]. Changed new Native Apps to use CPU_X64_S size compute pool, and improved Native App stability. (B-08859)
* D-11056: Table sorting using context menu didn't work.
* D-11157: "Not contains" filter didn't work and rule didn't show any text in header.
* D-11158: There was an incorrect html encoding in multiselect list label.
* D-09506: In pivot table, export created incorrect Excel file from zero values.
* D-11078: In pivot table, selection caused javascript error when mouse was released over cell value.
* D-11147: For json type of error responses Content-Type should be "application/json; charset=utf-8".
 
== Additional release for QPR ProcessAnalyzer 2021.6 (build 460) (released 2021-08-19) ==
'''Features:'''
* B-06211: Performance improvement: Reuse event objects in all eventlogs of the model (event level calculation performance is doubled).
 
'''Fixed issues:'''
* D-11146: Filter calculation on dashboards using large model with several charts slowed down due to unnecessary duplicate eventlog generation.
* D-11145: "Not contains" option was missing from Excel filter sub menu, and filter type was not filled automatically in Custom filter dialog.
* D-11121: There was an unclear error message "Conformance statistics cannot be calculated" in Conformance statistics component.
* D-11152: There was an unnecessary separator in projects menu in models list.
* D-11150: There was a date conversion issue in CSV import related to number parts with leading zeros.
* D-11119: DataGrid Excel export didn't work with the "substitute character".
* D-11129: Case nonconformancies root tried to declare variables twice.
* D-11151: Some number conversions were incorrect in CSV import.
* D-11153: Decimal separator could not be specified for duration type of columns in the CSV import.
* D-11154: Client side validation didn't work for duplicate user and group names.
 
== QPR ProcessAnalyzer 2021.6 (build 444) (released 2021-08-10) ==
 
'''Features:'''
* B-05859: CSV file import is renewed and available in the Workspace (old import is still available).
* B-05988: Charts can be duplicated when editing dashboards.
* B-05969: Not contains -type of column filter is available in tables.
* B-03225: If user is authenticated with SAML, password changing is not available.
* B-03232: In dashboard export files, chart settings are stored as presentation object property instead of context variable.
* B-05982: Workspace context menu improvements.
* B-05950: Allow empty value in first column in CSV file import.
* B-05860: Frontend component update (part 2).
 
'''Fixed issues:'''
* D-11107: In Workspace, when new project, datatable or script is clicked, the name text was highlighted by default.
* D-11106: Query cancellation suppression didn't work when cancellation was in the inner exception.
* D-11118: Issues with Dropdown list selector: (1) dates as variable values are handled incorrectly, (2) list refreshes unnecessary when activated.
* D-11117: Case attribute and event type filters lists incorrectly made queries already when dashboard is opened.
* D-11053: All texts didn't fit to screen in Syncfusion grid Excel filter when using e.g. Russian.
* D-11075: Datatable didn't open after creation from UI.
* D-11105: Wrong color in Clear Filter icon in data grid Excel filter.
* D-11092: Code editor should not show errors for correct code.
* D-11104: When context menu is opened for project that is not previously selected, hierarchy was scrolled.
* D-11095: For json type of error responses Content-Type is now application/json.
* D-11071: Web API could still return datatables with null configuration.
* D-11098: Small layout issue fixes.
* D-11133: Submenu of "Move to" is opened at the top-left corner.
 
== QPR ProcessAnalyzer 2021.5 (build 389) (released 2021-06-23) ==
 
'''Features:'''
* B-05846: Datatable contents can be previewed, and also new system reports dialog.
* B-03233: Improved UI for chart background color, border color, border width and border corner radius.
* B-05852: New presets for intelligent process automation and boxplot visualizations.
* B-05828: Actions for tables to change dashboard variables.
* B-05853: Scripting supports also scripts written in the expression language.
* B-05093: Workspace visual layout has been improved and context menu is available also for projects, dashboards and datatables.
* B-05922: Component filter for case attribute and event type selectors.
* B-05847: Presets performance improvements: Digital fit rate by attribute, Path until selected event, Path starting from selected event.
* B-05836: Changed "Automation opportunity scout" to use even types as basis and implement optimizations.
* B-05825: Better performing method to get event type names in model.
* B-05821: Improved backend performance by removing unnecessary ToArray calls.
* B-05817: Backend support for running expression scrips in web UI.
* B-05855: Running expression scripts in ScriptLauncher.
* B-05946: Data type conversions for CSV import.
* B-05944: CSV file writing for expression script through ScriptLauncher and client side execution using expression scripts.
* B-05827: Distributed computing, part 8: SqlDataFrame support for locally stored datatables.
* B-05850: Distributed computing, part 9: External table naming, data table import refactorizations, generic context.
* B-05849: Distributed computing, part 10: Improvements and preparations for performance tests.
* B-05840: Frontend components have been updated.
* B-05935: Translations for 2021.5 release.
 
'''Fixed issues:'''
* D-11084: Syncfusion pivot table headers were not visible.
* D-11085: Tooltip in chart settings were stuck open in some occasions.
* D-09524: Polar chart showed wrong tooltips value and graph was shown incorrectly if polar chart disabled and enabled again.
* D-11007: Workspace grid showed shortly incorrect content.
* D-11030: Javascript error: "TypeError: Cannot read property 'length' of null" when returning to workspace.
* D-11042: Release package was much larger for 2021.4 than for earlier releases due to unnecessary Monaco editor files.
* D-11051: Negative timespans returned by server don't work in UI.
* D-11052: Number of cases not updated when removing ModelId from dashboard properties.
* D-11054: Background color conditional formatting didn't work for non-numerical columns.
* D-11055: Extra space appeared in header when changing model and opening filters list.
* D-11058: Expression filters didn't work due to single quotes don't work anymore.
* D-11059: On-the-fly migration for existing stored expression filter rules using single quotes.
* D-11068: When zooming and moving flowchart, following console error appeared: TypeError: Cannot read property 'behavior' of undefined.
* D-11073: Chart image export should have same scale as in the dashboard.
* D-11072: Index out of bounds error in Flow Duration analysis view.
* D-11074: Dragging root causes rule from header to chart sets invalid Comparison variable breaking dashboard.
* D-11045: Web UI incorrectly fetched resources from fonts.googleapis.com.
* D-10988: Pivot table javascript error: Uncaught TypeError: Cannot read property 'refreshFrozenScrollbar' of null.
* D-09594: Pivot table: Adjust browser size for event count analysis: Type Error: Cannot read property 'getPanel' of null occurred.
* D-11043: Deleted scripts caused error if they are in the script editor tab.
* D-11063: Datatable.Columns gave error for new datatable.
* D-11064: XES import does not always import event attributes.
* D-11067: Copying datatable that has configuration=null leads to inconsistent copied datatable.
* D-11076: Moving script to project didn't work.
* D-11044: Negative timespans were serialized incorrectly as positive.
* D-11027: SQL query failed because connection was closed by deadlock.
* D-11057: Optimization Where(Attribute(<constant 1>) == <constant 2>) works incorrectly.
* D-11040: All expression lexing errors were not handled.
* D-11019: Improve following unclear error message: "Selection failed: Unknown case attribute for object of type AttributeType: name".
* D-11082: Filtering didn't work when clicking cell text for cells using conditional formatting.
* D-11080: Clustering Analysis view had TypeError: Cannot read property 'field' of undefined.
* D-11087: Improved unclear error message:  Nullable object must have a value.
 
== QPR ProcessAnalyzer 2021.4 (build 328) (released 2021-05-18) ==
 
'''Notes:'''
 
<div style="border:1px solid #dfdfdf;padding:0.5em 1em 0.5em 1em;background-color:#E7EAEC;margin:10px 0px 0px 10px;">
There is a breaking change in 2021.4 related to using tags in custom expressions: If a tag provides a string value, before it was written e.g. ''Attribute("<#AutomationAttribute>")'', but now it needs to be written ''Attribute(<#AutomationAttribute>)'', because the quotation marks of the string literal now come with the value replacement. The former will cause error in 2021.4, as there will be two sets of quotation marks. This problem does not concern other type of values (e.g. numeric), as they don't have quotation marks.
</div>


<div style="border:1px solid #dfdfdf;padding:0.5em 1em 0.5em 1em;background-color:#E7EAEC;margin:10px 0px 0px 10px;">
===Fixed issues===
Scripts that are stored to the ''model'' or ''user'' context are not available in the scripting web UI (scripts in ''project'' and ''system'' context are available). If you have scripts in the model or user context, they need to be recreated in the project or system context using the Excel Client latest in 2021.4. Starting from 2021.5, scripts in the model or user context are preserved in the system, but cannot be used anymore (and they will be removed in a future release).
* Snowflake Cortex based AI Assistant didn't show the results table. (D-14643)
</div>
* When percent stacking is used, Y-axis values are now shown as percentages in data label and tooltip. (D-14633)
* Fixed issue where Label&Link component had sometimes unnecessary vertical scrollbar. (D-14685)
* Model validation showed incorrect error message for models with numeric duplicate case ID's. (D-14687)
* In Workspace, scripts "View current run log" dialog didn't update log correctly when new entries were added. (D-14662)
* Event type mapping in charts didn't work in object-centric models. (D-14620)
* Model generation didn't work as transformation step using _system.ML.ApplyTransformation function. (D-14654)
* Others aggregation has been removed from date type of dimensions because tables don't work with textual data in date columns. (D-14623)
* Fixed issue in AI Assistant where using both Snowflake Cortex and OpenAI modes caused error. (D-14646)
* In User Management Effective permissions table, column filter incorrectly showed "true" and "false" as options. (D-14639)
* Pivot table incorrectly showed "Numeric value is not recognized" error when Count or Unique count aggregations were used. (D-14559)
* Workspace buttons are now visible in small screens spanning to multiple lines. (D-14587)
* Added tooltip text to "Move to" submenu containing projects so that long project names can be seen. (D-14612)
* Translation was missing from error messages when deleting items from recycle bin. (D-14652)
* Fixed data type related issues with in-memory Floor, Ceiling and aggregation functions. (D-14622)
* Optimized resource loading by getting rid of unnecessary file assets/i18n/en_US.json. (D-14641)
* Fixed issue where opening script editor gave javascript error about content-security-policy violation. (D-14627)
* Fixed issue in charts showing datatable content had a strange error when datatable was not selected. (D-14650)
* Fixed incorrect data types in some project, user and group related measures. (D-14619)
* Fixed issue where moving expression scripts was not possible when SQL Scripting was not allowed. (D-14624)
* Deleting and renaming scripts were not available for expression scripts when SQL Scripting was not allowed. (D-14625)
* Improved documentation for situation when non-existing Snowflake warehouse is configured for a model. (D-14543)
* Project properties dialog shows a descriptive text when no secrets have been defined instead of an empty table. (D-14611)
* Improved messages and New project button visibility in Workspace top level when no projects are shown. (D-14609)
* Event preset gave error if enabling Apply with Chart Filters setting and trying to create filters. (D-14695)


<div style="border:1px solid #dfdfdf;padding:0.5em 1em 0.5em 1em;background-color:#E7EAEC;margin:10px 0px 0px 10px;">
===Other improvements===
Tables used in dashboards are updated to the next generation of Syncfusion JS2 components. The [[QPR_ProcessAnalyzer_Chart#Visualization_Settings|Custom layout]] settings (defined as JSON) of the table might not be compatible between the generations, and thus they need to be changed manually after updating to 2021.4. See instructions how to migrate settings between the generations of the component: https://ej2.syncfusion.com/documentation/grid/ej1-api-migration/.
* Added QPR ProcessAnalyzer API request ID to Snowflake queries to easily find matching query in Snowflake query history. (B-08839)
</div>
* [[QPR_ProcessAnalyzer_Security_Hardening#Added_HTTP_Headers|Content Security Policy HTTP header]] includes now object-src, frame-ancestors, form-action, base-uri, and worker-src. (B-08794)
* Snowflake queries have been optimized by removing null and empty string checks from mapped columns as they are now handled by the model validation check. (B-08837)
* Added backend support for object-centric model filtering based on case-centric filter rules. (B-08836)
* Frontend components have been updated. (B-08851)
* Backend components have been updated. (B-08852)


<div style="border:1px solid #dfdfdf;padding:0.5em 1em 0.5em 1em;background-color:#E7EAEC;margin:10px 0px 0px 10px;">
== QPR ProcessAnalyzer 2025.5 (build 10361) (released 2025-08-21) ==
Starting from QPR ProcessAnalyzer 2021.4, the [[Data_Grid_Export_Service|Data Grid Export Service]] (used for exporting tables as Excel files) is not needed anymore. The renewed table is able to create export files in the browser side without using any server/cloud side service. If the Data Grid Export Service has previously been installed, it's recommended to uninstall it for security reasons (to reduce attack surface).
New features presentation: [https://files.qpr.com/releases/QPR_ProcessAnalyzer_2025_5.pdf QPR_ProcessAnalyzer_2025_5.pdf]
</div>


<div style="border:1px solid #dfdfdf;padding:0.5em 1em 0.5em 1em;background-color:#E7EAEC;margin:10px 0px 0px 10px;">
<div style="border:1px solid #dfdfdf;padding:0.5em 1em 0.5em 1em;background-color:#E7EAEC;margin:10px 0px 0px 10px;">
There is a new step in the QPR ProcessAnalyzer server installation instructions for allowing large process mining models: [[Installing_QPR_ProcessAnalyzer_Server#.Net_Configuration:_gcAllowVeryLargeObjects|.Net configuration: gcAllowVeryLargeObjects]]. The change should also be done for earlier QPR ProcessAnalyzer server versions if using models that have more than 50 million events.
When using Snowflake Cortex, the AI Assistant is not showing the results table in the assistant's response. This issue has been fixed by the next release.
</div>
</div>


'''Features:'''
===New features===
* B-03297: Scripting is available in the web UI.
* [[Object-Centric_Flowchart|Object-centric flowchart]] can also use object-to-object relations to link events and objects simplifying event-to-object configuration. (B-08671)
* B-03231: Recycle bin for models and projects is available in the web UI.
* [[AI_Assistant_for_QPR_ProcessAnalyzer|AI Assistant]] can provide precise quantitative analysis by making queries to eventlog data (powered by Snowflake Cortex Analyst and Agents). (B-08652)
* B-05764: Table component in dashboards has been upgraded to newer generation of Syncfusion JS2.
* [[Filtering_in_QPR_ProcessAnalyzer|Flows and variations can be filtered]] from any event attribute viewpoint in Snowflake. (B-08737)
* B-05814: There are now default parameter values for most preset.
* Added [[Project_Properties_Dialog|project properties dialog]] for viewing project information, changing Snowflake connection settings and project secrets. (B-08655)
* B-05812: Optimize "Automation opportunity scout" preset and remove root items duplicate removal from dimensioning
* [[QPR_ProcessAnalyzer_Project_Workspace#Validating_Model|Model validity check]] easily detects technically invalid models and shows detailed reason for invalidity. (B-08624)
* B-05769&B-03081: "Cost Savings by Automation" preset performance has been improved.
* Projects can be [[QPR_ProcessAnalyzer_Project_Workspace#Exporting_Project|exported]] to json files and imported as new projects. (B-08717)
* B-05745: Functions CaseByName and Reverse, and improved support for TimespanPrecision/DatetimeTruncation.
* Action buttons can be added to dashboard by defining [[Label_and_Link|label component]] that can change dashboard variables and run scripts. (B-08694)
* B-05750: Expression language functions for managing datatables.
* Web user interface is available in [[Languages_and_Localization|Ukrainian language]]. (B-08734)
* B-05800: Improvements to SQL script log writing.
* B-05083: Expression language scripting.
* B-05789: Expression language scripting: Run expression language scripts using Run function.
* B-05799: Expression language scripting: Run SQL scripts using Run function.
* B-05752: Delete multiple items at the same time: Recyclebin.DeletePermanently().
* B-05082: Distributed computing, part 5: Improving KPI analysis expressions and data import.
* B-05762: Distributed computing, part 6: Improvements related to imports to external distributed computing systems
* B-05790: Distributed computing, part 7: Filtering etc.
* B-05775: Translations for PA 2021.4 release.
 
'''Fixed issues:'''
* D-11008: "The given key was not present in the dictionary" still appears in dashboards.
* D-11034: Business calendar calculates incorrectly.
* D-10987: Filtering doesn't work from dimensions that need to use root expression.
* D-10959: Unsaved change confirmation Russian translation  has "% 0" in message.
* D-10993: Column chart not working in Measure settings.
* D-10978: PA WebUI:  incorrect Case Level Permission expressions prevent using Model manager.
* D-10984: Model cannot be used when in model json settings Permission.Case="".
* D-11010: Chart comparison cannot be created from header root cause analysis.
* D-09533: Table column width changes back to default.
* D-09509: Datatable multi-selection:  Uncaught TypeError: this.selectedRowCellIndexes[_].cellIndex.push is not a function.
* D-09521: Columns in wrong order for some of the periods in Event Count Trend by Types preset.
* D-09507: Tooltips for chart table columns shown far away from the column.
* D-11004: Error: Uncaught (in promise): Error: Dataset doesn't contain column "measure0".
* D-10970: Parameter define controls should display for full size Duration analysis view.
* D-11013: TypeError: Cannot read property 'querySelectorAll' of null.
* D-11018: Case duration exclude cases filter has wrong text in header.
* D-11021: BPMN editor console warnings: "Passing callbacks to is deprecated and will be removed in a future major release".
* D-11001: Filter option and checkbox display in two rows.
* D-09593: TypeError: Cannot read property '0' of undefined.
* D-10999: Error: <rect> attribute width or X: Expected length, "NaN".
* D-11012: Tooltip still shown after moving criteria for finding root causes  from header.
* D-10972: Include and exclude dropdown list cannot display properly when analysis view display in fullscreen.
* D-11020: Boxplot filtering by clicking does not work.
* D-10992: PDF generated in Chart settings shows some info twice.
* D-09513: When changing model and chart settings contain case/event attribute that doesn't exist in the model, error is given.
* D-11023: All mappings in Measures tab not shown when changing to Box Plot Chart.
* D-11024: Error messages not in logical order for missing values when drawing charts.
* D-10994: Empty popup for dashboard link going to a non-existing dashboard.
* D-10961: TypeError: Cannot read property 'refreshUI' of null.
* D-11026: Unsupported BPMN node types should not be selectable.
* D-11035: Table column resize causes never ending loading animation.
* D-11036: Chart settings doesn't open, if configuration has non-existing preset definition.
* D-11000: Model is incorrectly dropped first time some Permissions Expression data is added.
* D-10990: System.ArgumentException thrown on model loading from HashSet.SetCapacity.
* D-10977: Dimension rounding works incorrectly in expression filters.
* D-11003: Model JSON configuration related error to cases datasource.
* D-11005: Error shown in some situations after empty string Permissions expression has been removed.
 
== QPR ProcessAnalyzer 2021.3 (build 263) (released 2021-03-30) ==
 
'''Features:'''
* B-03242: Sampling for the analyzed objects of the chart.
* B-03239: Chart settings visual improvement and reorganization (migration to Syncfusion JS2).
* B-03307: Miscellaneous improvements to Workspace.
* B-03075: Models are kept in memory when settings are changed (excluding datasources and calculated attributes).
* B-03079: Improvements to model JSON configuration for Case/EventAttributes.
* B-03308: In Query Designer, ContextType should be "Model", when ProcessingMethod is "DataFrame".
* B-05075: Script entities are accessible in the expression language.
* B-03302: Scripting backend changes: Single state for scripts.
* B-05079: API for creating and editing scripts.
* B-05074: Frontend components update.
* B-05077: Support for scripts in POST /api/uielements/setproject/{projectid} and DELETE /qprpa/api/uielements.
* B-03296: API for recycle bin.
* B-03315: Distributed computing: Streamlining dataframe based KPI analysis configurations.


'''Fixed issues:'''
===Fixed issues===
* D-10965: "The given key was not present in the dictionary" error when calculating expression referring to attribute values.
* Fixed following error when performing client-side SAP import: Could not find a part of the path (QPR_ImportSource_Chunk_*.tmp). (D-14589)
* D-10985: SAML service provider self-signed certificate is renewed.
* Fixed issue where ManageProjects permission was incorrectly required when running scripts using QPR ScriptLauncher non-legacy mode. (D-14562)
* D-10976: Donut showed slices in incorrect order.
* Fixed following error when using SAP import from SQL script called from expression language called from SQL: The given key '' was not present in the dictionary. (D-14593)
* D-09534: Filters were not working correctly in some cases.
* Some analyses didn't work, when case ID columns for cases and events datatables differed only in upper/lowercase letters. (D-14556)
* D-10974: Median aggregation didn't work in table conditional formatting.
* Business calendar didn't work for some measures/dimensions/columns and some had business calendar checkboxes missing. (D-14563)
* D-10962: Tables conditional formatting referring to other columns, didn't work.
* Prediction failed to following error: transformer_model_next_activity/event_year_input_embedding. (D-14551)
* D-10963: Chart table web links should not encode tag if it contains entire url.
* Scripting now works correctly after rows from PA_OPERATION_STATUS table have been deleted. (D-14545)
* D-09581: Fix for error: Cannot read property 'length' of undefined.
* Fixed issue where case-centric flowchart was very slow for object-centric model. (D-14544)
* D-09589: The error message is now more specific in the "no access" case.
* Prevented creating dashboards, models and scripts with duplicate names in the same project. (D-09480)
* D-09592: Fix for error: TypeError: Cannot read property 'querySelector' of null.
* KPI Card now shows line breaks correctly in textual values. (D-14546)
* D-09518: Stacking for Column Pyramid Chart alignment issue.
* Improved table Excel export for list data to show items with separator character instead of showing as JSON. (D-14479)
* D-09597: Case attribute and event type filter components are not showing counts and visualize items without cases.
* Column showing non-conformance reason was incorrectly aligned to right. (D-14570)
* D-09591: Server required To field information to send a notification.
* GetRelatedValueFrom function caused column name conflict when used multiple times in same query. (D-14591)
* D-09494: Username and setting was missing in ScriptLauncher logs.
* Fixed issue where in-memory sorting for arrays gave "Error in sorting analysis result rows possibly due to multiple types of values ...". (D-14592)
* D-09535: TakeSample function should not decrease performance when sampling is not needed.
* Array type of values were shown incorrectly when used Last Row Aggregates Over-limit Rows setting. (D-14616)
* D-09580: TakeSample function should support DataFrames.
* Fixed the "Most common" text aggregation sorting error for in-memory calculation. (D-14573)
* D-09610: Expression based greater/lower than filters don't show texts in header.
* Snowflake model validation gave incorrect error message when mapped column didn't exist in datatable. (D-14565)
* D-09601: Filter rule editor bugs: wrong counts and existing filters not taken into account.
* Improved model validation to detect when connection string key for model or datatable does not exist. (D-14607)
* D-09606: Flowchart doesn't show loading spinner.
* Model validation gave incorrect error when when events datatable case id mapping was missing. (D-14566)
* D-09609: JavaScript error when opening flowchart for the first time.
* Model validation gave incorrect error message when cases and events datatables were in different datasources. (D-14567)
* D-10960: Client side query cache should be cleared when model is dropped, reloaded or model settings changed.
* Model validation gave incorrect error message when underlying Snowflake table didn't exist. (D-14568)
* D-10967: Missing translation for "Select All" filter option.
* Workspace Card/Table mode toggle buttons were not translated. (D-14547)
* D-10969: Fix for error: SyntaxError: Unexpected token u in JSON at position 0.
* Some invalid queries gave unexpected errors and strange outputs. (D-14569)
* D-10979: Browser log should not contain informational messages.
* Added translations to model notifications preview table headers. (D-14590)
* D-10982: Model properties has problem to get new added datatables for CASE and EVENT Datasources.
* Added translations to access denied message for header object counts indicator. (D-13967)
* D-09522: Uncaught TypeError: Cannot read property 'call' of undefined.
* AI Assistant explaining charts speaks now user interface language. (D-14578)
* D-09911: Turn off filter rule will cause i[e][a] is not iterable at Function.compactFilterRules error.
* AI Agent prompt chart editor didn't show correctly if model was not selected. (D-14536)
* D-09510: Clicking workspace button or switching between editor modes don't close chart settings.
* AI Assistant gave "Unsupported cache table type" error when trying to explain object-centric flowchart. (D-14477)
* D-09519: Chart configuration validation doesn't show error message.
* D-09603: ERROR TypeError: Cannot read property 'getConfiguration' of null.
* D-09525: Search line is not under the search string for filters in Query Designer.
* D-09441: "In" function doesn't work with different integer types.
* D-09612: "In" function doesn't work when written in lower case.
* D-09586: CSV file import failed.
* D-09595: Query cancellation doesn't work in /api/expression/query.
* D-09440: User management web API doesn't write to operation log.


== QPR ProcessAnalyzer 2021.2 (build 215) (released 2021-03-03) ==
===Other improvements===
* When trying to open dashboard with an invalid model, the precise model validation error message is shown. (B-08629)
* Account locked message is now same as username/password incorrect to prevent account enumeration attack. (B-08740)
* Stringified value format supports also json objects. (B-08766)
* Event attribute used as event type can be defined for flow and variation filters in Snowflake models (backend support). (B-08705)
* Translations have been updated. (B-08757)
* Frontend components have been updated. (B-08760)
* Backend components have been updated. (B-08759)


'''Features:'''
== QPR ProcessAnalyzer 2025.4 (build 9985) (released 2025-05-28) ==
* B-03237: Dialog for defining email notifications.
* 308126: Dialog for defining business calendars and using business calendars in charts.
* 308087: Datatables can be renamed and duplicated.
* 308090: Model settings dialog renewed, new dialog for calculated attributes, dialog for editing filter rules renewed, model duplicating.
* B-03292: Support for Polish language.
* B-03265: Automatic license reactivation.
* B-03314: Triggering email notifications using expression language.
* 308094: BPMN models are validated in the BPMN editor.
* B-03293: TakeSample function to expression language.
* B-03298: API call for expression query.
* B-03300: Components update.
* B-03299: Translations updates.
* B-03301: Distributed computing, part 1: Merge code from distributed computing branch.
* B-03317: Distributed computing, part 2: Access external DDBMS via data tables
* B-03311: Distributed computing, part 3: Restoring support for Spark and Snowflake.


'''Fixed issues:'''
New features presentation: [https://files.qpr.com/releases/QPR_ProcessAnalyzer_2025_4.pdf QPR_ProcessAnalyzer_2025_4.pdf]
* 219613: Analyzed objects "Events of specific type" didn't work in chart when there is one event selected.
* 219611: Filtering attributes with empty string values did not work.
* 219616: Unnecessary small vertical scrollbar in models list in Chrome and Edge.
* 219624: Dashboard link set variables incorrectly to dashboard context.
* 219436: Improved error message, when user has no access to any models.
* 219505: Bottom margin was missing for dashboard if aspect ratio flex is 1.
* 219434: Error appeared when creating conformance filter for invalid BPMN model.
* 219427: Error "Conformance model created without any start events!" appeared and BPMN view was not usable.
* D-09584: Filter parameter was not passed correctly in the url when opening UI.
* D-09515: When creating/editing filter rule, selections shown should be filtered with other filter rules.
* D-09495: /api/signout to return 204 also when activation or session is expired.
* D-09568: Multi-select data from different datatable columns causes error.
* D-09569: Model loading failed after previously trying to load model with invalid calculated case attribute.
* D-09570: Performance optimization: BusinessCalendar function changed to constant foldable.
* D-09572: Clustering Cases analysis failed when data contains null values.
* D-09573: Predicted Long Cases fails on performance test machine.
* D-09574: Datatable copy fails to timeout with large data and blocks fetching datatables metadata.
* D-09577: Server crashed e.g. when editing calculated attributes (error in object finalizer).
* D-09578: Excel client: Operation log showed details of only one operation.
* D-09579: "From" in an expression was treated a keyword even if it should not be.
* D-09587: Improve logging in model loading.
* D-09516: JavaScript error when sorting by identifier in workspace: "Cannot read property 'closeDialog' of undefined".
* D-09576: api/expression/query changed to use ProcessCoreInterfaceCall.


== QPR ProcessAnalyzer 2021.1 (build 163) (released 2021-01-18) ==
===New features===
* Added new AI Agent presets analyzing current state and proposing improvements based on different viewpoints, such as Event and Case Counts, Automation, Bottlenecks, and Root Causes. (B-08710)
* Added a [[Filter_Selectors#Filter_selector|generic filtering component]] that can be configured for creating any type of filters for distinct values. (B-08654)
* Volume declining in measures due to case sampling can be compensated in chart and flowchart by using a [[Measure,_Dimension_and_Column_Settings#Statistical_calculations|Statistical calculation method]]. (B-08598)
* In object-centric models, Object ID, Event ID, Event timestamp, and Event type [[Object-centric_Process_Mining_Model#Object-centric_perspectives|attribute names]] are shown correctly. (B-08680)
* Snowflake native app has now [[QPR_ProcessAnalyzer_Native_App_in_Snowflake#User_access_to_application|application roles]] for user (for using app) and administrator (for managing app). (B-08660)
* For Snowflake native app, IMPORTED PRIVILEGES ON SNOWFLAKE DB privilege is removed and instead the [[QPR_ProcessAnalyzer_Native_App_in_Snowflake#Optional_privilege_for_AI_Agent|CORTEX_USER database role]] can be assigned. (B-08718)
* [[QPR_ProcessAnalyzer_Native_App_in_Snowflake#Logging|Native app logging]] has been improved and now sharing application logs with QPR is possible. (B-08661)
* Added [[DataFrame_in_Expression_Language#CsvToDataFrame|CsvToDataFrame]] function to expression language to convert textual CSV data into in-memory dataframe. (B-08246)


'''Features:'''
===Fixed issues===
* 308096: New function "EventLog" to expression language to explicitly define preprocessings.
* Fixed "Invalid identifier" error when opening attribute selection list for case attribute preset caused by object id columns which differed only by letter capitalization. (D-14539)
 
* When Image component is clicked in dashboard edit mode, the component is now selected instead of link followed. (D-14525)
'''Fixed issues:'''
* Filters created from dimensions having dimension-specific filter rules will now create expression filter rule where dimensions-specific filter is embedded, for accurately following the selection. (D-14499)
* 219612: Opening models dropdown list jammed UI when there are lot of models.
* Filtering variations or list of event attribute values didn't work in in-memory models. (D-14476)
* 219495: Improve error message when trying to change login name to already existing.
* Fixed issue where AI Agent didn't update when dashboard variable changed used by prompt chart. (D-14537)
 
* Fixed issue where some statistical calculations inadvertently changed row order when applying in groups. (D-14495)
== QPR ProcessAnalyzer 2021.1 (build 156) (released 2021-01-12) ==
* In in-memory models, array type of data was not dimensioned correctly. (D-14518)
 
* AI Agent Process Variations preset gave "division by zero" error when there were zero cases. (D-14508)
'''Notes:'''
* Table grouping header labels were not formatted correctly. (D-14514)
<div style="border:1px solid #dfdfdf;padding:0.5em 1em 0.5em 1em;background-color:#E7EAEC;margin:10px 0px 0px 10px;">
* Fixed Root causes analysis to work with object-centric models. (D-14515)
There is a potential performance issue with the list of models in the header, which may appear when there are dozens of models in the list. When there are lot of models, the models list jams the UI when opened. The next release (build 163) has solved the issue.
* Filtering by OcelObjectId didn't work when model didn't have object type table for perspective used in filter. (D-14522)
</div>
* Fixed Root causes analysis with weighting expression to work with object-centric models. (D-14517)
* Fixed issue where persisting query results where query is started from datatable having custom table name overwrote data in original table. (D-14528)
* Flowchart SVG export did not show start and end symbols. (D-12401)
* Fixed issue where join operation didn't find renamed columns in SqlDataFrames. (D-14512)
* Improved chart filtering button positions to work with small chart sizes. (D-14509)
* Datatable foreign key columns dictionary data type was incorrect preventing reading columns information. (D-14505)
* Workspace scripts editor allowed to change script code for viewer users (altough not save it). (D-14534)
* In chart custom sorting, trying to refer to measure that had None aggregation, caused SQL compilation error. (D-14526)
* Model validation check crashed when the datatables were in different datasources. (D-14502)


<div style="border:1px solid #dfdfdf;padding:0.5em 1em 0.5em 1em;background-color:#E7EAEC;margin:10px 0px 0px 10px;">
===Other improvements===
QPR ProcessAnalyzer 2021.1 does not have the '''Data Grid''' and '''HTML''' presentation objects, and they have been replaced by easier-to-use and more powerful [[QPR_ProcessAnalyzer_Chart|Chart]] presentation object, which supports many layouts such as [[QPR_ProcessAnalyzer_Table|tables]]. After updating to QPR ProcessAnalyzer 2021.1, existing dashboards containing Data Grid and HTML presentation objects will contain a placeholder with a message that the presentation object doesn't exist. That placeholder can be removed and replaced with the Chart presentation object. If you need to preserve settings for the removed presentation objects, that needs to be done before updating to QPR ProcessAnalyzer 2021.1.
* Added expression language functions for using Snowflake Cortex Agents with Cortex Analyst access to query eventlogs. (B-08647)
</div>
* Projects can be export and imported in JSON format containing dashboards, models, datatables and scripts. (B-08613)
* Simplified object-centric model queries by accepting OcelObjectId as object attribute name in filters. (B-08702)
* Streamlined import API by removing importMode parameter and changing default fileType to CSV. (B-08704)
* Frontend components have been updated. (B-08695)
* Backend components has been updated. (B-08696)


<div style="border:1px solid #dfdfdf;padding:0.5em 1em 0.5em 1em;background-color:#E7EAEC;margin:10px 0px 0px 10px;">
== Additional release for QPR ProcessAnalyzer 2025.3 (build 9805) (released 2025-04-30)==
Data types of the datatables and temporary tables created by the [[SQL Scripting Commands#--.23ImportSapQuery|--#ImportSapQuery]] command has been changed: previously data types were NVARCHAR(255) for all columns. Now the maximum length in the NVARCHAR data type depends on the SAP data field length. This optimizes the space needed for data storage. In addition, there is a new parameter '''ConvertDataTypes''' allowing to specify which data types are converted correctly instead of using textual format.
</div>


'''Features:'''
===New features===
* 308075: Chart data point colors can be defined using [[QPR_ProcessAnalyzer_Graphs#Conditional_Formatting|conditional formatting]].
* Navigation menu is now displaying dashboards from open dashboard's project or from selected Workspace project (earlier dashboards were shown from the selected model's project). (B-08673)
* 307816: Datatables to workspace (part 1).
* 308076: QPRLibraries migration to Syncfusion JS2 (part 4).
* 308086: Syncfusion JS2 update.
* 307975: Data grid presentation objects and datasets have been removed.
* 307974: Remove HTML presentation objects have been removed.
* 308073: Create presentation object types for all HTML presentation objects used in system views - part 2.
* 308077: Translation updates for PA release 2021.1.
* 307652: Remove QPR Connector.
* 307709: Remove most of Excel client functionality and support of Xpress.
* 308039: Web API for terminating operations.
* 308046: Web API for copying datatable.
* 308051: [[Importing_Data_from_SAP|Data type conversions]] have been improved for SAP import.
* 308105: Copyright information update to 2021.
* 308063: SmtpFromAddress setting for sending email.
* 307368 & 308084: Business calendar for duration calculation.
* 307565: Expression filter rule improvements for comparing numerical values.
* 307990: Email notifications part 1.
* 308071: Conformance analysis performance improvements.
* 308080: IIS configurations for .po and .woff2 files.


'''Fixed issues:'''
===Fixed issues===
* 219589: Enhanced BPMN system view has unnecessary horizontal scrollbar.
* Fixed issue where AI Agent made unnecessary queries when filtering dashboard, and also opening dashboard with lot of chart may have been slow. (D-14503)
* 219590: UI got frozen when opening workspace from home view if no other system view opened just before.
* When datatable columns were modified, queries to the data may have given "Invalid identifier" error. (D-14507)
* 219595: Long words were not wrapped in message dialog.
* Clustering analysis didn't work with object-centric models. (D-14486)
* 219519: Error message did not show clear enough information.
* When a new groups is added, it's selected by default in the Manage Users dialog. Also clicking a selected group does not deselect it. (D-14491)
* 219557: Root causes analysis is changed to take into account summary row column count.
* Deleting last group didn't remove the group from the list. (D-14504)
* 219592: Excel client installer did not contain all connector files.
* 219600: Confirmation message is improved when deleting project.
* 219607: Dashboards don't work with bpmn models having linebreaks.
* 219604: Special characters do not work correctly in chart settings.
* 219606: Using dashboard links sometimes causes an error message to popup.
* 219608: Conformance statistics po tooltip in tool palette is incorrect.
* 219593: Getting data tables is really slow and the query times out after 30 seconds.
* 219582: ScriptLauncher not work in direct database mode.
* 219549: Number of columns in the totals row of analysis types 14 (root causes) and 29 (duration root causes) should be same as in other rows.
* 219544: Inconsistent # Cases Total when running an analysis.
* 219539: Excessively large amount of data added into expression language exception messages.
* 217293: SQL script parser lost lines and error show wrong line numbers.
* 219572: In-memory dataframes (SimpleDataTable) don't work with >1 billion unique strings.


== QPR ProcessAnalyzer 2020.8 (build 113) (released 2020-12-09) ==
== Additional release for QPR ProcessAnalyzer 2025.3 (build 9725) (released 2025-04-23)==


'''Notes''':
<div style="border:1px solid #dfdfdf;padding:0.5em 1em 0.5em 1em;background-color:#E7EAEC;margin:10px 0px 0px 10px;">
<div style="border:1px solid #dfdfdf;padding:0.5em 1em 0.5em 1em;background-color:#E7EAEC;margin:10px 0px 0px 10px;">
This release fixes the following performance issue '''219585: Showing models list blocks until model loadings have been completed'''. It caused the Model manager and list of models not to open while a model loading was in progress. This may have caused considerable performance degradation in environments where large models are loaded manually by users.
There is an issue causing some dashboards having more than 50 charts to open slowly. The issue has been fixed in the next release by D-14503.
</div>
</div>


'''Features:'''
=== Fixed Issues ===
* 308061: QPR ProcessAnalyzer version related detailed information is shown User settings.
* Fixed issue where system stopped responding after opening Scripts tab several times (error in logs: Timeout expired prior to obtaining a connection from the pool). (D-14506)
* 308067: Charts have performance benchmarking to measure the time taken to calculate a chart.
* Fixed issue where the object-centric models object types tables didn't work without the timestamp column. (B-08683)
* 308042: Dashboard layout logic has been changed in a way that the possible empty space is preserved when viewing dashboards.
* Snowflake cache tables are now created after initiating calculation is completed to improve performance. (D-14460)
* 308002: Web.config contains by default HTTP response header Cache-Control: no-cache, so that browsers check the latest QPR ProcessAnalyzer version is in use after update.
* Fixed issue in User Management where assigning role to project or adding user to group was not saved when there was a column filter. (D-14124)
* 308079: New parameter OperationId is added to operation log.
 


'''Fixed issues:'''
== QPR ProcessAnalyzer 2025.3 (build 9699) (released 2025-04-16)==
* 219585: Showing models list blocks until model loadings have been completed.
* 217940: PAPO flowchart scroll position was incorrectly on the very left.
* 219564: Duplicate of dropdown list contents appears in wrong place when opening dynamic single selected list after changing model.
* 219511: Scheduled loading of datatables caused the server to run out of memory.
* 219591: Using Web.HttpsOnly.config caused HTTP Error 500.19 - Duplicate connection cache-control.
* 219586: Previous modifications to Web.config are also done to Web.HttpOnly.config.
* 219566: Settings panel cannot be opened for flowchart.
* 219569: Conformance check view has "Cannot read property min of undefined" JavaScript error.
* 219562: It was not be possible to filter based on the rest of the items exceeding maximum in charts when there are more than one dimension.
* 219422: Chart Setting dialogue was not closed when user was redirected to relogin after session expiring.
* 219584: Flowchart cache was not cleared when user logs out.
* 219536: SVC log file was incorrectly generated to QPRPA root folder.
* 219532: Creating new objects using Web API incorrectly required property id=-1.
 
== QPR ProcessAnalyzer 2020.8 (build 80) (released 2020-11-10) ==
 
'''Notes:'''
<div style="border:1px solid #dfdfdf;padding:0.5em 1em 0.5em 1em;background-color:#E7EAEC;margin:10px 0px 0px 10px;">
The [[QPR ProcessAnalyzer Version Compatibility|database major version]] has changed in QPR ProcessAnalyzer 2020.8, which means that earlier QPR ProcessAnalyzer releases are not compatible with the database that has been updated to QPR ProcessAnalyzer 2020.8. This needs to be taken into account in those environments where multiple versions of QPR ProcessAnalyzer server are run using the same database.
</div>


<div style="border:1px solid #dfdfdf;padding:0.5em 1em 0.5em 1em;background-color:#E7EAEC;margin:10px 0px 0px 10px;">
New features presentation: [https://files.qpr.com/releases/QPR_ProcessAnalyzer_2025_3.pdf QPR_ProcessAnalyzer_2025_3.pdf]
Eventlog data for the legacy models is removed from the database automatically when updating to QPR ProcessAnalyzer 2020.8. This leads to permanent loss of data if all the needed models are not converted into the datatable-based models before updating to QPR ProcessAnalyzer 2020.8. If there are model conversions to be done, install QPR ProcessAnalyzer 2020.6 that can be used at the same time with QPR ProcessAnalyzer 2020.7 and make the conversions as described in the release notes for QPR ProcessAnalyzer 2020.7. After the conversion, update to QPR ProcessAnalyzer 2020.8 can be done (and QPR ProcessAnalyzer 2020.6 and 2020.7 be uninstalled). If you need help in converting your models, please contact customercare@qpr.com.
</div>


<div style="border:1px solid #dfdfdf;padding:0.5em 1em 0.5em 1em;background-color:#E7EAEC;margin:10px 0px 0px 10px;">
<div style="border:1px solid #dfdfdf;padding:0.5em 1em 0.5em 1em;background-color:#E7EAEC;margin:10px 0px 0px 10px;">
The '''web.httpsOnly.config''' file included in the 2020.8 installation package is incorrect and it should not be used. The issue has been fixed in the next release (build 113).
There is a potentially serious issue that can cause the system to stop responding, when opening the Scripts tab in the Workspace. The issue has been fixed in the next release (build 9725) by D-14506.
</div>
</div>


<div style="border:1px solid #dfdfdf;padding:0.5em 1em 0.5em 1em;background-color:#E7EAEC;margin:10px 0px 0px 10px;">
<div style="border:1px solid #dfdfdf;padding:0.5em 1em 0.5em 1em;background-color:#E7EAEC;margin:10px 0px 0px 10px;">
QPR ProcessAnalyzer 2020.8 brings a change in the server Web.config file which need to be taken into account in the update. The change concerns section ''configuration'' > ''runtime'' > ''assemblyBinding'' > ''bindingRedirect'' for ''Newtonsoft.Json'', where the new line is '''<bindingRedirect oldVersion="0.0.0.0-11.0.0.0" newVersion="11.0.0.0" />'''.
Object-centric model simplification in the story B-08667 (object attributes can only have a single value) doesn't work with this release. The issue has been fixed in the next release (build 9725) by B-08683.
</div>
</div>


'''Features:'''
===New features===
* 307071: User management is available in the Web UI.
* Enhanced [[AI_Agent|AI Agent]] with UI for editing prompt datasets, and added checkbox to include other charts in dashboard to prompt. (B-08641)
* 308038: Database tables related to the legacy model data structures are removed from the database.
* In [[Object-centric_Process_Mining_Model|object-centric models]], object-to-object relations are now followed by traversing once all object types. (B-08606)
* 308028: PAPO is changed to a component containing the Flowchart only that does not contain any other analyses.
* In object-centric models, event type and object type tables are not mandatory anymore, and common attributes can be specified in events and objects tables. (B-08663)
* 308060: Web links can be defined for tables. Web links can be parametrized to contain information from the clicked row.
* Object-centric models support simplified structure where object attributes can only have a single value. (B-08667)
* 308068: Chart definition and preset improvements, e.g. Query analysis, Root causes analysis in tabular format, Case count trend by type.
* "Object relation steps" setting can be empty to traverse all linked objects in the object-centric model. (B-08668)
* 308031: Server API: Web API for models.
* Snowflake Event Types preset has been improved by adding suggestion of desired and undesired activities based on frequency of occurrence. (B-08656)
* 308045: Server API: Version information to /api/serverinfo.
* Added checkbox for [[Measure,_Dimension_and_Column_Settings#Advanced_settings|disabling filtering]] for individual dimensions or columns. (B-08589)
* 308050: Expression language: Template strings containing embedded expressions.
* Case and event attributes dropdown lists show number of unique values in Snowflake models (instead of attribute datatype as previously). (B-08316)
* 308056: Server API: Filters support for NumberPrecision/DatetimeTruncation/TimespanPrecision and StringifiedValues.
* [[SAML_2.0_Federated_Authentication|SAML authentication]] can now synchronize user groups from identity provider. (B-08612)
* 308062: Server API: The expression analysis, has a "criteria" property for filtering analysis results.
* Groups can be [[Manage_Users_and_Groups#Deleting_Group|deleted]] in user management. (B-08330)
* 308069: Constant folding optimization for expression language.
* [[Storing_Secrets_for_Scripts|Secrets]] can be defines as global that can be used by all projects. To set global secrets, [[Generic_Functions_in_QPR_ProcessAnalyzer#SetSecret|SetSecret]] function works also in the generic context. (B-08599)
* 307965: Expression language: New functions for handling dataframes.
* Snowflake [[Clustering_Analysis|Clustering analysis]] shows now number of event occurrences as features describing clusters. (B-08353)
* 308041: SendEmail function in expression language.
* Model validity check has been extended to find issues in the eventlog data for Snowflake case-centric models. (B-07910)
* 308049: Backend performance improvements for dashboards.
* 307910: Caching improvements: QueryIdentifier is not part of the cache key, and UserId is excluded from cache key when the expression is not user specific.
* 307806: Angular Web UI framework is updated to version 10.
* 308034: All 3rd party components in the Web UI are updated.
* 308059: Expression language: Modify scoping in user defined functions to correspond more with javascript (static/lexical) scoping.
* 307985: Create presentation object types for all HTML presentation objects used in system views - part 1.
* 308037&308055: QPRLibraries migration to Syncfusion JS2 - parts 2/3.
* 308043: Language translation has been updated.
* 308065: Restore feature: Model statistics (e.g. cases, events, event types) calculation has been improved. Now the statistics are not reset when model settings are changed, and case count shows only cases having events.
 
'''Fixed issues:'''
* 219241: Filter from ChartView is not confirmed when clicking Flowchart.
* 219507: X-AspNet-Version http response header has been removed from error responses.
* 219533: Dashboard gave randomly "Collection was modified, enumeration operation may not execute" error.
* 219540: Conformance analysis with incorrect BPMN model containing loops crashed server.
* 219349: When flow is selected in PAPO flowchart, event type filtering should not be possible.
* 219535: Empty strings in X-axis values show category index.
* 219554: When using lasso tool to filter in chart, y-axis position should be ignored in most chart types.
* 219558: Clustering and prediction doesn't take into account when there is one event type selected.
* 219221: Add many duplicate filters to same view should be prevented.
* 219534: It should not be possible to create filter rules without values selected.
* 219546: PA page content stays in very small area after reload page.
* 219555: Changing focus to other chart while selection is in progress creates invalid filter if clicked chart has chart filter.
* 219403: Improved error message texts for access denied errors.
* 219514: GET api/users/memberships/{id} should also return group's members.
* 219565: "No measure or dimensions have been defined" error in Conformance Root Check view.
* 219567: Typo in Chart Settings Presets.
* 219570: Color scale is inverted in Root causes for case duration preset.
* 219573: Event type filter component doesn't work.
 
== QPR ProcessAnalyzer 2020.7 (build 39) (released 2020-10-21) ==
 
'''Fixed issues:'''
* 308058: Roll back improvement of model statistics calculation (307988) which inadvertently changed the Excel client protocol.


== QPR ProcessAnalyzer 2020.7 (build 36) (released 2020-10-13) ==
===Fixed issues===
* Fixed a potential issue which could have leaked database connections and caused connection pool starvation. (D-14414)
* Renewed self-signed certificate used by SAML 2.0 authentication with ten years of validity. (D-14424)
* Improved CallWebService function to send request body when using DELETE method. (D-14488)
* Login page now shows correct error message when there are serious system errors during login. (D-14480)
* "Datatable contents (in-memory)" option now works also with Snowflake datatables. (D-14391)
* Added maximum data size limitation to AI assistant to avoid error with large datasets. (D-14419)
* Day of the Year/Week/Month/Quater selection didn't work with specific event time in in-memory chart. (D-14421)
* KPI card now shows a scrollbar when content doesn't fit to the available space. (D-13428)
* Workspace projects hierarchy tooltips didn't show special characters correctly. (D-14430)
* BPMN editor crashed when creating filter from tasks giving following error: Cannot read properties of null (reading 'querySelector'). (D-14399)
* Value expressions didn't work that are referred in dimension and containing aggregation. (D-13624)
* Fixed issue where object-centric flowchart filter selection gave error when case-centric model was selected. (D-14408)
* Fixed issue where query to non-existing model incorrectly returned "Sequence contains no elements". (D-14402)
* Incorrect StringifiedValues in chart settings and expression filter rule caused UI to stuck. (D-14485)
* Table column filter value list didn't show the null value label correctly. (D-13844)
* "Visualize list items with colors" setting didn't work with the "Last Row Aggregates Over-limit Rows" setting. (D-14357)
* Made sure that failed queries are not added to model filter cache. (D-14484)
* Chart settings crashed when trying to use without model selected giving following error: Cannot read properties of undefined (reading 'injectValue'). (D-14395)
* Fixed issue where chart settings opened on top of full screen BPMN editor. (D-14472)
* Show details button in some error messages didn't have any effect when pressed. (D-14490)
* Model validation message was incorrect for model where other datatable is Snowflake and other SQL Server. (D-14475)


'''Notes:'''
===Other improvements===
<div style="border:1px solid #dfdfdf;padding:0.5em 1em 0.5em 1em;background-color:#E7EAEC;margin:10px 0px 0px 10px;">
* Logging has been set to Warning level for Native App to avoid excessive number of log entries to Snowflake events table. (B-08687)
Known issue: QPR ProcessAnalyzer 2020.7.1 is not compatible with Excel Client 2020.7, even though the Excel Client protocol version hasn't changed. To resolve the issue, update Excel Client to 2020.7.1.
* Datatable duplication is now synchronous in Snowflake until 30 seconds to avoid showing the created duplicate datatable with zero rows while the operation is still in progress. (B-08634)
</div>
* Improved Snowflake cache table creation logic when there are multiple simultaneous queries. (B-08622)
* Refactored SQL Server operations to improve robustness and avoid leaking database connections. (B-08649)
* Frontend components have been updated. (B-08638)
* Backend components have been updated. (B-08639)
* Translations have been updated. (B-08640)


'''Features:'''
==Additional release for QPR ProcessAnalyzer 2025.2 (build 9476) (released 2025-03-19)==
* 308036: Default values of chart margins have been adjusted, and there is a dashed line helping aligning charts.
* 307988: Model statistics (e.g. cases, events, event types) calculation has been improved. Now the statistics are not reset when model settings are changed, and case count shows only cases having events.
* 307956: Backend support for dimension values rounding for numbers, datetimes and durations.
* 308040: Variation calculation performance has been improved.


'''Fixed issues:'''
=== Fixed issues ===
* 219518: Root cause analysis doesn't change after first analysis when comparison criteria is changed.
* Fixed issue where charts axis labels had unnecessary line breaks on spaces. (D-14413)
* 219523: Analysis query fails when there are filter rules and model is not already in memory.
* Fixed issue where AI Agent and LLMComplete function didn't work in Native App. (D-14410)
* 219516: User description in Excel breaks web UI.
* Fixed translations for Workspace Scripts tab column filter for Status and Result columns. (D-14393)
* 219527: Opening UI with a link containing sys:dashboard opens previously used model instead of model stored to dashboard.
* Fixed issue where Volume Distribution of Flow Analyzed object type didn't work. (D-14390)
* 219525: Filtering fails when first clicking chart and then PAPO flowchart.
* Removed reference to fonts.googleapis.com for stylesheets to avoid content-security-policy error. (D-14373)
* 219510: Filter creation doesn't work from "Cases where specific events occur" dimension.
* Syncfusion dialog headers now show special characters correctly. (D-14407)
* 219503: Flow duration gives "Index out of bounds" when selecting a flow that does not exist.
* Object attribute filter gave null reference error when object type didn't exist in model. (D-14379)
* 219517: "Cases with specific case attribute value" measure doesn't take into account datatypes.
* 219254: When other than traditional model has never been loaded, model statistics should return null in expression language.
* 219509: Event types is empty after ResetModelCache.


== QPR ProcessAnalyzer 2020.7 (build 12) (released 2020-09-29) ==
==QPR ProcessAnalyzer 2025.2 (build 9410) (released 2025-03-05)==


'''Notes:'''
New features presentation: [https://files.qpr.com/releases/QPR_ProcessAnalyzer_2025_2.pdf QPR_ProcessAnalyzer_2025_2.pdf]
<div style="border:1px solid #dfdfdf;padding:0.5em 1em 1em 1em;background-color:#ffcdd3;margin:10px 0px 0px 10px;">
Support for the legacy models is dropped in QPR ProcessAnalyzer 2020.7, and the models need to be converted to the new datatable-based models before updating to QPR ProcessAnalyzer 2020.7. You can check the model type as follows: Open QPR ProcessAnalyzer Web UI, open the models dropdown list in the header, find the model, open ''Properties'' for the model, and go to the ''Datasources'' tab. If the ''Load from Database'' is ''yes'', the model is a legacy model and requires conversion.
 
The conversion can be done as follows:
# In QPR ProcessAnalyzer Web UI, export the model as a .pacm file by clicking ''Export Model'' in the ''Model Properties'' (in the ''Actions'' tab).
# Go to the ''Datasources'' tab, change the ''Load from Database'' from ''Yes'' to ''No'', and change the ''Cases'' ''Datasource'' to ''Datatable''. The ''Events'' ''Datasource'' is already correct.
# Import the .pacm file back to the same model using the ''Data Import'' in the navigation menu. In the import form, select ''Import to Existing'' model and choose the model. Checkbox ''Add to existing data'' can be in either position.
 
Notes regarding the conversion:
* Exporting and importing operations might take long time for very large models.
* Model id's are not changed in the conversion.
* Original filters and their id's are preserved but new duplicate filters are created during the import (which can be deleted).
</div>


<div style="border:1px solid #dfdfdf;padding:0.5em 1em 0.5em 1em;background-color:#E7EAEC;margin:10px 0px 0px 10px;">
<div style="border:1px solid #dfdfdf;padding:0.5em 1em 0.5em 1em;background-color:#E7EAEC;margin:10px 0px 0px 10px;">
QPR ProcessAnalyzer server installation has some files removed comparing to the previous version, because the WCF tester legacy functionality has been removed. Please note this, if updating the server by replacing the old files, because the files that need to be removed don't actually get removed with that method. The files to be removed are ''default.aspx'', ''favicon.ico'' and ''processanalyzer.png'' and folder ''scripts''.
Detection of models with incomplete datasource configuration has been improved, and now models where the event timestamp column type is string, are not anymore considered valid models. Earlier the string type of data was accepted and converted into dates when model was loaded (for in-memory models) or in SQL queries (in Snowflake models).
</div>


<div style="border:1px solid #dfdfdf;padding:0.5em 1em 0.5em 1em;background-color:#E7EAEC;margin:10px 0px 0px 10px;">
The following query can be run in the [[Navigation_Menu#Expression_Designer|Expression Designer]] (with System administrator user) to list models where the events datatable timestamp column type is string:
[[QPR_ProcessAnalyzer_Version_Compatibility|Excel Client protocol version]] is changed which requires to update QPR ProcessAnalyzer Excel Client when updating to QPR ProcessAnalyzer 2020.7.
<pre>
Models.Where({
let timestampColumn = _.Configuration?.TryGetValue("Datasource")?.TryGetValue("Events")?.TryGetValue("Columns")?.TryGetValue("Timestamp");
return First(_.EventsDatatable?.Columns?.Where(Name==timestampColumn))?.Datatype == "String";
}).(Name + " (id: " + Id + ")");
</pre>
</div>
</div>


<div style="border:1px solid #dfdfdf;padding:0.5em 1em 0.5em 1em;background-color:#E7EAEC;margin:10px 0px 0px 10px;">
<div style="border:1px solid #dfdfdf;padding:0.5em 1em 0.5em 1em;background-color:#E7EAEC;margin:10px 0px 0px 10px;">
The version numbering of QPR ProcessAnalyzer has changed, and now releases are identified using a simple version number instead of the previous version format (e.g. 2020.6.0.42152). The version number can be seen in the ''User Settings'' in the main navigation menu.
For Snowflake dashboards, table actions to [[QPR_ProcessAnalyzer_Table#Table_actions|set dashboard variables]] now set the variable values in the [[Stringified_Value_Format|stringified format]] instead of as raw values. This makes the variables set by table actions compatible with the [[Chart_Linked_Settings|linked settings]] which also use the stringified format by default for the Snowflake models.
</div>
</div>


'''Features:'''
===New features===
* 308003: Filter rules can be turned off.
*Introduced [[AI Agent]] which is a new dashboard component showing LLM generated answers based on user prompt and input data. (B-08556)
* 308021: Dimension specific maximum number of items can be defined.
*Added [[Filtering_in_QPR_ProcessAnalyzer_Queries#Object-centric_filter_rules|filtering by object attributes]] for object-centric models. Filters can be created from dialog or selecting items from charts. (B-08547)
* 308006: KPI card has customizable colors.
*In object-centric models, object-to-object relations are followed only forward and backward directions. Additionally, there are performance improvements for object-centric models. (B-08577)
* 308009: Dimension values can be mapped to colors for visualization.
*Snowflake warehouse can be [[QPR_ProcessAnalyzer_Project_Workspace#Change_Snowflake_Warehouse_for_Model|specified for each model]] allowing to use optimal type of warehouse for different sizes of models. (B-08610)
* 308008: Chart specific model selection.
*Home screen has been removed, and [[QPR_ProcessAnalyzer_Project_Workspace|Workspace]] has new card layout and other UX improvements. (B-08541)
* 308017: Remove left and right axis synchronization in Chart.
* Added [[Filtering_in_QPR_ProcessAnalyzer#Saving_filters|filter description]] field to filter properties dialog. (B-08451)
* 307995: Ending tasks in web UI.
*Removed event type existence check from charts, so that non-existing event types are allowed. (B-08585)
* 307987: Navigation menu width is set based on dashboard names.
*Snowflake Native App configuration data can be [[QPR_ProcessAnalyzer_Native_App_in_Snowflake#Backup_configuration_data|backed up to a snapshot and restored]]. (B-08591)
* 307993: Model size estimate is decreased by 20 %.
*Improved detection of invalid models by adding [[QPR_ProcessAnalyzer_Objects_in_Expression_Language#CheckModelValidity|CheckModelValidity]] function returning model validation errors. (B-08426)
* 308018: Bottleneck identification and optimizations for models having lots of cases.
* 307994: Taken into use functions stdev, stdevp, var and varp in Chart.
* 308016: Migrate Chart pivot to Syncfusion JS2 PivotTable.
* 307805: Syncfusion JS2 migration - part 1.
* 308025: Chart components migration to Syncfusion JS2 (part 1).
* 307939: Remove manually updated version numbers.
* 308005: Remove "Dimensions/columns as calculated attributes" and "Chart settings (compacted)" from chart.
* 307999: Remove legacy model settings from model properties.
* 308020: Change default bpmn model to empty.
* 307758: Standard deviation, sample standard deviation, variance and sample variance to expression language.
* 307976: Angular migration finalization.
* 307992: In Conformance root causes view, replace datagrid with a chart.
* 307759: Add requirements and tests to mathematical functions from NCalc.
* 307879: Optimize preprocessing for model event log.
* 307916&308010: Drop support for legacy models.
* 308007: "On-screen settings follow flow selection" to work for all start and event event type selections.
* 308030: Change password changing to use /api/users/password.
* 307989: Expression language: Dictionary.Clone-function and improvement to generic ToDictionary and ToDataFrame functions.
* 308029: Revision number in UI.
* 308004: Expression designer results field should be editable.
* 307996&308012: Translation fixes.
* 307954: Web API for datatables.


'''Fixed issues:'''
===Fixed issues===
* 219429: Chart case attribute dropdown list item count did not match with the chart presentation.
*Prevented following error in Snowflake dashboards: Object "qprpa_dt_cache_..." already exists when creating a cache table. (D-14348)
* 219487: When moving and resizing, presentation objects should be aligned with each other and with the canvas.
*In-memory chart "Cases filtered by attribute" didn't work for date type of attributes. (D-14387)
* 219472: Improvements to model and data table loading slowness and memory usage.
*Fixed issue where each dashboard element resize made element width or height increase when chart margin was more than zero. (D-14361)
* 219465: "Case/event attribute not found" error messages improved.
*Chart related buttons are now hidden in datatable content preview. (D-14360)
* 219474: Filter rule text said "undefined" for some expression based filters.
*Fixed issue where gateway based data import didn't write SAP errors into script log. (D-14351)
* 219462: User could not fix incorrect chart settings.
* Snowflake chart gave error when "Last Row Aggregates Over-limit Rows" setting was used with list aggregation. (D-14352)
* 219471: "All cases" option was not visible when changing between models that don't have filters.
*"Users" system report performance has been improved by adding EffectivePermissionTypesFor function. (D-14266)
* 219488: Filter selection should be cancelled when changing dashboard.
*Fixed issue where AI Assistant crashed when used with a model having ODBC or expression datasource. (D-14340)
* 219494: Duration values in flowchart were sometimes rounded incorrectly.
*Fixed issue where AI Assistant explaining charts crashed when applying to Label component. (D-14344)
* 219484: Alignment of dashboard objects was difficult.
*Improved client-side import not to perform redundant datatable configuration data queries. (D-14347)
* 219502: When clicking same Case attribute/Event attribute preset again, loading animation staid for ever.
*Model was incorrectly identified as in-memory model when datatables were missing. (D-14325)
* 219481: Stdev, stdevp, var and varp functions should return null when there are zero or one items in the array.
*Model default filter is now in use when model is opened from Workspace. (D-14376)
* 219496: Series should be stacked bottom-to-top and from-left-to-right in charts.
* 219499: Chart colors were reset to default when resizing window.
* 219480: Attribute+Variation filter resulted in zero cases.
* 219479: SAML login redirection replaces contains http even if https is configured.


== QPR ProcessAnalyzer 2020.6 (released 2020-08-18) ==
===Other improvements===
Build number: 2020.6.0.42152, Model compatibility version: 3, Database version: 74, PACM file version: 7, Protocol version: 33. ([[QPR_ProcessAnalyzer_Version_Compatibility|see more]])
*Changed Snowflake charts to store [[QPR_ProcessAnalyzer_Table#Table_actions|variable change actions]] in stringified format to make them compatible with linked settings. (B-08587)
*Backend support for [[Filtering_in_QPR_ProcessAnalyzer_Queries#Object-centric_filter_rules|object-centric filter rules Disabled flag]]. (B-08611)
*Implemented Entity Framework based database initialization and migrations. (B-08566)
*Added support for following Entity Framework database providers: SQL Server (full), Snowflake Hybrid Tables (experimental), PostgreSQL (experimental). (B-08581)
*Frontend components have been updated. (B-08597)
*Backend components have been updated. (B-08596)
*Translations have been updated for release 2025.2. (B-08607)


'''Features:'''
==QPR ProcessAnalyzer 2025.1 (build 9124) (released 2025-01-23)==
* 307918: Localization for Russian, Spanish, German, Finnish and Swedish.
* 307921: New dashboard Preview mode is separated from the Edit mode, to be able to temporarily change chart settings without saving them to the dashboard.
* 307982: Changes to showing model last imported date and additional information to Model Properties dialog.
* 307983: Editing calculated case and event attributes.
* 307980: Chart setting "On-screen Settings Follow Flow Selection" to freeze chart from reacting to flow selection.
* 307824: Expression language function improvements (IndexOf, LastIndexOf, ToString, ParseDateTime, First, Last).
* 307952: When loading model data, the order of events inside cases is primarily based on the timestamp and secondarily by event row number.
* 307953: Querying model-datatable linking in expression language.
* 307817: User management operations to Web API.
* 307900: Memory consumption improvement for getting number of unique attribute values.
* 307978: Performance improvement: Taken into use AttributeType.UniqueCount to replace Count(_.Values) in expression used by UI.
* 307781: ProjectId property is removed from dashboard export files.
* 307955: Dataframes are loaded in parallel.
* 307934: AsParallel function implementation has been finalized.


'''Fixed issues:'''
New features presentation: [https://files.qpr.com/releases/QPR_ProcessAnalyzer_2025_1.pdf QPR_ProcessAnalyzer_2025_1.pdf]
* 219388: Old data comes to dashboard when data imported to datatable.
* 219412: No scrollbar for both error message and web UI window.
* 219414: Error message appears in Clustering Analysis for model with zero events and cases.
* 219419: QueryIdentifier should be excluded from client side query cache.
* 219426: Script editor cannot save changes in 2020.5 version.
* 219430: Filtering does not work in PAPO Cases and Event Types when using French.
* 219431: PAPO Events and Root Causes not working when using French.
* 219435: Dialogues have small layout issue.
* 219441: Deletion does not work correctly in folders screen when selecting using shift+ctrl-click.
* 219160: Hidden case attributes are visible in profiling case analysis, and in Influence Analysis for case attributes settings.
* 219418: Missing translations for the Clustering analysis.
* 219446: JavaScript error when closing dialog using the X button.
* 219444: Deselecting selected item by re-clicking it will not hide the selection buttons in Chart and generates an error in browser console
* 219449: Prediction fails with certain small models.
* 219450: Evaluation stack is not generated correctly if an exception occurs while inside a function having no parameters.
* 219456: Query cache is not cleared when model settings are changed.


== QPR ProcessAnalyzer 2020.5 (released 2020-06-29) ==  
===New features===
Build number: 2020.5.0.41888, Model compatibility version: 3, Database version: 73, PACM file version: 7, Protocol version: 33. ([[QPR_ProcessAnalyzer_Version_Compatibility|see more]])
*B-08526: Variations and other lists can be visualized with colors, and "List separator" field is available for dimensions and columns.
*B-08530: Charts can have a [[QPR_ProcessAnalyzer_Chart#Visual_Settings|description text]] which are shown in a dialog when pressing the info button.
*B-08546: Added [[SQL_Expressions#LLMComplete|LlmComplete]] function to access Snowflake Cortex large language models.
*B-08439: Added project settings [[QPR_ProcessAnalyzer_Project_Workspace#Project-level_Snowflake_Database_and_Schema|DatabaseNameInDataSource and SchemaNameInDataSource]] to define Snowflake database and schema.
*B-08531: Projects can be created in expression language using [[Generic_Functions_in_QPR_ProcessAnalyzer#CreateProject|CreateProject]] function.
*B-08387: Added backend support for object-centric model [[Filtering_in_QPR_ProcessAnalyzer_Queries#Object-centric_filter_rules|filtering for object attributes]].


'''Notes:'''
===Fixed issues===
* Dashboards structure is simplified, as panels are removed and presentation objects are placed directly to the dashboard canvas. In addition, panel headers are not available anymore. Presentation objects have now background color, border color, border width and border corner radius, that were previously in the panel level. All existing dashboards are automatically migrated to the newer structure. Existing dashboards that have several presentation objects within a same panel, are positioned on top of the others, so in those cases presentation objects need to be repositioned manually after updating to QPR ProcessAnalyzer 2020.5.
* D-14339: Week numbers showed incorrect year for last dates in the end of year.
* IP address verification of user sessions has been removed. Previously, each user session was only allowed from the same IP address. This kind of security feature won't work with IPv6 addresses which usually change more often than IPv4 addresses.
*D-14323: Filtering with "Split data by filtering" dimension didn't work with exclude type of filter rules and when there were multiple filter rules.
*D-14346: Fixed issue where manual activation using activation utility didn't work.
* D-14326: Fixed issue where extra columns in objects table broke object-centric model.
*D-14306: Fixed issue when there were both TimeStamp and ToTimeStamp event data columns.
* D-14332: Flowchart event type and flow queries are now simultaneous which will improve performance.
*D-14331: Flowchart lost selection when flowchart used linked variables with array values.
*D-14299: Table text filters didn't work in Snowflake (starts with, ends with, contains).
*D-14338: Model.Modify function generated model json configuration that frontend wasn't incompatible with.
*D-14342: Flow step and Zoom settings control have same size and layout is aligned.
*D-14316: Occurrence impact on case duration measure didn't work with certain in-memory models.
*D-14327: AI Assistant had console error when pressing send button without text.
*D-14341: AI Assistant overlapped with BPMN editor in fullscreen mode.
*D-14321: Added error message for AI Assistant when trying to use it without model selected.


'''Features:'''
===Other improvements===
* 307938: Support for French language.
* B-08391: Datatable access has been optimized improving performance for object-centric models.
* 307868: New dashboard designer that doesn't have panels.
*B-08529: Added support for array type in stringified value format.
* 307947: Tables conditional formatting
*B-08527: Improved SAP connector error handling and removed assumption for fixed dll file names.
* 307948: Dashboard properties layout and terminology changes.
*B-08552: Migrated rest of SQL queries into Entity Framework as preparation for storing configuration data to Snowflake hybrid tables.
* 307911: IP address verification has been removed.
*B-08544: Frontend components have been updated.
* 307931: Expression language and performance improvements (originated from Spark prototyping).
*B-08561: Updated translations for release 2025.1.
* 307774: Web API operation /api/importfile for data import.
* 307933: Default logging mode has been changed to ExclusiveLock for all components.
* 307904: Server side support for UI languages.


'''Fixed issues:'''
== Old Releases==
* 219372: Issue with simultaneous eventlog processing that caused "Value cannot be null" errors and sometimes calculation with incorrect eventlogs.
See older releases in [[QPR ProcessAnalyzer Release Archive]]
* 219375: --#CallWebService didn't work with Content-Type parameter.
* 219357: UI was stuck to IdP login page when SAML settings (e.g SAMLUserIdAttribute) were misconfigured.
* 219391: After logout GetOperationProgress failed for validating session.
* 219408: Removed focus outline border from buttons and textboxes.
* 219398: ETL Access denied CheckIsInProjectContext.
* 219373: Case.FlowOccurrences and Case.FlowOccurrencesByType have Variations preprocessing missing.
* 219382: Query for open operations should not return "open" operations that were started before the server startup time.
* 219402: Model with LoadOnStartup=true doesn't work with case level permission with expressions referring to current user.
* 219409: Filters containing event type and variation rules always filter out all cases.
* 219416: Error in model loading in startup can effect other model loading.
* 219369: Change error message "Time out while waiting for server response.".
* 219387: Text filter options opened to left for ChartView making them partly hidden for first column.
* 219395: Save button not always enabled when editing dashboard.
* 219396: Context change notification should not be called for closing dashboard charts.
* 219411: Right click menu issue in PA Flowchart analysis view.
 
== QPR ProcessAnalyzer 2020.4 (released 2020-05-26) ==  
Build number: 2020.4.0.41643, Model compatibility version: 3, Database version: 71, PACM file version: 7, Protocol version: 33. ([[QPR_ProcessAnalyzer_Version_Compatibility|see more]])
 
'''Notes:'''
* In QPR ProcessAnalyzer 2020.4, the deployment package dashboards come with the installation, so there is no deployment package anymore to be installed. The previous deployment package located in the ''QPR ProcessAnalyzer UI'' project can be deleted when 2020.4 is installed.
* To fix issue ''Datetimes are incorrect in files exported from data grids'' (219377), [[Data Grid Export Service|data grid export service]] needs to be updated from version V001 to V002.
* Issue workaround: After updating to QPR ProcessAnalyzer 2020.4, dashboards containing the root causes analysis give an error message about invalid chart configuration. The problem can be fixed as follows: from the JSON text that appears in the full screen text editor, make the following text replacements: "Case Attribute" --> "Case attribute" and "Attribute Value" --> "Attribute value". When the dashboard is saved, the error doesn't appear anymore.
* To improve performance, for custom expressions in charts it's recommended to replace ''??_remove'' with the [[Generic_Functions_in_QPR_ProcessAnalyzer#RemoveNulls|RemoveNulls]] function. Example: Expression ''Average((_.Attribute("Cost") ??_remove)._)'' can be changed to ''Average(RemoveNulls(_.Attribute("Cost")))''.
* To improve performance, for custom expressions in charts it's recommended to change expressions that make duration aggregations to work in a way that the aggregation is made before converting TimeSpans to integers (e.g. to days). Example: expression ''Average(_.Duration.TotalDays)'' can be changed to ''Average(_.Duration).TotalDays''.
* Issue: In Firefox, when opening a dashboard, an error message "Error in chart settings" might appear (the dashboard is still opened correctly). If the issue appears, it's recommended to use Chrome, where the issue does not appear that often. There are no other workarounds available for the issue.
* Issue: FlowOccurrences and FlowOccurrencesByType properties don't work for Case objects when there are also filter rules applied. Some measures and dimensions use those properties. QPR ProcessAnalyzer 2020.5 will fix the issue, and for earlier versions there is no workaround.
 
'''Features:'''
* 307859: Deployment package dashboards are embedded to QPR ProcessAnalyzer release.
* 307899: RemoveNulls function to remove null values from arrays.
* 307915: Expression language improvements related to CSV file generation.
* 307809: When dashboard is opened, editing mode is disabled when no rights to edit the dashboard.
* 307829: Highcharts, Syncfusion, GoJS and some other components have been updated to their latest versions.
* 307848: Component updates for building QPR ProcessAnalyzer UI.
* 307882: JavaScript libraries are split into smaller files in release build.
* 307932: Some PAPO buttons are removed from the tool palette.
* 307912&307917: ChartView and main header improvements for 2020.4 (parts 1 and 2).
 
'''Fixed bugs:'''
* 219365: Sometimes system stuck during the time models were being loaded into memory.
* 219326&219377: Datetimes are incorrect in files exported from data grids (time zone difference) (See also the notes above).
* 219378: ChartView resizing sometimes didn't work when using full screen.
* 219371: Error messages have been improved for session expired and unknown error.
* 219360: Some styles were defined twice in CSS.
 
== Additional release for QPR ProcessAnalyzer 2020.3 (released 2020-04-23) ==
Build number: 2020.3.0.41450, Model compatibility version: 3, Database version: 71, PACM file version: 7, Protocol version: 33.
 
'''Features''':
* 307902 ChartView improvements for 2020.3 hotfix: Custom expressions have by default datatype "auto", added support for binding to multi-select lists in Variable bindings, bugfix: Custom sorting didn't work in presets, bugfix: Aggregation method for Pivot table was not selected correctly.
 
'''Fixed bugs:'''
* 219370: Dashboards could not be edited by other than administrators.
* 219361: Flowchart sometimes crashed to ThrowKeyNotFoundException when pressing Root Causes button.
 
== QPR ProcessAnalyzer 2020.3 (released 2020-04-16) ==
Build number: 2020.3.0.41413, Model compatibility version: 3, Database version: 71, PACM file version: 7, Protocol version: 33.


'''Notes:'''
* Legacy Chart and Gauge presentation objects are removed from QPR ProcessAnalyzer (they are different than ChartView). If there are dashboards containing those types of presentation objects after updating to 2020.3, there will be a placeholder frame instead with an error message of a non-existing presentation object. To change the dashboard, remove those placeholders and replace with ChartViews. It's recommended to make the replacement to ChartViews before the update, because chart and gauge settings cannot be accessed anymore in 2020.3.
* ChartView will change from an HTML presentation object to a native presentation object, which ensures that dashboards will work in future releases when the ChartView is evolving. ChartViews created with 2020.2 will be automatically migrated to the native ChartViews in 2020.3. ChartViews created with 2020.1 or earlier releases need to be updated manually by removing the ChartView from the dashboard and replacing it with a new ChartView.
'''Features:'''
* 307849: Securely stored strings for passwords.
* 307746: ChartView is now a native presentation object instead of an HTML presentation object. ChartView's made in 2020.2 are automatically converted to the native presentation objects.
* 307880: When a datatable model is moved to another project, the linked datatables should also be moved to the project.
* 307556: Functions to expression language to improve usability and performance: CaseCount, EventCount, EventCountByType and Round.
* 307895: SQL scripting command for database commit.
* 307850: Expression language performance improvement by a new way to calling functions and properties.
* 307858: Expression language: Support for array operators.
* 307845: Header buttons layout has been improved.
* 307870: Preprocessings are determined automatically.
* 307761: Functionality that user doesn't have access is now disabled in the dashboard designer and workspace to avoid access denied errors.
* 307839: Generic chart and gauge presentation objects are removed.
* 307863: Automatic redirection to SAML authentication.
* 307872: API support for querying if SAML is configured.
* 307846: Error message further improvements.
* 307888: Error message text changes for Dashboard not found and Multiple dashboards found.
* 307874 & 307887: ChartView and main header has been improved.
'''Fixed bugs:'''
* 219341: Analysis function unnecessarily required FilterId parameter.
* 219343: Root causes analysis gave access denied when using Analysis function.
* 219348: Query cancellation caused database connection leakage.
* 219332: "Thread was being aborted" returned to client while loading model from datatable.
* 219321: Removed unnecessary error log lines "Missing expected HttpRequest X-Forwarded-For" that appeared even if UseXForwardedForAsClientIp=false.
* 219335: [_remove ]._ or empty array is not handled correctly in a KPI dimension.
* 219340: default.aspx does not work.
* 219330: EditDashboards permission should be needed for target project when moving dashboards between projects.
* 219347: Queries done by the main header were cancelled when view is changed.
* 219355: Expression language: Was unable to use properties of the parent context in dictionary initialization.
* 219346: PAPO flowchart should have by default median duration shown on flows and flow counts hidden.
* 219333: PAPO generated incorrect filter JSON and unnecessary query.
* 219311: When opened a view by identifier, the view was fetched twice from the server.
* 219329: Unnecessary information was stored in database for dashboard definitions.
* 219362: Issues with session expiration checks.
* 219364: Session expiration with SAML authentication configured gives incorrect error message.
* 219344: Case count view in model manager header and Home view can cause unwanted model loading.
* 219242: Flowchart is not updated correctly after event type filtering.
== Old Releases ==
See older releases in [[QPR ProcessAnalyzer Release Archive]]
__NOTOC__
__NOTOC__


[[Category: QPR ProcessAnalyzer]]
[[Category: QPR ProcessAnalyzer]]

Latest revision as of 09:49, 5 November 2025

This page lists all new features and fixed issues for each QPR ProcessAnalyzer release.

Next Release: QPR ProcessAnalyzer 2025.7 (planned 2025-11-11)

See roadmap for next release features and fixes

Latest Release: QPR ProcessAnalyzer 2025.6 (build 10690) (released 2025-10-01)

New features presentation: QPR_ProcessAnalyzer_2025_6.pdf

Known issue: If the DefaultUiLanguage system configuration is not defined, users who haven't changed their own language, are unable to login. To prevent this problem, please ensure the DefaultUiLanguage is defined. The next release will fix this issue (D-14706).

Content-Security-Policy (CSP) HTTP header has been updated to enhance security by implementing more restrictive settings. The following directives have been added:

  • object-src 'none'
  • frame-ancestors 'self'
  • form-action 'none'
  • base-uri 'none'
  • worker-src blob:

These new restrictions may affect usage that has previously been possible. For example, with the new settings, QPR ProcessAnalyzer can be embedded to a website only within the same origin. For detailed instructions on embedding QPR ProcessAnalyzer on a different website, please refer to this quide. Additionally, for information on modifying the CSP settings, see documentation for security hardening.

In the QPR ProcessAnalyzer 2025.6 Native App, the release version number is not displayed correctly in the User Settings dialog. This omission does not have any other complications. QPR ProcessAnalyzer 2025.6 is the only release with this issue, making it possible to identify this release despite the missing version number. This issue is specific to the Native App only. The next release will fix this issue (D-14703).

New features

  • Starting dashboard after login can be defined for user groups, allowing to create customized starting pages for easy navigation. (B-08791)
  • Snowflake chart's event filters are now embedded to filters created from chart, to precisely follow chart calculation. (B-08845)
  • Result data can be filtered in Snowflake charts using result filtering expression which works for any datasets. (B-08751)
  • Filter rules order now stays the same when making filter selections and confirming filter. (B-08801)
  • Added model setting Show object count statistics to hide object counts information in dropdown lists to optimize performance. (B-08849)
  • Added support for hiding statistics for on-screen setting dropdown lists to improve performance, and in addition the case ID is hidden Case/Event attribute profiling presets. (B-08840)
  • Added following audit fields to users and groups: Created date, Created by, Last modified date, and Last modified by. (B-08792)
  • Snowflake Native App: Added procedure to that creates administrator user to Native App if access to the app has been lost. Also, prevented user management operations that remove own access. (B-08733)
  • Snowflake Native App: Added procedure to change Native App compute pool size. Changed new Native Apps to use CPU_X64_S size compute pool, and improved Native App stability. (B-08859)

Fixed issues

  • Snowflake Cortex based AI Assistant didn't show the results table. (D-14643)
  • When percent stacking is used, Y-axis values are now shown as percentages in data label and tooltip. (D-14633)
  • Fixed issue where Label&Link component had sometimes unnecessary vertical scrollbar. (D-14685)
  • Model validation showed incorrect error message for models with numeric duplicate case ID's. (D-14687)
  • In Workspace, scripts "View current run log" dialog didn't update log correctly when new entries were added. (D-14662)
  • Event type mapping in charts didn't work in object-centric models. (D-14620)
  • Model generation didn't work as transformation step using _system.ML.ApplyTransformation function. (D-14654)
  • Others aggregation has been removed from date type of dimensions because tables don't work with textual data in date columns. (D-14623)
  • Fixed issue in AI Assistant where using both Snowflake Cortex and OpenAI modes caused error. (D-14646)
  • In User Management Effective permissions table, column filter incorrectly showed "true" and "false" as options. (D-14639)
  • Pivot table incorrectly showed "Numeric value is not recognized" error when Count or Unique count aggregations were used. (D-14559)
  • Workspace buttons are now visible in small screens spanning to multiple lines. (D-14587)
  • Added tooltip text to "Move to" submenu containing projects so that long project names can be seen. (D-14612)
  • Translation was missing from error messages when deleting items from recycle bin. (D-14652)
  • Fixed data type related issues with in-memory Floor, Ceiling and aggregation functions. (D-14622)
  • Optimized resource loading by getting rid of unnecessary file assets/i18n/en_US.json. (D-14641)
  • Fixed issue where opening script editor gave javascript error about content-security-policy violation. (D-14627)
  • Fixed issue in charts showing datatable content had a strange error when datatable was not selected. (D-14650)
  • Fixed incorrect data types in some project, user and group related measures. (D-14619)
  • Fixed issue where moving expression scripts was not possible when SQL Scripting was not allowed. (D-14624)
  • Deleting and renaming scripts were not available for expression scripts when SQL Scripting was not allowed. (D-14625)
  • Improved documentation for situation when non-existing Snowflake warehouse is configured for a model. (D-14543)
  • Project properties dialog shows a descriptive text when no secrets have been defined instead of an empty table. (D-14611)
  • Improved messages and New project button visibility in Workspace top level when no projects are shown. (D-14609)
  • Event preset gave error if enabling Apply with Chart Filters setting and trying to create filters. (D-14695)

Other improvements

  • Added QPR ProcessAnalyzer API request ID to Snowflake queries to easily find matching query in Snowflake query history. (B-08839)
  • Content Security Policy HTTP header includes now object-src, frame-ancestors, form-action, base-uri, and worker-src. (B-08794)
  • Snowflake queries have been optimized by removing null and empty string checks from mapped columns as they are now handled by the model validation check. (B-08837)
  • Added backend support for object-centric model filtering based on case-centric filter rules. (B-08836)
  • Frontend components have been updated. (B-08851)
  • Backend components have been updated. (B-08852)

QPR ProcessAnalyzer 2025.5 (build 10361) (released 2025-08-21)

New features presentation: QPR_ProcessAnalyzer_2025_5.pdf

When using Snowflake Cortex, the AI Assistant is not showing the results table in the assistant's response. This issue has been fixed by the next release.

New features

  • Object-centric flowchart can also use object-to-object relations to link events and objects simplifying event-to-object configuration. (B-08671)
  • AI Assistant can provide precise quantitative analysis by making queries to eventlog data (powered by Snowflake Cortex Analyst and Agents). (B-08652)
  • Flows and variations can be filtered from any event attribute viewpoint in Snowflake. (B-08737)
  • Added project properties dialog for viewing project information, changing Snowflake connection settings and project secrets. (B-08655)
  • Model validity check easily detects technically invalid models and shows detailed reason for invalidity. (B-08624)
  • Projects can be exported to json files and imported as new projects. (B-08717)
  • Action buttons can be added to dashboard by defining label component that can change dashboard variables and run scripts. (B-08694)
  • Web user interface is available in Ukrainian language. (B-08734)

Fixed issues

  • Fixed following error when performing client-side SAP import: Could not find a part of the path (QPR_ImportSource_Chunk_*.tmp). (D-14589)
  • Fixed issue where ManageProjects permission was incorrectly required when running scripts using QPR ScriptLauncher non-legacy mode. (D-14562)
  • Fixed following error when using SAP import from SQL script called from expression language called from SQL: The given key was not present in the dictionary. (D-14593)
  • Some analyses didn't work, when case ID columns for cases and events datatables differed only in upper/lowercase letters. (D-14556)
  • Business calendar didn't work for some measures/dimensions/columns and some had business calendar checkboxes missing. (D-14563)
  • Prediction failed to following error: transformer_model_next_activity/event_year_input_embedding. (D-14551)
  • Scripting now works correctly after rows from PA_OPERATION_STATUS table have been deleted. (D-14545)
  • Fixed issue where case-centric flowchart was very slow for object-centric model. (D-14544)
  • Prevented creating dashboards, models and scripts with duplicate names in the same project. (D-09480)
  • KPI Card now shows line breaks correctly in textual values. (D-14546)
  • Improved table Excel export for list data to show items with separator character instead of showing as JSON. (D-14479)
  • Column showing non-conformance reason was incorrectly aligned to right. (D-14570)
  • GetRelatedValueFrom function caused column name conflict when used multiple times in same query. (D-14591)
  • Fixed issue where in-memory sorting for arrays gave "Error in sorting analysis result rows possibly due to multiple types of values ...". (D-14592)
  • Array type of values were shown incorrectly when used Last Row Aggregates Over-limit Rows setting. (D-14616)
  • Fixed the "Most common" text aggregation sorting error for in-memory calculation. (D-14573)
  • Snowflake model validation gave incorrect error message when mapped column didn't exist in datatable. (D-14565)
  • Improved model validation to detect when connection string key for model or datatable does not exist. (D-14607)
  • Model validation gave incorrect error when when events datatable case id mapping was missing. (D-14566)
  • Model validation gave incorrect error message when cases and events datatables were in different datasources. (D-14567)
  • Model validation gave incorrect error message when underlying Snowflake table didn't exist. (D-14568)
  • Workspace Card/Table mode toggle buttons were not translated. (D-14547)
  • Some invalid queries gave unexpected errors and strange outputs. (D-14569)
  • Added translations to model notifications preview table headers. (D-14590)
  • Added translations to access denied message for header object counts indicator. (D-13967)
  • AI Assistant explaining charts speaks now user interface language. (D-14578)
  • AI Agent prompt chart editor didn't show correctly if model was not selected. (D-14536)
  • AI Assistant gave "Unsupported cache table type" error when trying to explain object-centric flowchart. (D-14477)

Other improvements

  • When trying to open dashboard with an invalid model, the precise model validation error message is shown. (B-08629)
  • Account locked message is now same as username/password incorrect to prevent account enumeration attack. (B-08740)
  • Stringified value format supports also json objects. (B-08766)
  • Event attribute used as event type can be defined for flow and variation filters in Snowflake models (backend support). (B-08705)
  • Translations have been updated. (B-08757)
  • Frontend components have been updated. (B-08760)
  • Backend components have been updated. (B-08759)

QPR ProcessAnalyzer 2025.4 (build 9985) (released 2025-05-28)

New features presentation: QPR_ProcessAnalyzer_2025_4.pdf

New features

  • Added new AI Agent presets analyzing current state and proposing improvements based on different viewpoints, such as Event and Case Counts, Automation, Bottlenecks, and Root Causes. (B-08710)
  • Added a generic filtering component that can be configured for creating any type of filters for distinct values. (B-08654)
  • Volume declining in measures due to case sampling can be compensated in chart and flowchart by using a Statistical calculation method. (B-08598)
  • In object-centric models, Object ID, Event ID, Event timestamp, and Event type attribute names are shown correctly. (B-08680)
  • Snowflake native app has now application roles for user (for using app) and administrator (for managing app). (B-08660)
  • For Snowflake native app, IMPORTED PRIVILEGES ON SNOWFLAKE DB privilege is removed and instead the CORTEX_USER database role can be assigned. (B-08718)
  • Native app logging has been improved and now sharing application logs with QPR is possible. (B-08661)
  • Added CsvToDataFrame function to expression language to convert textual CSV data into in-memory dataframe. (B-08246)

Fixed issues

  • Fixed "Invalid identifier" error when opening attribute selection list for case attribute preset caused by object id columns which differed only by letter capitalization. (D-14539)
  • When Image component is clicked in dashboard edit mode, the component is now selected instead of link followed. (D-14525)
  • Filters created from dimensions having dimension-specific filter rules will now create expression filter rule where dimensions-specific filter is embedded, for accurately following the selection. (D-14499)
  • Filtering variations or list of event attribute values didn't work in in-memory models. (D-14476)
  • Fixed issue where AI Agent didn't update when dashboard variable changed used by prompt chart. (D-14537)
  • Fixed issue where some statistical calculations inadvertently changed row order when applying in groups. (D-14495)
  • In in-memory models, array type of data was not dimensioned correctly. (D-14518)
  • AI Agent Process Variations preset gave "division by zero" error when there were zero cases. (D-14508)
  • Table grouping header labels were not formatted correctly. (D-14514)
  • Fixed Root causes analysis to work with object-centric models. (D-14515)
  • Filtering by OcelObjectId didn't work when model didn't have object type table for perspective used in filter. (D-14522)
  • Fixed Root causes analysis with weighting expression to work with object-centric models. (D-14517)
  • Fixed issue where persisting query results where query is started from datatable having custom table name overwrote data in original table. (D-14528)
  • Flowchart SVG export did not show start and end symbols. (D-12401)
  • Fixed issue where join operation didn't find renamed columns in SqlDataFrames. (D-14512)
  • Improved chart filtering button positions to work with small chart sizes. (D-14509)
  • Datatable foreign key columns dictionary data type was incorrect preventing reading columns information. (D-14505)
  • Workspace scripts editor allowed to change script code for viewer users (altough not save it). (D-14534)
  • In chart custom sorting, trying to refer to measure that had None aggregation, caused SQL compilation error. (D-14526)
  • Model validation check crashed when the datatables were in different datasources. (D-14502)

Other improvements

  • Added expression language functions for using Snowflake Cortex Agents with Cortex Analyst access to query eventlogs. (B-08647)
  • Projects can be export and imported in JSON format containing dashboards, models, datatables and scripts. (B-08613)
  • Simplified object-centric model queries by accepting OcelObjectId as object attribute name in filters. (B-08702)
  • Streamlined import API by removing importMode parameter and changing default fileType to CSV. (B-08704)
  • Frontend components have been updated. (B-08695)
  • Backend components has been updated. (B-08696)

Additional release for QPR ProcessAnalyzer 2025.3 (build 9805) (released 2025-04-30)

New features

  • Navigation menu is now displaying dashboards from open dashboard's project or from selected Workspace project (earlier dashboards were shown from the selected model's project). (B-08673)

Fixed issues

  • Fixed issue where AI Agent made unnecessary queries when filtering dashboard, and also opening dashboard with lot of chart may have been slow. (D-14503)
  • When datatable columns were modified, queries to the data may have given "Invalid identifier" error. (D-14507)
  • Clustering analysis didn't work with object-centric models. (D-14486)
  • When a new groups is added, it's selected by default in the Manage Users dialog. Also clicking a selected group does not deselect it. (D-14491)
  • Deleting last group didn't remove the group from the list. (D-14504)

Additional release for QPR ProcessAnalyzer 2025.3 (build 9725) (released 2025-04-23)

There is an issue causing some dashboards having more than 50 charts to open slowly. The issue has been fixed in the next release by D-14503.

Fixed Issues

  • Fixed issue where system stopped responding after opening Scripts tab several times (error in logs: Timeout expired prior to obtaining a connection from the pool). (D-14506)
  • Fixed issue where the object-centric models object types tables didn't work without the timestamp column. (B-08683)
  • Snowflake cache tables are now created after initiating calculation is completed to improve performance. (D-14460)
  • Fixed issue in User Management where assigning role to project or adding user to group was not saved when there was a column filter. (D-14124)

QPR ProcessAnalyzer 2025.3 (build 9699) (released 2025-04-16)

New features presentation: QPR_ProcessAnalyzer_2025_3.pdf

There is a potentially serious issue that can cause the system to stop responding, when opening the Scripts tab in the Workspace. The issue has been fixed in the next release (build 9725) by D-14506.

Object-centric model simplification in the story B-08667 (object attributes can only have a single value) doesn't work with this release. The issue has been fixed in the next release (build 9725) by B-08683.

New features

  • Enhanced AI Agent with UI for editing prompt datasets, and added checkbox to include other charts in dashboard to prompt. (B-08641)
  • In object-centric models, object-to-object relations are now followed by traversing once all object types. (B-08606)
  • In object-centric models, event type and object type tables are not mandatory anymore, and common attributes can be specified in events and objects tables. (B-08663)
  • Object-centric models support simplified structure where object attributes can only have a single value. (B-08667)
  • "Object relation steps" setting can be empty to traverse all linked objects in the object-centric model. (B-08668)
  • Snowflake Event Types preset has been improved by adding suggestion of desired and undesired activities based on frequency of occurrence. (B-08656)
  • Added checkbox for disabling filtering for individual dimensions or columns. (B-08589)
  • Case and event attributes dropdown lists show number of unique values in Snowflake models (instead of attribute datatype as previously). (B-08316)
  • SAML authentication can now synchronize user groups from identity provider. (B-08612)
  • Groups can be deleted in user management. (B-08330)
  • Secrets can be defines as global that can be used by all projects. To set global secrets, SetSecret function works also in the generic context. (B-08599)
  • Snowflake Clustering analysis shows now number of event occurrences as features describing clusters. (B-08353)
  • Model validity check has been extended to find issues in the eventlog data for Snowflake case-centric models. (B-07910)

Fixed issues

  • Fixed a potential issue which could have leaked database connections and caused connection pool starvation. (D-14414)
  • Renewed self-signed certificate used by SAML 2.0 authentication with ten years of validity. (D-14424)
  • Improved CallWebService function to send request body when using DELETE method. (D-14488)
  • Login page now shows correct error message when there are serious system errors during login. (D-14480)
  • "Datatable contents (in-memory)" option now works also with Snowflake datatables. (D-14391)
  • Added maximum data size limitation to AI assistant to avoid error with large datasets. (D-14419)
  • Day of the Year/Week/Month/Quater selection didn't work with specific event time in in-memory chart. (D-14421)
  • KPI card now shows a scrollbar when content doesn't fit to the available space. (D-13428)
  • Workspace projects hierarchy tooltips didn't show special characters correctly. (D-14430)
  • BPMN editor crashed when creating filter from tasks giving following error: Cannot read properties of null (reading 'querySelector'). (D-14399)
  • Value expressions didn't work that are referred in dimension and containing aggregation. (D-13624)
  • Fixed issue where object-centric flowchart filter selection gave error when case-centric model was selected. (D-14408)
  • Fixed issue where query to non-existing model incorrectly returned "Sequence contains no elements". (D-14402)
  • Incorrect StringifiedValues in chart settings and expression filter rule caused UI to stuck. (D-14485)
  • Table column filter value list didn't show the null value label correctly. (D-13844)
  • "Visualize list items with colors" setting didn't work with the "Last Row Aggregates Over-limit Rows" setting. (D-14357)
  • Made sure that failed queries are not added to model filter cache. (D-14484)
  • Chart settings crashed when trying to use without model selected giving following error: Cannot read properties of undefined (reading 'injectValue'). (D-14395)
  • Fixed issue where chart settings opened on top of full screen BPMN editor. (D-14472)
  • Show details button in some error messages didn't have any effect when pressed. (D-14490)
  • Model validation message was incorrect for model where other datatable is Snowflake and other SQL Server. (D-14475)

Other improvements

  • Logging has been set to Warning level for Native App to avoid excessive number of log entries to Snowflake events table. (B-08687)
  • Datatable duplication is now synchronous in Snowflake until 30 seconds to avoid showing the created duplicate datatable with zero rows while the operation is still in progress. (B-08634)
  • Improved Snowflake cache table creation logic when there are multiple simultaneous queries. (B-08622)
  • Refactored SQL Server operations to improve robustness and avoid leaking database connections. (B-08649)
  • Frontend components have been updated. (B-08638)
  • Backend components have been updated. (B-08639)
  • Translations have been updated. (B-08640)

Additional release for QPR ProcessAnalyzer 2025.2 (build 9476) (released 2025-03-19)

Fixed issues

  • Fixed issue where charts axis labels had unnecessary line breaks on spaces. (D-14413)
  • Fixed issue where AI Agent and LLMComplete function didn't work in Native App. (D-14410)
  • Fixed translations for Workspace Scripts tab column filter for Status and Result columns. (D-14393)
  • Fixed issue where Volume Distribution of Flow Analyzed object type didn't work. (D-14390)
  • Removed reference to fonts.googleapis.com for stylesheets to avoid content-security-policy error. (D-14373)
  • Syncfusion dialog headers now show special characters correctly. (D-14407)
  • Object attribute filter gave null reference error when object type didn't exist in model. (D-14379)

QPR ProcessAnalyzer 2025.2 (build 9410) (released 2025-03-05)

New features presentation: QPR_ProcessAnalyzer_2025_2.pdf

Detection of models with incomplete datasource configuration has been improved, and now models where the event timestamp column type is string, are not anymore considered valid models. Earlier the string type of data was accepted and converted into dates when model was loaded (for in-memory models) or in SQL queries (in Snowflake models).

The following query can be run in the Expression Designer (with System administrator user) to list models where the events datatable timestamp column type is string:

Models.Where({
	let timestampColumn = _.Configuration?.TryGetValue("Datasource")?.TryGetValue("Events")?.TryGetValue("Columns")?.TryGetValue("Timestamp");
	return First(_.EventsDatatable?.Columns?.Where(Name==timestampColumn))?.Datatype == "String";
}).(Name + " (id: " + Id + ")");

For Snowflake dashboards, table actions to set dashboard variables now set the variable values in the stringified format instead of as raw values. This makes the variables set by table actions compatible with the linked settings which also use the stringified format by default for the Snowflake models.

New features

  • Introduced AI Agent which is a new dashboard component showing LLM generated answers based on user prompt and input data. (B-08556)
  • Added filtering by object attributes for object-centric models. Filters can be created from dialog or selecting items from charts. (B-08547)
  • In object-centric models, object-to-object relations are followed only forward and backward directions. Additionally, there are performance improvements for object-centric models. (B-08577)
  • Snowflake warehouse can be specified for each model allowing to use optimal type of warehouse for different sizes of models. (B-08610)
  • Home screen has been removed, and Workspace has new card layout and other UX improvements. (B-08541)
  • Added filter description field to filter properties dialog. (B-08451)
  • Removed event type existence check from charts, so that non-existing event types are allowed. (B-08585)
  • Snowflake Native App configuration data can be backed up to a snapshot and restored. (B-08591)
  • Improved detection of invalid models by adding CheckModelValidity function returning model validation errors. (B-08426)

Fixed issues

  • Prevented following error in Snowflake dashboards: Object "qprpa_dt_cache_..." already exists when creating a cache table. (D-14348)
  • In-memory chart "Cases filtered by attribute" didn't work for date type of attributes. (D-14387)
  • Fixed issue where each dashboard element resize made element width or height increase when chart margin was more than zero. (D-14361)
  • Chart related buttons are now hidden in datatable content preview. (D-14360)
  • Fixed issue where gateway based data import didn't write SAP errors into script log. (D-14351)
  • Snowflake chart gave error when "Last Row Aggregates Over-limit Rows" setting was used with list aggregation. (D-14352)
  • "Users" system report performance has been improved by adding EffectivePermissionTypesFor function. (D-14266)
  • Fixed issue where AI Assistant crashed when used with a model having ODBC or expression datasource. (D-14340)
  • Fixed issue where AI Assistant explaining charts crashed when applying to Label component. (D-14344)
  • Improved client-side import not to perform redundant datatable configuration data queries. (D-14347)
  • Model was incorrectly identified as in-memory model when datatables were missing. (D-14325)
  • Model default filter is now in use when model is opened from Workspace. (D-14376)

Other improvements

  • Changed Snowflake charts to store variable change actions in stringified format to make them compatible with linked settings. (B-08587)
  • Backend support for object-centric filter rules Disabled flag. (B-08611)
  • Implemented Entity Framework based database initialization and migrations. (B-08566)
  • Added support for following Entity Framework database providers: SQL Server (full), Snowflake Hybrid Tables (experimental), PostgreSQL (experimental). (B-08581)
  • Frontend components have been updated. (B-08597)
  • Backend components have been updated. (B-08596)
  • Translations have been updated for release 2025.2. (B-08607)

QPR ProcessAnalyzer 2025.1 (build 9124) (released 2025-01-23)

New features presentation: QPR_ProcessAnalyzer_2025_1.pdf

New features

  • B-08526: Variations and other lists can be visualized with colors, and "List separator" field is available for dimensions and columns.
  • B-08530: Charts can have a description text which are shown in a dialog when pressing the info button.
  • B-08546: Added LlmComplete function to access Snowflake Cortex large language models.
  • B-08439: Added project settings DatabaseNameInDataSource and SchemaNameInDataSource to define Snowflake database and schema.
  • B-08531: Projects can be created in expression language using CreateProject function.
  • B-08387: Added backend support for object-centric model filtering for object attributes.

Fixed issues

  • D-14339: Week numbers showed incorrect year for last dates in the end of year.
  • D-14323: Filtering with "Split data by filtering" dimension didn't work with exclude type of filter rules and when there were multiple filter rules.
  • D-14346: Fixed issue where manual activation using activation utility didn't work.
  • D-14326: Fixed issue where extra columns in objects table broke object-centric model.
  • D-14306: Fixed issue when there were both TimeStamp and ToTimeStamp event data columns.
  • D-14332: Flowchart event type and flow queries are now simultaneous which will improve performance.
  • D-14331: Flowchart lost selection when flowchart used linked variables with array values.
  • D-14299: Table text filters didn't work in Snowflake (starts with, ends with, contains).
  • D-14338: Model.Modify function generated model json configuration that frontend wasn't incompatible with.
  • D-14342: Flow step and Zoom settings control have same size and layout is aligned.
  • D-14316: Occurrence impact on case duration measure didn't work with certain in-memory models.
  • D-14327: AI Assistant had console error when pressing send button without text.
  • D-14341: AI Assistant overlapped with BPMN editor in fullscreen mode.
  • D-14321: Added error message for AI Assistant when trying to use it without model selected.

Other improvements

  • B-08391: Datatable access has been optimized improving performance for object-centric models.
  • B-08529: Added support for array type in stringified value format.
  • B-08527: Improved SAP connector error handling and removed assumption for fixed dll file names.
  • B-08552: Migrated rest of SQL queries into Entity Framework as preparation for storing configuration data to Snowflake hybrid tables.
  • B-08544: Frontend components have been updated.
  • B-08561: Updated translations for release 2025.1.

Old Releases

See older releases in QPR ProcessAnalyzer Release Archive