QPR ProcessAnalyzer Release Notes: Difference between revisions

From QPR ProcessAnalyzer Wiki
Jump to navigation Jump to search
No edit summary
 
(900 intermediate revisions by 8 users not shown)
Line 1: Line 1:
This page contains new features and fixed issues for each QPR ProcessAnalyzer release.
This page lists all new features and fixed issues for each QPR ProcessAnalyzer release.


== Next Release: QPR ProcessAnalyzer 2022.7 (planned release date 2022-11-15) ==
== Next Release: QPR ProcessAnalyzer 2025.3 (planned release date 2025-04-15)==
<div style="border:1px solid #dfdfdf;padding:0.5em 1em 0.5em 1em;background-color:#E7EAEC;margin:10px 0px 0px 10px;">
Starting from QPR ProcessAnalyzer 2022.7, to improve security expression language operations that modify data or connect to external datasources are prevented in dashboard custom expressions. The limitation is required, because when a dashboard is opened, its expressions are run with the user's permissions, and the user need to trust the expressions don't perform any unexpected operations, such as delete data. The full functionality of the expression language is available in the scripts and in the Expression Designer.
 
The following functions and operations are prevented in dashboards: SendEmail(), CallWebService(), ImportOdbc(), ImportOdbcSecure(), Model.DeletePermanently(), Model.Restore(), Model.TriggerNotifications(), Project.DeletePermanently(), Project.Restore(), Project.CreateDatatable(), Datatable.AddColumn(), Datatable.DeletePermanently(), Datatable.Import(), Datatable.Merge(), Datatable.RemoveColumns(), Datatable.RenameColumns(), Datatable.Truncate(), RecycleBin.DeletePermanently(), and call SQL script. Calling expression scripts is allowed, but in the script all previously mentioned operations are prevented.
 
Following SQL query can be executed in the QPR ProcessAnalyzer metadata database to reveal dashboards that potentially have prevented expressions:
SELECT * FROM [PA_UI_ELEMENT] WHERE [UIE_PROPERTIES] LIKE '%SendEmail(%' OR [UIE_PROPERTIES] LIKE '%CallWebService(%' OR [UIE_PROPERTIES] LIKE '%ImportOdbc(%' OR [UIE_PROPERTIES] LIKE '%ImportOdbcSecure(%' OR [UIE_PROPERTIES] LIKE '%DeletePermanently(%' OR [UIE_PROPERTIES] LIKE '%Restore(%' OR [UIE_PROPERTIES] LIKE '%TriggerNotifications(%' OR [UIE_PROPERTIES] LIKE '%CreateDatatable(%' OR [UIE_PROPERTIES] LIKE '%AddColumn(%' OR [UIE_PROPERTIES] LIKE '%DeletePermanently(%' OR [UIE_PROPERTIES] LIKE '%Import(%' OR [UIE_PROPERTIES] LIKE '%Merge(%' OR [UIE_PROPERTIES] LIKE '%RemoveColumns(%' OR [UIE_PROPERTIES] LIKE '%RenameColumns(%'
</div>


'''Features:'''
[[Next_Release_Content|See plan for next release features and fixes]]
* B-07378: Frontend support for the query "limited mode".
* B-07287: System views and most important presets for Snowflake.
* B-06431: Datatables support for database views in the datasource.
* B-07266: Security: "limited mode" to prevent data modifications and external calls from dashboard expressions.
* B-07273: WithRowNumberColumn, WithRankColumn, WithDenseRankColumn support for descending sorting.
* B-07363: SQL LIKE function support for escape character.
* B-07382: Support for empty strings and nulls in event type names in dataframe processing.
* B-07385: Align token lifetime with PA's SESSION_MAXIMUM_DURATION.
* B-07421: Remove files from release package.


'''Fixed issues:'''
== Latest release: Additional release for QPR ProcessAnalyzer 2025.2 (build 9476) (released 2025-03-19)==
* D-11630: Drag and drop from chart settings to main header was working incorrectly for filter and root cause rules.
* D-12455: Moving a chart filter from one chart to another created a root cause analysis filter.
* D-12266: Root causes analysis showed incorrect results when certain combination of filters.
* D-12525: Numerical values in Excel export in data grid was formatted incorrectly.
* D-12534: Restoring item from recycle bin changed project from Bin to previous project.
* D-12529: Measure specific datalabel mapping did not work correctly when also mapped to Y-axis.
* D-12532: Multi-selection options caused layout issue for Chart setting.
* D-12541: Layout issue for Polish in multiselect list search dialog.
* D-11277: Increase/decrease Icons were missing in the dimension sorting for Mac.
* D-12552: Uncaught Error: Diagram.selectCollection given something that is not a Part: null.
* D-12567: Tooltip incorrectly showed for label component containing only spaces.
* D-12438: Operation was cancelled because it was replaced by a new operation.
* D-12551: Some expressions didn't work as calculated case/event attributes.
* D-11720: Chart buttons were not visible in Apple Safari and iPad.
* D-12544: On-screen settings "options" parameter did not work.
* D-12528: Multi-unit time unit selection appeared where it's not applicable.
* D-12583: Error message should be provided for invalid settings input  than just  display JS errors.
* D-12599: Tooltips didn't show correct measures/dimensions when "Show in tooltip" mappings are used.
* D-12561: Chart settings content was incorrectly drawn outside of the chart dialog.
* D-12568: Reload UI sometimes crashed chart having multiselect on-screen settings.
* D-12572: Main header toolbar lost when refresh maximized PA chart.
* D-12612: Drop Unused Filters After setting incorrectly allowed zero seconds.
* D-12533: Error message keeped blinking in Analysis view.
* D-12608: User could not select or add new case attribute when current select attribute doesn't exist.
* D-12451: Prevented deleting running script.
* D-12516: Windows event viewer warning: Failed to gracefully shutdown application.
* D-12523: Business calendar performance - part 2.
* D-12538: Column with same name could be added multiple times to datatable using expression language.
* D-12582: Improved EMS mutex code to support multiple PA service in one server.
* D-12624: Synchronize new (empty) data table generated failed queries in Snowflake.
* D-12622: Advanced setting page reserved room for the expression editor frame that did not exist.
* D-11295: In on-screen settings, some UI controls were vertically misaligned.
* D-11625: The heights of the parameter option menu in the clustering tab was not well aligned.
* D-12103: Small dropdown list layout issue.
* D-12633: Align issue for Column related Advanced settings.
* D-12505: Search dialog didn't escape % and _ characters correctly in dataframe processing.
* D-12645: Tabs in expression settings dialog were partly hidden when dialog is narrow.


== Latest Release: Additional release for QPR ProcessAnalyzer 2022.6 (build 1262) (released 2022-10-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)


'''Fixed issues:'''
==QPR ProcessAnalyzer 2025.2 (build 9410) (released 2025-03-05)==
* D-12586: Scripts using client-side import with older version of QPR ScriptLauncher didn't work.
* D-12597: QPR ScriptLauncher was not sending heartbeats during import, which might have stopped the script prematurely.
* D-12589: Pressing Add measure/Add dimension button crashed chart.
* D-12558: In chart settings, setting expression to "(none)" gave error.


== QPR ProcessAnalyzer 2022.6 (build 1259) (released 2022-10-05) ==
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 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 has the following issues which will be fixed in a hotfix (to be released soon):
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).
* Older QPR ScriptLauncher versions (<=2022.5) don't work with this release, when using the client side import. As a workaround, if updating to QPR ProcessAnalyzer 2022.6, also update QPR ScriptLauncher. Hotfix will be released to recover the backwards compatibility.
* When pressing the Add measure/Add dimension button in the chart settings, the chart settings dialog stop working. The workaround is to add the new measure/dimension to the bottom and use the Move up button to get the desired order of measures/dimensions. This issue will also be fixed in the hotfix.
* ETL scripts run using QPR ScriptLauncher in the client side import mode don't work if there is an import operation taking more than 10 minutes. This is because during the import, QPR ScriptLauncher erroneusly doesn't send the heartbeats to QPR ProcessAnalyzer Server, which then stops the script, believing QPR ScriptLauncher has stopped working. This issue occurs in all QPR ScriptLauncher versions. This issue will be fixed to QPR ProcessAnalyzer Server in the hotfix (i.e., no need to update ScriptLauncher).
</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 Server and QPR ScriptLauncher use now .NET 6 (instead of legacy .NET Framework). The hardware requirements are same, but the .NET 6 Runtime needs to be installed to machines running QPR ProcessAnalyzer Server and QPR ScriptLauncher. See more on the [[Updating_QPR_ProcessAnalyzer_Server|updating QPR ProcessAnalyzer]] instructions. Note that the IIS deployment script is not available anymore. QPR ScriptLauncher update is not mandatory (i.e., .Net Framework based QPR ScriptLauncher works with the .Net 6 based QPR ProcessAnalyzer Server), but update is recommended due to bug fixes made to the QPR ScriptLauncher.
</div>
 
<div style="border:1px solid #dfdfdf;padding:0.5em 1em 0.5em 1em;background-color:#E7EAEC;margin:10px 0px 0px 10px;">
Following legacy analyses have been removed: Flowchart (analysis number: 0), Variations (8), Duration (9), Profiling (10), and Flows (13). This functionality may have been used in the SQL scripts. Note that this change doesn't affect the functionality available in the QPR ProcessAnalyzer web UI.
 
Following script can be run in the [[Navigation_Menu#Expression_Designer|Expression Designer]] to show whether there are scripts in the system that likely use the removed analyses:
<pre>
<pre>
let removedAnalyses = Flatten([0,8,9,10,13].(["'AnalysisType','" + _ + "')", "'AnalysisType', '" + _ + "')"]));
Models.Where({
OrderByDescending(Flatten(Projects.Scripts).Where({
let timestampColumn = _.Configuration?.TryGetValue("Datasource")?.TryGetValue("Events")?.TryGetValue("Columns")?.TryGetValue("Timestamp");
  let scr = _;Sum(removedAnalyses.{let num=_;scr.code?.Contains(num)})>0;
return First(_.EventsDatatable?.Columns?.Where(Name==timestampColumn))?.Datatype == "String";
}),LastRunStart).(Project.Name + ": " + name + " (last run: " + (LastRunStart ?? "N/A") + ")");
}).(Name + " (id: " + Id + ")");
</pre>
</pre>
</div>
</div>


'''Features:'''
* B-06524: Search dialog for finding and selecting multi-select items.
* B-07173: CSV file importing supports date columns for row matching.
* B-07277: Query timeout for dashboards.
* B-06921: Expression language: For loop.
* B-07307: Expression language: DataTable.Synchronize().
* B-07288: SQL expression functions ToLower and ToUpper.
* B-07335: Expression language: Datatable.NameInDataSource-property.
* B-07336: ScriptLauncher client side import heartbeat.
* B-07176: Dataframe queries run in SQL Server are stopped when operation is cancelled.
* B-06986: Support for AggregateOthers setting in dataframe processing.
* B-07342: Improved validation for dashboard import.
* B-07267: Support for Comparison parameter in SQLExpression filter rule.
* B-06533: Timeout to /api/expression/query.
* B-07208: Remove deprecated analyses (part 2).
* B-07295: Frontend components update.
* B-07290: Translation updates for release 2022.6.
* B-07326: .NET 6 migration merge.
* B-07398: Improvements to PA service log writing during client-side import.
'''Fixed issues:'''
* D-12098: Attribute function worked incorrectly inside Switch statement.
* D-12491: Case filter was not shown in header if case id column is integer.
* D-12535: Variables disappeared when going to other dashboard.
* D-12480: ScriptLauncher client side import stucked without error.
* D-12501: Snowflake model gave error: ERROR [42P13] Invalid argument types for function 'SUM': (BOOLEAN).
* D-12112: Added validation for allowed values of standard context variables.
* D-12470: Truncating datatable made it unreadable.
* D-12383: Chart settings export options didn't change when visualization is changed.
* D-11424: Multiselect dropdown lists were shown partly out of screen in smaller screens.
* D-12270: Old version Big data chart didn't show correct error message.
* D-12471: Expression query windowing didn't take Criteria parameter into account.
* D-12461: Several datagrid column menus were incorrectly visible at the same time.
* D-12430: Dashboard gave error: Uncaught SyntaxError occurred: Invalid or unexpected token  at new Function (<anonymous>).
* D-12436: When query specific mapping was used, variations indicate flow that didn't exist in flows query.
* D-12432: SqlExpressionValue filter rule using Datediff function didn't work.
* D-12393: Expression generated with "Show Expression" in query designer did not support column role mappings.
* D-11272: Measure/Dimension/Column settings icon was changed to be more understandable.
* D-12416: Some UI strings were not translated properly.
* D-12153: Removed logging when defining functions.
* D-12485: Business calendar performance issue - part 1.
* D-12537: Variables didn't work in PA opening url when SAML is in use.
* D-12506: Root Analysis gave error "Operations that change non-concurrent collections must have exclude access".
== QPR ProcessAnalyzer 2022.5 (build 1179) (released 2022-08-24) ==
<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;">
Datatables can be stored to a separate SQL Server database, i.e., the datatables are not anymore created to the QPR ProcessAnalyzer metadata database. This improves performance as data intensive operations are isolated from metadata operations. To take the feature into use, create a new database in SQL Server and set the [[PA_Configuration_database_table#General_Settings|SqlServerConnectionString]] setting in the configuration table to connect to that database. When the configuration has been made, all new datatables are created to the datatables database. Pre-existing datatables are still located in the metadata database. To get the pre-existing datatables to the new database, they need to be recreated, which can be done by creating a duplicate of the datatable. Support for the metadata database stored datatables is continued, but deprecating the support in future will be considered.
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>


<div style="border:1px solid #dfdfdf;padding:0.5em 1em 0.5em 1em;background-color:#E7EAEC;margin:10px 0px 0px 10px;">
===New features===
Following legacy analyses have been removed: Variations Chart (analysis number: 1), Event Types Chart (4), Models (17), Model Report (21), Project Report (22), Datatable Report (23), and Script Report (24). To replace these analyses, use the corresponding native functionality in the expression language.
*Introduced [[AI Agent]] which is a new dashboard component showing LLM generated answers based on user prompt and input data. (B-08556)
*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)
*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 [[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)
*Home screen has been removed, and [[QPR_ProcessAnalyzer_Project_Workspace|Workspace]] has new card layout and other UX improvements. (B-08541)
* Added [[Filtering_in_QPR_ProcessAnalyzer#Saving_filters|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 [[QPR_ProcessAnalyzer_Native_App_in_Snowflake#Backup_configuration_data|backed up to a snapshot and restored]]. (B-08591)
*Improved detection of invalid models by adding [[QPR_ProcessAnalyzer_Objects_in_Expression_Language#CheckModelValidity|CheckModelValidity]] function returning model validation errors. (B-08426)


Following script can be run in the [[Navigation_Menu#Expression_Designer|Expression Designer]] to show whether there are scripts in the system that likely use the removed analyses:
===Fixed issues===
<pre>
*Prevented following error in Snowflake dashboards: Object "qprpa_dt_cache_..." already exists when creating a cache table. (D-14348)
let removedAnalyses = Flatten([1,4,17,21,22,23,24].(["'AnalysisType','" + _ + "')", "'AnalysisType', '" + _ + "')"]));
*In-memory chart "Cases filtered by attribute" didn't work for date type of attributes. (D-14387)
OrderByDescending(Flatten(Projects.Scripts).Where({
*Fixed issue where each dashboard element resize made element width or height increase when chart margin was more than zero. (D-14361)
  let scr = _;Sum(removedAnalyses.{let num=_;scr.code?.Contains(num)})>0;
*Chart related buttons are now hidden in datatable content preview. (D-14360)
}),LastRunStart).(Project.Name + ": " + name + " (last run: " + (LastRunStart ?? "N/A") + ")");
*Fixed issue where gateway based data import didn't write SAP errors into script log. (D-14351)
</pre>
* Snowflake chart gave error when "Last Row Aggregates Over-limit Rows" setting was used with list aggregation. (D-14352)
</div>
*"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)


<div style="border:1px solid #dfdfdf;padding:0.5em 1em 0.5em 1em;background-color:#E7EAEC;margin:10px 0px 0px 10px;">
===Other improvements===
Security hardening instructions to set the [[QPR_ProcessAnalyzer_Security_Hardening#Add_Security_Related_HTTP_Headers_in_IIS|Content-Security-Policy]] http header, has changed. In addition, the '''img-src''' directive includes also '''blob:''' urls (this allows to export Highcharts charts).
*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)
</div>
*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)==
* B-06898: In Snowflake models, events can be filtered based on event attribute values.
* B-06996: In Snowflake models, event type mapping can be defined for each chart.
* B-07069: Datatables can be stored to separate SQL Server database to reduce load from metadata database.
* B-06525: In dashboard editor, the background alignment grid is now better visible with any background color.
* B-06844: In script editor, the script status is automatic refreshed.
* B-06643: Links in header changed, e.g., the eLearning library link.
* B-06981: Chart settings remember the last opened tab, and the settings are always for the active chart.
* B-06467: Added SelectDistinct function for dataframes for selecting distinct rows.
* B-06933: Added "Like" function to SQL expressions for string pattern matching.
* B-06543: Generic Eval function for evaluating an expression given in a string.
* B-06944: Truncate function to efficiently delete all rows from datatable.
* B-07207: Access to properties CreatedBy, LastModifiedBy and LastImportBy for datatables using expression language.
* B-06906: Added Configuration property to Model and Datatable objects to get configuration json as dictionary.
* B-07170: Added ScriptByName and ModelByName functions for project objects and changed behavior for DatatableByName function.
* B-06919: Expression language: Increment (++) and decrement (--) operators.
* B-06829: UI remembers the user's last selected model in next login.
* B-07000: Workspace Models and Scripts tab auto-refresh has been optimized for performance.
* B-06456: Changed icons in chart Visualization selection.
* B-07175: Removed deprecated analyses.
* B-07205: Replaced Scripts analysis (24) with expression language property.
* B-06813: Pacm file support case and event attribute data types.
* B-06907: Define start row for the returned data in dataframe processing.
* B-06879: NumberPrecision and DatetimeTruncation support for dataframe queries Values columns.
* B-06998: Implemented referrer policy HTTP header.
* B-06936: Prevented using outdated caches in dataframe processing.
* B-07066: Snowflake queries has been optimized by removing unnecessary metadata queries.
* B-06900: Backend support for expression filter rules to dataframe processing.
* B-06987: Add caching for Project objects.
* B-06910: Frontend components have been updated.
* B-07117: Translation updates for release 2022.5.


'''Fixed issues:'''
New features presentation: [https://files.qpr.com/releases/QPR_ProcessAnalyzer_2025_1.pdf QPR_ProcessAnalyzer_2025_1.pdf]
* D-12075: DashboardFilter variable rules were applied in incorrect order.
* D-12351: Pivot table columns headers had unnecessary prefix when there are multiple measures and no dimensions in columns.
* D-11946: Content security policy violation occurred when exporting Highcharts charts as images.
* D-12064: Chart pending query was incorrectly cancelled when going to and from Add component mode.
* D-11606: Scripts and Projects tab slightly covered the top borderline of workspace datagrid and entire grid was not visible.
* D-12389: When using AggregateFrom, filters were always applied on the completely unfiltered set of events even if a "top level" filter existed also.
* D-12324: The visibility stepper counter didn't follow changed variations.
* D-12373: CSV import may have failed when there are line breaks in strings.
* D-12045: Column filter was not cleared when user switched to other view in Recycle bin.
* D-11590: Two context menus were visible at the same time.
* D-11131: It was not possible to move data grid column Custom filter dialog.
* D-11401: For datatables filter popup menu was opened outside visible dialog and required more scrolling to be seen.
* D-11650: In Workspace, sub context menu for target projects to move items didn't open with latest Syncfusion.
* D-11651: Multiselect list lost some items when using search.
* D-11657: Combobox autofill was broken.
* D-11639: User's default model did not behave as it should.
* D-12085: Filter rules in header were lost when pressing F5.
* D-12142: KPI card value is now visible for non-numeric values.
* D-12105: Nullable object must have value error displayed  when trying to open Enhanced BPMN dashboard.
* D-12157: Root causes analysis in the Conformance Root Causes Analysis didn't work.
* D-12067: Some tooltips, e.g., in BPMN button, didn't disappear at all.
* D-12069: User got querying variation error when first time created big data flowchart.
* D-12177: In models list, search and cancel icons were vertically misaligned.
* D-12116: Add and delete filter rule from Create Filter dialogue did not work.
* D-11445: When using very large value for border corner roundness, chart settings were not visible.
* D-12166: External content presentation object was broken due to too strict content security policy.
* D-12151: KPI card incorrectly showed error "Measure data type needs to be numeric" when numerical measure has null value.
* D-12150: Event data column named "Case ID" mapping to both Case ID and Event Type caused error "An item with the same key has already been added".
* D-12325: Workspace root level had too many New items in context menu.
* D-12326: Wrong menu displayed for sub projects if first click create new option for root level from project tree view.
* D-12000: Script log system report default time interval was too long making report very slow.
* D-12119: Uncaught (in promise) TypeError occured: Cannot set properties of undefined (setting 'isAnimate').
* D-12293: "Cannot read properties of undefined (reading 'id') at o.checkTabNames" error occured.
* D-12294: Term ID was incorrectly translated.
* D-12353: Dialogs broke when there are quotation marks in header.
* D-11978: Soft deleted project could incorrectly be queried by admins.
* D-11982: Null reference error when filter contained attribute value with null.
* D-11706: Deadlocks during tests in Concurrency test category.
* D-11893: User.Globalpermissions returned incorrectly Hashset for inactive users (should return array).
* D-11892: Project-specific user role could be assigned without project id (as global).
* D-12114: In-memory core gave now and then error: The given key was not present in the dictionary.
* D-12138: Timespan function incorrectly assumed 32-bit integers.
* D-11548: Removed setting of default model and view.
* D-12230: Column mappings didn't work for some dataframe processing operations.
* D-12100: Giving project name (possibly id too) for DataFrame.Persist did not work when persisting a SqlDataFrame.
* D-12099: Querying SqlDataFrame for an empty table returned an empty in-memory DataFrame.
* D-12301: Duplicating local datatable didn't create datatable in sqlserver.
* D-12097: Error "Unable to join two tables without specified binding columns", when dimensioning events by two case attributes.
* D-11862: Filter with integer stringifiedvalues raised an exception when running in in-memory.
* D-12087: Error: Ambiguous column name 'CaseId'. The column 'CaseId' was specified multiple times for 'df_5'.
* D-12297: The datediff function resulted in an overflow when using high precision in SQL Server.
* D-12288: Error in querying event type measures: An item with the same key has already been added.
* D-12329: Filters using boolean attributes didn't work in SQL Server/Snowflake.
* D-12054: Backslashes in string literals gave null reference error in dataframe processing.
* D-12065: Case attribute filtering with column mapped to case id didn't work in filters.
* D-12070: PA server incorrectly modified dashboard json.
* D-12046: Expression language DateTime.Ticks was always UTC time.
* D-12102: SQL Expression: Variable-function did not work if the variable has upper-case letters.
* D-11950: Using list aggregation with different orderings in a single select did not work.
* D-12345: Mapping columns and using Columns function caused error 'invalid identifier'.
* D-12082: SourceData definition to events effected case attributes.
* D-12348: DateDiff did not support milliseconds in-memory.
* D-12374: Overflow error occurred when calculating standard deviation for case durations in large model.


== QPR ProcessAnalyzer 2022.4 (build 1001) (released 2022-05-31) ==
===New features===
<div style="border:1px solid #dfdfdf;padding:0.5em 1em 0.5em 1em;background-color:#E7EAEC;margin:10px 0px 0px 10px;">
*B-08526: Variations and other lists can be visualized with colors, and "List separator" field is available for dimensions and columns.
Expression language has new function [[Generic_Functions_in_QPR_ProcessAnalyzer#Data_source_connectors|CallWebService]] for extracting data from web API's and make generic http calls. This function replaces the ReadWebService function which was a pre-production version of the same functionality. The ReadWebService function is thus now deprecated and it will be removed in future.  
*B-08530: Charts can have a [[QPR_ProcessAnalyzer_Chart#Visual_Settings|description text]] which are shown in a dialog when pressing the info button.
</div>
*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]].


'''Features:'''
===Fixed issues===
* B-06864: New dashboard component: Big data flowchart that calculates in Snowflake.
* D-14339: Week numbers showed incorrect year for last dates in the end of year.
* B-06434: Flowchart has been improved by adding e.g., presets, tabs and title (both in in-memory and big data flowchart).
*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.
* B-06515: New setting for chart to prevent applying chart filter to other charts ([[QPR_ProcessAnalyzer_Chart#Filtering_Settings|Apply chart filters to dashboard]]).
*D-14346: Fixed issue where manual activation using activation utility didn't work.
* B-06450: Log in screen visual layout has been renewed.
* D-14326: Fixed issue where extra columns in objects table broke object-centric model.
* B-06876: User management system reports including used license for each user.
*D-14306: Fixed issue when there were both TimeStamp and ToTimeStamp event data columns.
* B-05981: Expression language function CallWebService for web api and http calls.
* D-14332: Flowchart event type and flow queries are now simultaneous which will improve performance.
* B-06789: Datetime truncation function support for half-year and millisecond time units.
*D-14331: Flowchart lost selection when flowchart used linked variables with array values.
* B-06497: SqlExpression function for getting string length.
*D-14299: Table text filters didn't work in Snowflake (starts with, ends with, contains).
* B-06581: SqlExpression function for trimming white spaces from strings (Trim).
*D-14338: Model.Modify function generated model json configuration that frontend wasn't incompatible with.
* B-06630: SqlExpression function to add duration to date (DateAdd).
*D-14342: Flow step and Zoom settings control have same size and layout is aligned.
* B-06631: SqlExpression function for getting a substring of a string (Substring).
*D-14316: Occurrence impact on case duration measure didn't work with certain in-memory models.
* B-06860: SqlDataFrame function to remove columns (RemoveColumns).
*D-14327: AI Assistant had console error when pressing send button without text.
* B-06832: When error occurs in script run in client side, error message is shown in script log.
*D-14341: AI Assistant overlapped with BPMN editor in fullscreen mode.
* B-06818: Russian language has been removed from UI.
*D-14321: Added error message for AI Assistant when trying to use it without model selected.
* B-06445: Datatable row counts are cached to avoid querying the information from Snowflake.
* B-06843: Backend support for filter rule to filter events by event attribute values.
* B-06871: Translation updates for 2022.4 release.


'''Fixed issues:'''
===Other improvements===
* D-11802: When closing fullscreen, sometimes main header stayed invisible.
* B-08391: Datatable access has been optimized improving performance for object-centric models.
* D-11947: Dynamic dropdown lists didn't open in first click in certain situations in Firefox.
*B-08529: Added support for array type in stringified value format.
* D-11783: Flowchart start/end flow measure label showed in incorrect place when there are only one starting/ending flow.
*B-08527: Improved SAP connector error handling and removed assumption for fixed dll file names.
* D-11796: Data export in pivot table didn't work.
*B-08552: Migrated rest of SQL queries into Entity Framework as preparation for storing configuration data to Snowflake hybrid tables.
* D-11530: When model is moved to other project, linked datatables are now not moved.
*B-08544: Frontend components have been updated.
* D-11714: Scripts list hover buttons didn't work in Firefox.
*B-08561: Updated translations for release 2025.1.
* D-11500: Duplicated name check for workspace items was missing.
* D-11782: Some in-memory chart expressions gave parse exception: token recognition error at: '\n'.
* D-11871: Importing large number of rows to Snowflake could be very slow, as it incorrectly used SQL insert.
* D-11781: Persisting more complicated SqlDataFrames did not work.
* D-11849: Script log was not generated when running tasks in parallel using AsParallel function.
* D-11789: Changing expression to "none" crashed UI, and line breaks were incorrectly removed in multiline text fields.
* D-11817: Error missing when trying to run --#CallWebService with ExecuteInClientSide=1 in web UI.
* D-11716: Deleted models were incorrectly listed in main header.
* D-11912: User management dialog showed global roles incorrectly after they have been changed.
* D-11940: Datatable rows column didn't show all when there is over 1 billion rows.
* D-11596: Event count calculated incorrectly using AggregateFrom events.
* D-11588: EventTypes root dimensioned by case count with AggregateFrom did not work.
* D-11778: Variations dimensioned by flow count gave error in SQLDataFrames.
* D-11788: User roles did not work in expression language.
* D-11815: Variation case count showed as too large when there was other value joining events.
* D-11818: Flow case count calculated incorrectly in dataframes.
* D-11794: Switch statement returned null reference exception when condition expression evaluates to null.
* D-11820: Variation duration calculation gave error in dataframes.
* D-11867: Variations were not deterministic if there were events with same timestamps.
* D-11891: Snowflake data import could fail in SQL insert mode due to too many statements.
* D-11848: Configuration needed to be defined as valid JSON 'null'.
* D-11784: Memorycache root gave errors when measures were used.
* D-11913: Root causes icon was missing on the header.
* D-11938: Design model was incorrectly not stored to the dashboard.
* D-11939: Filter rule dialog showed incorrectly case/event attribute datatype in eventlog mode.
* D-12004: Adjustment expression and Custom aggregation expression could not be emptied.
* D-12034: All filter rules were not visible in main header when there are lot of them.
* D-11821: Flow count of variation is incorrectly null for some variations.
* D-11834: Error when dimensioning flows by case count in dataframes.


== QPR ProcessAnalyzer 2022.3 (build 925) (released 2022-04-20) ==
==QPR ProcessAnalyzer 2024.8 (build 8937) (released 2024-12-11)==
<div style="border:1px solid #dfdfdf;padding:0.5em 1em 0.5em 1em;background-color:#E7EAEC;margin:10px 0px 0px 10px;">
In Workspace, dashboards and scripts cannot be created anymore to the Workspace topmost level. All existing dashboards and scripts in the topmost level are moved to a new project named System, where administrators can access them. If dashboards and scripts are moved away from the Workspace level before the QPR ProcessAnalyzer 2022.3 update, the System project is not created.
</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;">
In QPR ProcessAnalyzer 2022.3, the legacy ''SAP NetWeaver RFC'' library for SAP connections has been removed, and now SAP connections use the new ''SAP NetWeaver RFC'' library. Also the related SapProvider setting in the SAP import command is not anymore in use.
Known issue: There may be old invalid models which don't work with QPR ProcessAnalyzer 2024.8. The following query can be run in the [[Navigation_Menu#Expression_Designer|Expression Designer]] (with System administrator user) to list such models:
<pre>
Models.Where(!IsOcelModel && Configuration.TryGetValue("DataSource").TryGetValue("Events").TryGetValue("DataSourceType") == _EMPTY).(Project.Name + ": " + Name + " (" + Id + ")")
</pre>
Those models don't have a valid datasource defined and thus they are likely not is use. Easiest solution is to delete those models with following command:
<pre>
ModelById(<id>).DeletePermanently()
</pre>
</div>
</div>


'''Features:'''
* B-06310: [[Big_Data_Chart|Big data chart]] to perform calculation in Snowflake.
* B-06654: Dashboards, models, datatables and scripts are removed from Workspace level.
* B-05763: Possibility to set SAML service provider signing certificate.
* B-06765: Remove legacy library for the SAP data connector.
* B-06812: Make it possible to overwrite existing SqlDataFrame columns.
* B-06554: Support for IN operator in SQL expressions.
* B-06779: SQLDataFrame IN function support for null values.
* B-06553: Round and TruncateDate functions for SQL expressions.
* B-06776: Support for NumberPrecision and DatetimeTruncation parameters in dataframe processing dimensions.
* B-06759: Migrate root level dashboards and scripts to new project.
* B-06569: Frontend components have been updated.
* B-06794: Translation updates for 2022.3 release.
'''Fixed issues:'''
* D-11642: Sometimes dashboard charts showed loading animation forever.
* D-11708: Text filters did not work correctly in dashboard tables.
* D-11565: Delete icon showed incorrectly in dashboard properties and session variables.
* D-11537: Script run failed to session expiration error when running in ScriptLauncher and try to perform client side operation after session expiration.
* D-11196: Table column filtering context menu didn't show when table was in full screen.
* D-11591: It was not possible to import csv file having numbers with exponential notation.
* D-11543: Sometimes it was not possible to scroll to last row for workspace tabs.
* D-11338: When filtering in the flowchart, the include/exclude selection didn't show when flowchart was in full screen.
* D-11605: Implemented datatables metadata caching, as opening models list was too slow in some environments.
* D-11564: "Given key was not present in the dictionary" when all mandatory but useless values were not defined in script launcher config file.
* D-11572: BPMN model tooltips was hidden behind the bpmn editor.
* D-11586: KPI Card crashed when showing string values.
* D-11599: KPI card could not display very large values properly.
* D-11496: UI didn't work well in situation where there were no models available for user.
* D-11575: Column/bars were not visible for exported polar charts.
* D-11593: When creating user, error message about exists username didn't remind about inactive users.
* D-11600: Settings button was not visible in Process Discovery when KPI Card was used.
* D-11570: Slice into dimension didn't work for Root causes for Attributes preset.
* D-11589: Context menu that was not related to the recycle bin was incorrectly shown in Workspace.
* D-11622: Expression filter rules with different periods (DateGranularity) were handled incorrectly.
* D-11465: Add tooltip to effective permission table in Manage users dialog.
* D-11623: Tabs in model properties dialog didn't show correctly in narrow screens.
* D-11638: Changing include/exclude state of existing filter rule showed incorrect filter rule parameter selections.
* D-11654: Two popup menus sometimes incorrectly shown for Design Model Selector.
* D-11517: In Workspace first column "Name" was not visible if window was not wide enough to show all columns.
* D-11619: Query Designer and chart multiline text boxes didn't accept non-breaking spaces.
* D-11645: Column data type was missing in the setting of Datatable view.
* D-11554: Dataframe expressions were incorrectly executed by default in-memory.
* D-11585: Error text was misleading when SAP dll missing during import in server.
* D-11583: Error about Maximum Rows message was not displayed in analysis result but instead {} was displayed.
* D-11610: Event count showed incorrectly when including cases based on event types (in dataframe processing).
* D-11549: Column mappings script did not work with specific model.
* D-11634: Dashboard Properties/Variables had the wrong checkbox icon.
== QPR ProcessAnalyzer 2022.2 (build 854) (released 2022-03-09) ==
<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;">
SAML 2.0 authentication has been renewed, changing related urls as follows: SAML authentication is initiated from path '''/saml2''' (previously it was /api/saml). In addition, the redirect back url is now '''/saml2/acs''' (previously it was /api/samlsignin). These changes need to be made to the identity provider and taken into use during the QPR ProcessAnalyzer 2022.2 update. In addition, the redirection to the SAML authentication initialization path, that has possibly been set to IIS, need to be changed.
SQL Server database compatibility level needs to be at least 130 (corresponding to SQL Server 2016) for databases used by QPR ProcessAnalyzer. When using a supported version of SQL Server, the database compatibility level might still be unsupported, so please check to used compatibility level. It's recommended to set the highest available compatibility level. More information: https://learn.microsoft.com/en-us/sql/relational-databases/databases/view-or-change-the-compatibility-level-of-a-database.
</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;">
[[SQL_Scripting_Commands#--.23ImportSapQuery|SAP connector]] has been changed to use the newer SAP NetWeaver RFC Library provided by SAP. Due to this change, additional installation steps for [[QPR_ProcessAnalyzer_ScriptLauncher#Installing%20SAP%20NetWeaver%20RFC%20Library|QPR ScriptLauncher]] and [[Install_QPR_ProcessAnalyzer_Server_Manually#Installing%20SAP%20NetWeaver%20RFC%20Library|QPR ProcessAnalyzer Server]] need to be done. The changes only affect environments where the SAP connector is enabled.
[[External_Content|External content]] component doesn't allow to embed websites from other origins than the QPR ProcessAnalyzer server. This is due to a change in the Content security policy (CSP) HTTP header (more information: [[QPR_ProcessAnalyzer_Security_Hardening#Added_HTTP_Headers|Security hardening]]). The content security policy HTTP header can be modified in the [[Installing_QPR_ProcessAnalyzer_Server#Server_settings_file_(appsettings.json)|appsettings.json file]]. More information about the ''same-origin policy'': https://developer.mozilla.org/en-US/docs/Web/Security/Same-origin_policy.
</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 WCF API has been removed from QPR ProcessAnalyzer 2022.2. Before updating, 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 used API can be distinguished from the url: if it contains "/MainService.svc" the connection is to the WCF API and changes are required. Note also that if QPR ProcessAnalyzer Excel client has still been in use, from now on it will not work.
QPR ProcessAnalyzer now uses the Microsoft.Data.SqlClient library for SQL server connection instead of the System.Data.SqlClient library, and there are slight differences with the connection string parameter default values. If using a self-signed certificate in the SQL Server with the encrypted connection, it might require to add '''TrustServerCertificate=True''' to the connection string, so that QPR ProcessAnalyzer will trust the self-signed certificate and allow the database connection.
</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;">
Due to the WCF removal, [[Installing QPR ProcessAnalyzer Server|installing]] QPR ProcessAnalyzer Server is now easier, as there is only one web.config file (i.e., no separate web.config files for http and https). Note also that the contents of the web.config file is changed, so settings contained by the file need to be migrated manually.
Project ''Designer'' and ''Administrator'' roles can now create models and datatables in the project. Earlier these operations required the global ''Create models'' role. This global role is now renamed to ''Create projects'', describing its new purpose.
</div>
</div>


<div style="border:1px solid #dfdfdf;padding:0.5em 1em 0.5em 1em;background-color:#E7EAEC;margin:10px 0px 0px 10px;">
===Features===
[[SQL Scripting Commands#--.23ImportSalesforceQuery|Salesforce connector]] has been changed to use Salesforce REST API, and the API version is changed from 38 to 54. Due to the change, there might be slight differences in the Salesforce connector behavior.
*B-08395: Added native [[Object-Centric_Flowchart|object-centric flowchart]] showing predefined measures.
</div>
*B-08396: Object attributes are now available as [[Object-centric_Process_Mining_Model#Object-centric_perspectives|case attributes in object-centric perspective]].
*B-08449: Snowflake Native App supports [[QPR_ProcessAnalyzer_Project_Workspace#Snowflake_Native_App|project-specific database, schema, and warehouse]].
*B-08432: Decision intelligence event log [[Create_Predicted_Eventlog|prediction]] and [[Create_Simulated_Eventlog|simulation]] has been integrated into QPR ProcessAnalyzer.
*B-03062: Project Designer and Administrator roles can now create models and datatables, and global "Create models" role changed to "Create projects".
*B-08471: Model properties dialog has been simplified for Native App to exclude in-memory model datasources.
*B-08504: Charts don't automatically change case/event attributes and event types when encountering non-existing selections.
*B-08522: Optimized Snowflake queries that do not need event data.
*B-08454: Optimized SQL executed in Snowflake by removing unnecessary column type casts.
*B-08507: Migrated tables for scripts and script logs to Entity Framework.
*B-08519: Migrated user management tables to Entity Framework.
*B-08539: Migrated model, project and filter tables to Entity Framework.
*B-08514: Updated translations for release 2024.8.
*B-08515: Frontend components have been updated.
*B-08513: Backend components have been updated.


'''Features:'''
===Fixed issues===
*
*D-14320: On-screen setting didn't work when "dynamicType" is "DataTablesOfProject".
* B-06441: Snowflake stored datatables and models can be managed in [[QPR ProcessAnalyzer Project Workspace#Datatables|Workspace]].
*D-14221: Content-Security-Policy HTTP headers allows only same origin for iframes, and X-Frame-Options HTTP header removed.
* B-06495: In the out-of-the box dashboards, chart and flowchart settings are now remembered during the user session.
*D-14317: Model statistics system report gave error about invalid expression.
* B-06314: In Workspace, Models and Scripts tabs refresh automatically to show the current models and scripts status.
* D-14286: Fixed issue in model import which sometimes created partially configured model.
* B-06551: New [[Measure, Dimension and Column Settings#Statistical calculations|statistical calculations]] for charts and other statistical calculations improvements.
*D-14315: Filtering for custom dimensions didn't work, if expression refers to measures with variables.
* B-06362: Expression language: [[QPR ProcessAnalyzer Expressions#Conditional statement .28switch.29|switch-case-default-break statement]].
*D-14302: "let" statement did not work in #expr-block embedded into SQL expression.
* B-05802: Support for encrypted SAML 2.0 assertions.
*D-14303: Flowchart lost selection when flowchart used linked variables.
* B-06259: SAML 2.0 authentication library has been changed.
*D-14311: Fixed issue were dashboards were not visible in iPhone.
* B-06428: Removed limitation from SAP connector to allow multiple SAP extractions simultaneously.
*D-14301: Filtering from "First event attribute value" and "Last event attribute value" columns did not work.
* B-05837: Root causes calculation is available in the expression language.
*D-14314: Fixed error in BPMN editor when object-centric model didn't have perspective defined.
* B-06526: When ComparisonEventLog is used in an expression, it's initialized automatically.
*D-14297: Native App incorrectly cached OAuth token causing "OAuth access token expired" errors.
* B-06303: WCF client has been dropped.
*D-14248: Improved error message "Unable to read event log data from external source without specified sample size".
* B-06563: All WCF related functionalities has been removed.
*D-12402: Fixed issue where flowchart start/end flows didn't start from middle of start/end symbols.
* B-06558: Salesforce connector has been changed to use Salesforce REST API.
*D-14293: AI Assistant didn't work with object-centric models.
* B-06514: In Workspace, scripting and model permission restrictions are better reflected in the UI.
* D-14295: Fixed issue where authentication was not possible if PA_ROLE table contained roles with ROL_FLAGS field having NULL values.
* B-05960: Distributed computing: All datatable columns are made available in dataframe processing method.
* D-14245: When dialog was opened in Workspace, console showed following error: "Blocked aria-hidden on a <button> element because the element that just received focus ...".
* B-06500: When empty, DatabaseId is generated automatically in PA_CONFIGURATION table on startup.
* B-06567: Translation updates for 2022.2 release.


'''Fixed issues:'''
==QPR ProcessAnalyzer 2024.7 (build 8234) (released 2024-10-29)==
* D-11484: Scripts incorrectly stayed in stopping state, when system was shut down while the script was running.
* D-11537: Script failed to session expiration error when running in ScriptLauncher and performed a client side operation after session idle timeout.
* D-11495: Model specific DropUnusedModelsAfter setting is removed in server side as it didn't work as intended.
* D-11507: Removed "Drop unused model after" setting from UI, as it didn't work as originally intended.
* D-11497: Running script in web UI having ExecuteInClientSide=1 never completed.
* D-11523: Chart tooltip showed incorrect series when some series was hidden.
* D-11489: Percentage character (%) was lost from file name when exporting a filter to a json file.
* D-11557: Highcharts based charts were not disposed correctly on redraw causing out-of-memory error.
* D-11490: Stored filter rules were lost from default public filter when setting "All cases" to default public.
* D-11498: Trying to import empty csv file caused JavaScript error.
* D-11499: Trying to import csv file with header line only, correctly suggests now strings as datatype (instead of integers).
* D-11494: Flow Duration Distribution report had JavaScript error in the Enhanced BPMN dashboard.
* D-11501: Hiding event type name from flowchart caused error.
* D-11502: Right click didn't work when user opened BPMN editor from measures settings.
* D-11506: BPMN editor could not be opened in the Notification rules editor when creating measure.
* D-11478: Model properties window stayed visible in login page after session expiration.
* D-11491: JPG format file export had incorrect black background color.
* D-11513: Multi-select list item removal using the X button didn't work.
* D-11505: Changed new wiki location to the Help buttons.
* D-11486: Untranslated strings and translation inconsistencies for Finnish language fixed.
* D-11479: Selection list for new task could not display properly in BPMN editor.
* D-11508: Console error occurred when selecting Case conformance level in Notification rules editor.
* D-11510: Adjusting Object sample size caused error for Top violations chart.
* D-11144: Workspace scripts grid permissions was not checked when showing items context menu.
* D-11234: Creating new model option was incorrectly enabled when user had only view or analyst role for project.
* D-11520: In workspace, changing project with drag-and-drop takes now user permissions better into account.
* D-11521: Title could not display properly for datatable properties when using Finnish UI.
* D-11536: Translation support was missing for "Running" in Script Editor.
* D-11450: Export filter button was enabled in not possible state.
* D-11444: All duplicated dashboards had same identifier.
* D-11483: Unnecessary scrollbar was sometimes displayed in System reports dialog.
* D-11402: Rename icon was using wrong graphic.
* D-11558: Icons in UI had small vertical alignment problem.
* D-11559: UI used incorrect icon for Export functionality.
* D-11544: Datatable column names starting with lower case showed incorrectly in upper case.
* D-11482: Importing table to itself using SqlDataFrame caused the SQL Server to get partially stuck.
* D-11458: There was null reference error when ProcessingMethod is dataframe, ContextType is generic, and root is Cases.
* D-11487: ScriptById function did not return Access denied error if script didn't exist.
* D-11461: Filtering didn't work in dataframe mode when StringifiedValues was used.
* D-11540: Column mappings didn't work with WithRowNumberColumn function in SqlDataFrames.
* D-11231: In the Enhanced BPMN editor screen, import/open icon was wrong.


== QPR ProcessAnalyzer 2022.1 (build 774) (released 2022-01-24) ==
<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: If the "Drop Unused Model After" setting is specified for a model, the model may incorrectly be dropped from the memory when the memory consumption is high. As a workaround, set this setting to empty, so that the model is not dropped by itself. This incorrectly behaving setting will be removed from the software in the next release (D-11507).
If using local datatables (stored in SQL Server), the [[PA_Configuration_database_table#SqlServerConnectionString|SqlServerConnectionString]] setting is now mandatory. Starting from QPR ProcessAnalyzer 2024.7, local datatables cannot be created if the setting is not configured. It's recommended to have a separate database for the datatables data, but it's also possible to configure the same connection to the SqlServerConnectionString setting as for the configuration database (in [[Installing_QPR_ProcessAnalyzer_Server#Server_settings_file_(appsettings.json)|appsettings.json]]). See [[QPR_ProcessAnalyzer_System_Architecture|System Architecture]] for more information about the data storage.
</div>
</div>
'''Features:'''
* B-06334: New dashboard component: textual labels can be added to dashboards.
* B-06324: Chart settings icon can be hidden in preview mode, and also icons visual layout has been improved.
* B-06494: Expression language: break and continue statements.
* B-06435: Web UI web page title in browser header simplified.
* B-06535: Copyright year updated to 2022.
* B-06466: Updated to Angular 13.
* B-06521: Frontend components have been updated.
* B-06448: Optimized Snowflake data import using Put command.
* B-06481: Added support for project description field to expression language and Web API.
* B-06491: Improvements for taking into use new SAP library.
* B-03053: Backend support for expression scripts permissions.
* B-06501: Translation updates for release 2022.1.
'''Fixed issues:'''
* D-11462: Model notifications were not visible if there was notification containing dimensions.
* D-11435: Links in model description showed "&" characters incorrectly.
* D-11447: Linked settings and variable mappings didn't work with flowchart.
* D-11454: ScriptLauncher didn't work when only hostname was specified in ServiceURL.
* D-11419: In CSV import, row number showed incorrectly in column count mismatch error message when file size was over 10MB.
* D-11425: In chart, Statistical calculation "Show change from previous" didn't show empty for first row.
* D-11307: Transparent color was not working for chart layout setting.
* D-11439: Date format was changed in workspace when changing only the language.
* D-11423: Dropdown lists were shown partly out of screen in smaller screens.
* D-11477: Maximum rows in Root causes didn't have maximum limitation.
* D-11167: Removed unnecessary "_." structures from chart expressions.
* D-11470: Catch function failed with a constant expression and non-constant resultIfException expression.
* D-11429: There existed Undefined % and NaN value in Root Causes Analysis result.
* D-11343: Script log was written to wrong script when expression script calls SQL script.
* D-11377: Stdevp function incorrectly returned zero for array of one element.
* D-11255: Train function didn't work with only one case in training set.
* D-11413: Color picker cancel button didn't work.
* D-11414: Clicking context menu icon in projects hierarchy tree in Workspace to open sub menu, didn't do anything.
* D-11245: Removed not needed fonts.
* D-11453: Wrong font used for System reports.
* D-11455: Red color error message didn't use Open Sans font.
* D-11180: Workspace contextual menu icons vertical alignment was incorrect.
* D-11475: BPMN context menu hidden behind other frame when webpage zoom setting was bigger than 110%.
* D-11416: Context menu in projects hierarchy didn't open in Cypress tests.
* D-11115: Title of event type filter didn't display "&" character properly.
* D-11097: When clicking data grid input validation message, JS error appeared: TypeError: Cannot read property 'data' of null  at Gs.getRowInfo  at Gs.mouseClickHandler.
* D-11267: Unable to use datatables with columns names having square brackets.
* D-11243: Project LastModifiedDate and LastModifiedBy are now updated when project properties are changed.
* D-11457: There was useless error message when HTML error is get via Web API.
== Additional release for QPR ProcessAnalyzer 2021.9 (build 709) (released 2021-12-20) ==


<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 has brought back SQL Server 2014 support.
Check whether there are custom roles in the database (table PA_ROLE) which have the ROL_FLAGS field set to NULL. The NULL values don't work with this release, so set a correct value (either 1, 2, or 3). Following query can be run in the database showing roles which have an incorrect ROL_FLAGS field:
<pre>
SELECT *
FROM [PA_ROLE]
WHERE [ROL_FLAGS] = NULL;
</pre>
</div>
</div>
'''Features:'''
* B-06489: Restore support for SQL Server 2014.
* B-06257: Add new SAP data extraction connector library SAP NetWeaver RFC (preview feature).
* B-06443: Snowflake availability status is added to /api/serverinfo.
== QPR ProcessAnalyzer 2021.9 (build 700) (released 2021-12-14) ==


<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;">
Starting from QPR ProcessAnalyzer 2021.9, ScriptLauncher uses Web API instead of legacy WCF API, and thus also the 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.
Snowflake user-defined functions (UDF) used by QPR ProcessAnalyzer have been updated to use Python 3.11. Old versions of the functions use Python 3.8 which has been deprecated by Snowflake. Although the old versions are not anymore used by QPR ProcessAnalyzer, they are not automatically deleted and thus Snowflake may send notifications emails about existing deprecated functions. It's recommended to remove the old functions which are following:
*QPRPA_UDF_BC_DURATION_BETWEEN_DATES
*QPRPA_UDF_BC_DURATION_BETWEEN_DATES_V2
*QPRPA_UDF_BC_DURATION_BETWEEN_DATES_V3
*QPRPA_UDF_BC_DURATION_BETWEEN_DATES_V4
*QPRPA_UDF_BC_DURATION_BETWEEN_DATES_V5
*QPRPA_UDTF_CLUSTER
*QPRPA_UDTF_CLUSTER_V2
*QPRPA_UDTF_CLUSTER_V3
*QPRPA_UDF_BPMN_IS_CONFORMANT
*QPRPA_UDF_BPMN_CONFORMANCE_VIOLATIONS_FLOWS
</div>
</div>


<div style="border:1px solid #dfdfdf;padding:0.5em 1em 0.5em 1em;background-color:#E7EAEC;margin:10px 0px 0px 10px;">
'''Features'''
When taking into use the Web API based ScriptLauncher, the ServiceUrl setting in the ScriptLauncher [[QPR_ProcessAnalyzer_ScriptLauncher#Configuring_ScriptLauncher|configuration file]] needs to be set differently: Previously it was enough to specify the server name (e.g. <nowiki>https://processanalyzer.onqpr.com</nowiki>), but now also the application path needs to be specified (e.g. <nowiki>https://processanalyzer.onqpr.com/qprpa</nowiki>). This issue will be resolved in upcoming release.
*B-08458: Object-centric perspectives can be stored as filters and object-centric model can be selected for dashboard.
</div>
* B-08472: Snowflake filter cache tables are now created in background to improve performance.
*B-08452: Limited sampled cases to 10000 in Snowflake and in-memory clustering presets.
*B-08430: Improved [[Process_Flowchart|Snowflake flowchart]] performance by calculating variations using sampling.
*B-08446: QPR ProcessAnalyzer can be deployed as Snowflake application package to publish it as a [[QPR_ProcessAnalyzer_Native_App_in_Snowflake|native app]].
*B-08418: QPR ProcessAnalyzer has been integrated into Snowflake authentication for Snowpark Container Services.
*B-08420: Legacy "Local" datatables cannot be created anymore - only separate SQL Server database is supported (see release note above).
*B-08437: Snowflake cache is now bypassed for queries that have caching disabled.
* B-08443: Improved object-centric models performance by optimizing perspective generation.
*B-08450: Updated Snowflake UDF's python version from 3.8 to 3.11 (see release note above).
*B-08425: Migrated nine configuration data tables to use Entity Framework.
*B-08334: Removed legacy functionality related to models.
*B-08337: Removed legacy functionality related to roles.
*B-08456: Frontend components have been updated.
*B-08477: Backend components have been updated.
*B-08478: Updated translations for release 2024.7.


<div style="border:1px solid #dfdfdf;padding:0.5em 1em 0.5em 1em;background-color:#E7EAEC;margin:10px 0px 0px 10px;">
'''Fixed issues'''
Starting from QPR ProcessAnalyzer 2021.9, support for SQL Server 2012 and SQL Server 2014 has been dropped. See more in [[QPR_ProcessAnalyzer_System_Requirements#System_Requirements_for_QPR_ProcessAnalyzer_Server|system requirements]].
*D-14263: Filtering with case id caused error when Snowflake model didn't have case attributes datatable.
</div>
* D-14256: Workspace showed progress spinner forever if trying to remove rows from table where there is no access.
 
*D-14250: "Show in Query Designer" button didn't show full query sent to server.
<div style="border:1px solid #dfdfdf;padding:0.5em 1em 0.5em 1em;background-color:#E7EAEC;margin:10px 0px 0px 10px;">
*D-14285: Non-breaking spaces didn't work in json fields.
The predefined analyses operations that QPR ProcessAnalyzer has traditionally been based on, are now deprecated and will be replaced by functionality provided by the expression language. In practice, the following features will be removed:
*D-14278: Workspace models list showed linked cases/events datatable even though datatable didn't exist.
* [[SQL_Scripting_Commands#--.23GetAnalysis|--#GetAnalysis]] command in SQL scripting: If there are scripts using that command, replace them with the new [[SQL_Scripting_Commands#--.23RunQuery|--#RunQuery]] which uses the expression language to query data.
* D-14251: Aggregations list in Combined measure/dimension/column incorrectly showed aggregations for all data types.
* [[DataFrame_in_Expression_Language#Extract_Data_to_DataFrames|Analysis]] function in expression language: If using that function, replace it with other functionalities provided by the expression language.
*D-14257: Exporting datatable with no columns froze loading spinner.
* POST /api/analysis/{analysisType} endpoint in the Web API: If using that endpoint in customized solutions, call the [[Web_API:_Expression/query|/api/expression/query]] endpoint instead.
*D-14188: Script incorrectly aborted after error occurring in the import phase of client-side import.
</div>
*D-14275: Several "Loop percentage" event measures caused flowchart error.
 
*D-14259: Removed malfunctioning undo/redo operations from Design diagram.
<div style="border:1px solid #dfdfdf;padding:0.5em 1em 0.5em 1em;background-color:#E7EAEC;margin:10px 0px 0px 10px;">
*D-14260: Design diagram toolbar incorrectly scrolled to left when diagram was zoomed.
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 used API can be distinguished from the url: if it contains "/MainService.svc" the connection is to the WCF API and changes are required.
*D-14262: Opening version information caused javascript error if backend communication failed.
</div>
*D-14271: None aggregation didn't work with some Statistical calculations.
*D-14283: BPMN editor toolbox has now correct font.
*D-14280: Dashboard component stacking order buttons didn't work if dashboard had z-indeces with gaps.


<div style="border:1px solid #dfdfdf;padding:0.5em 1em 0.5em 1em;background-color:#E7EAEC;margin:10px 0px 0px 10px;">
<span id="84516a70"></span>
When installing 2021.9 server, note that there is a change in the web.config file, as httpRuntime element includes now targetFramework="4.7.1" attribute. Also, QPR ProcessAnanalyzer ScriptLauncher web.config has changed, as ''ConnectionType'' is now ''WebApi'' instead of ''Service''.
</div>


<div style="border:1px solid #dfdfdf;padding:0.5em 1em 0.5em 1em;background-color:#E7EAEC;margin:10px 0px 0px 10px;">
==QPR ProcessAnalyzer 2024.6 (build 7414) (released 2024-09-18)==
SQL scripting commands that create datatables and temporary tables, use now specific column data types (such as NVARCHAR(MAX), INT, FLOAT, DATETIME2 and BIT) instead of SQL_VARIANT. This may affect SQL commands that have relied on the SQL_VARIANT column type. For example, in joins there may be mismatches between data types, requiring explicit type conversion.
</div>


'''Features:'''
'''Features:'''
* B-03221: [[Process_Flowchart|Flowchart]] has been renewed.
*B-08366: Frontend for [[Object-centric_Process_Mining_Model|OCPM model]] configuration and Snowflake charts using perspectives.
* B-06378: Old flowchart has been removed.
*B-08365: Added following visual settings for [[QPR_ProcessAnalyzer_KPI_Card|KPI Card]]: font size, text color, text styles, vertical and horizontal alignment.
* B-06317: --#runQuery to run expression queries in SQL scripts.
* B-08382: Measures, dimensions and columns can be duplicated in [[QPR_ProcessAnalyzer_Chart#Measure,_Dimension_and_Column_Settings|chart settings]].
* B-06343: Bottleneck Flows preset is now sorted based on case counts and other visual improvements.
*B-08381: [[QPR_ProcessAnalyzer_Table|Table]] vertical scrollbar is now hidden when table is not scrollable.
* B-06360: Model Manager view has been removed.
*B-08355: Expression language identifiers are primarily assumed as variables and secondarily as property names.
* B-06392: Enable ScriptLauncher to use Web API.
*B-08402: QPR ProcessAnalyzer can now connect to Snowflake when running in Snowpark Container Services.
* B-06346: Expression optimization for finding first/last event of specific type in case.
*B-08389: Added support for making multiple Snowflake queries in same request for OCPM queries.
* B-06399: Handling of simple requests has been optimized.
*B-08416: Improved backend functionality for partially configured OCEL models.
* B-06309: Datatable operations for Snowflake stored datatables.
*B-08428: Improved Snowflake calculation performance by including to filter cache tables only the event table key (this behavior can be opt-in with a [[PA_Configuration_database_table#CacheOnlyPrimaryKeysForFilters|CacheOnlyPrimaryKeysForFilters setting]]).
* B-06413: Merge function for DataTables supporting SQL Server and Snowflake.
*B-08448: Add configuration to disable event cache tables storing primary key only.
* B-06415: MatchByColumns mode for importing data to Snowflake stored datatables.
*B-08340: New users don't have a default model selected when login for the first time.
* B-06427: Append function for SqlDataFrames corresponding to UNION ALL in SQL.
*B-08413: Frontend components have been updated.
* B-06397: Backend support for modifying Snowflake stored datatables.
*B-08397: Backend components have been updated.
* B-06408: Translation updates for 2021.9.
*B-08398: Updated translations for release 2024.6.
* B-06412: CalcTester and ScriptLauncher are combined.
 
'''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.
* D-11274: Performance issue: pivot grid froze for a while during opening when there were lot of column.
* D-11350: In prediction, empty results should be shown when there is only one case in training set.
* D-11353: Incorrect expression existed in case measure "Event type count per case".
* D-11361: Cost input box was missing in Cost Savings by Automation preset.
* D-11379: Search by Case ID preset was not working.
* D-11290: Select Start or End filter from Bottleneck flow analysis result, Querying Variation error occurred.
* D-11302: Chart filter didn't have any effect on root causes analysis.
* D-11289: CSV import didn't warn about too long column names.
* D-11310: Custom layout settings for highcharts were not compatible with the pivot grid.
* D-11341: "Show for null values" didn't work in pivot grid.
* D-11346: Chart configuration validation failed if there was no expression defined above defined expression.
* D-11345: Some charts made in old version had nullValue=null which failed schema validation and showed error message when dashboard was opened.
* D-11349: Expression based filter rules could not be disabled.
* D-11326: Long project name string broke User effective permission layout.
* D-11344: Invalid column name error occurred While evaluating function "Collect" in context for Pivot grid.
* D-11387: Incorrect schema for "Table actions" caused error when opening dashboard.
* D-11369: In workspace, hovering script row in table increased row height.
* D-11224: In Workspace, sometimes when selecting row using checkbox, previous selections were unchecked.
* D-11301: Drag&drop object in the Workspace missed a visual feedback.
* D-11371: On-screen settings with multiple custom UI controls having same parameter name didn't work.
* D-11388: Donut chart didn't work with multiple measures.
* D-11261: Workspace column had sorting issue with empty date values.
* D-11285: Datatable with lot of columns and rows caused performance slowdown.
* D-11156: Unnecessary "This field is required" validation message existed in Manage Users dialog.
* D-11370: CSV file import didn't detect timezone in dates.
* D-11394: Workspace showed time incorrectly for 24h clock.
* D-11407: In dashboard, clicking Workspace button right after clicking save, gave unsaved changes message.
* D-11202: --#ImportDataTable did not create new columns when Append=1.
* D-11283: Backend incorrectly converted json strings that look dates to dates with different formatting.
* D-09499: When trying to use EventLog, CaseAttributes or EventAttributes properties in a loading script, clear error message was not given.
* D-11287: Sometimes incorrect error message was shown for query cancellation.
* D-11375: ProcessAnalyzer incorrectly ran with old .Net Framework runtime.
* D-11376: ModelMetaData was dropped from memory when there was memory pressure.
 
== 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;">
'''Fixed issues:''' 
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."'' Despite the error message, the dashboard still works correctly. 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 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. This issue will also be fixed in the next release, and if decided to wait for it, there is no need to edit the dashboards.
*D-14209: Fixed issue where moving projects in Workspace was not possible.
</div>
*D-14186: Highcharts visualizations datalabel texts were incorrectly shown over tooltips.
*D-14210: Fixes for issue with incorrectly shown pending tasks in System Reports.
* D-14242: SqlDataFrame Persist function now keeps the original column types even if they are changed.
*D-14147: Snowflake queries gave "Object reference not set to an instance of an object" error with MaximumRowCount higher than 2 billion.
* D-14189: Dropdown list component gave following error when clicking Add button for "List items": Cannot read properties of undefined (reading 'axisLabel').
* D-14192: Datagrid paging settings are now preserved when resizing or zooming window.
* D-14214: In System reports, dropdown list showing dashboards didn't open if there were more than 1000 dashboards.
*D-14218: CSV file import didn't detect existing column correctly when there was difference only in letter case.
*D-14184: Giving ScriptText or ScriptFileName as parameter for QPR ScriptLauncher created a broken script.
*D-14220: AI assistant gave strange error message when trying to explain chart showing error.
*D-14135: Expression based Snowflake filter rule caused error "Object reference not set to an instance of an object".
*D-14229: In Snowflake, disabled filter rules didn't affect header object counts when there were several filter rules.
*D-14228: In Models and Model statistics reports, columns showing case and event attributes didn't work.
*D-14213: In User Settings dialog, Effective Permissions settings are now preserved while dialog is open.
*D-14227: Fixed issue where applying chart settings in System reports made settings pane empty.
* D-14185: Stack traces were incorrectly returned even if IncludeExceptionDetailsInErrors was false.
*D-14226: Fixed several OCPM calculation related issues in backend.
*D-13943: Added error message to Case attribute selector when model doesn't have selected case attribute.
*D-14162: Expression "0.()" gave null reference error.
*D-14246: Chart setting dialog may have been partly out of screen when activating other chart while in dashboard is scrolled.
*D-14238: Snowflake chart measure aggregation is incorrectly affected by statistical calculations.
* D-14133: In Snowflake chart, events Aggregate settings caused JaveScript error and UI messed up.
*D-14172: Fixed issue where validation error appeared when copying and moving elements in Design Diagram.
*D-14253: Table didn't show column filter icon when column name was empty.


==Additional release for QPR ProcessAnalyzer 2024.5 (build 6814) (released 2024-07-01)==
<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."'' In addition to the error message, some charts in the dashboard may not work correctly. This issue appears if there are empty measures or dimensions ("none" selected) above defined measures or dimensions. The issue can be resolved by removing the empty measures and 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. This issue will also be fixed in the next release, and if decided to wait for it, there is no need to edit the dashboards.
Known issue: It's not possible to move projects that existed before updating to this release. The issue will be fixed in the next release. There is a following workaround available: Administrator user can go to the [[Navigation_Menu#Expression_Designer|Expression Designer]] and run the following expression: '''Projects.Modify(#{})'''.
</div>
</div>
'''Features:'''
* B-06288: CSV file import can update existing rows in the datatable.
* B-06281: User specific date format, first day of week and 12/24 clock can now be set separately from the language.
* 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 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:'''
'''Fixed issues:'''
* D-11257: Sometimes date axis marks didn't match with data points.
*D-14191: Running script by id failed on data import when parameters contained ScriptId.
* D-11136: In prediction preset, when all cases were filtered out, there was error "Index was outside the bounds of the array".
*D-14183: Fixed issue where flowchart SVG export only exported the visible part of flowchart.
* 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) ==
==Additional release for QPR ProcessAnalyzer 2024.5 (build 6769) (released 2024-06-27)==
'''Notes:'''


<div style="border:1px solid #dfdfdf;padding:0.5em 1em 0.5em 1em;background-color:#E7EAEC;margin:10px 0px 0px 10px;">
'''Features:'''
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>


'''Features:'''
*B-08388: Added backend support for OCPM model perspectives to convert object-centric eventlogs into case-centric.
* 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:'''
'''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) ==
*D-14187: Creating local datatables was not possible in Workspace if datatables were stored to the configuration database (i.e., SqlServerConnectionString setting is not used).
'''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 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.
</div>


'''Features:'''
==QPR ProcessAnalyzer 2024.5 (build 6746) (released 2024-06-25)==
* B-06245: Performance issue: Separate eventlogs were sometimes still created when drilling down in dashboards.
* B-05937: Trying to initialize existing variable in the same scope gives now error.
* B-03091: Columns of the datatables stored to SQL Server use now specific data types instead of SQLVARIANT.
* B-06205: Frontend 3rd party components have been updated.
* B-06021: Server logging has been improvement.


'''Fixed issues:'''
'''Features:'''  
* D-11094: In datatable import dialog, emptying datatable column name field didn't take effect.
*B-08338: Added reports to monitor dashboards usage: Popular dashboards, Dashboards by users and by time, and specific dashboard usage.
* D-11159: In chart, opening datatables list in "Datatable contents" gave error.
*B-08314: Snowflake connection string can be [[QPR_ProcessAnalyzer_Project_Workspace#Project-level_Snowflake_Connection|specified for each project]] to allow projects connecting to different Snowflake accounts, databases or schemas.
* D-11056: Table sorting using context menu didn't work.
*B-08341: Added [[SQL_Expressions#GetRelatedValueFrom_function|GetRelatedValueFrom]] and [[SQL_Expressions#AggregateRelatedValueFrom_function|AggregateRelatedValueFrom]] SQL expression functions to extend models with data from additional tables.
* D-11157: "Not contains" filter didn't work and rule didn't show any text in header.
*B-08301: In chart settings, selecting another measure/dimension/column now doesn't reset settings.
* D-11158: There was an incorrect html encoding in multiselect list label.
*B-08317: Added Snowflake presets for Root Causes for Attributes in table and detailed table format.
* D-09506: In pivot table, export created incorrect Excel file from zero values.
*B-08318: Improved Snowflake Events preset performance by adding a filter that picks a subset of cases.
* D-11078: In pivot table, selection caused javascript error when mouse was released over cell value.
*B-08385: Open AI default large language model has been changed to "gpt-4o".
* D-11147: For json type of error responses Content-Type should be "application/json; charset=utf-8".
*B-08342: Added DashboardName and DashboardProjectName properties to [[Generic_Properties_in_Expression_Language#OperationLog|OperationLog]] in expression language.
 
*B-08320: Added RenameAllColumns function to dataframes to easily rename all columns.
== Additional release for QPR ProcessAnalyzer 2021.6 (build 460) (released 2021-08-19) ==
*B-08321: Added DataSourceConnection property to dataframes in expression language.
'''Features:'''
*B-08307: Finetuned Workspace functionality for models that don't have datasource defined.
* B-06211: Performance improvement: Reuse event objects in all eventlogs of the model (event level calculation performance is doubled).
*B-08329: Optimized metadata queries to Snowflake to improve performance.
*B-08311: Changed QPR ScriptLauncher interaction with the server by changing long polling to short calls to improve robustness.
*B-08368: Implemented backend support for configuring and importing OCPM models.
*B-08352: Frontend components have been updated.
*B-08348: Backend components have been updated.
* B-08349: Updated translations for release 2024.5.


'''Fixed issues:'''
'''Fixed issues:'''
* D-11146: Filter calculation on dashboards using large model with several charts slowed down due to unnecessary duplicate eventlog generation.
*D-14150: Charts temporarily showed as too large when resized with non-zero chart margin values.
* D-11145: "Not contains" option was missing from Excel filter sub menu, and filter type was not filled automatically in Custom filter dialog.
*D-14058: Login page is not anymore shown when SAML authentication is configured and user is directed to the identity provider.
* D-11121: There was an unclear error message "Conformance statistics cannot be calculated" in Conformance statistics component.
*D-11579: Column filter menu in tables can now appear outside the table area which is useful in small tables.
* D-11152: There was an unnecessary separator in projects menu in models list.
*D-14144: Fixed issue where Snowflake clustering failed if there were date type of case attribute with null values.
* D-11150: There was a date conversion issue in CSV import related to number parts with leading zeros.
* D-14163: Non-breaking spaces appeared strangely as "&amp;nbsp;" in Highcharts charts.
* D-11119: DataGrid Excel export didn't work with the "substitute character".
*D-14132: Snowflake model object counts were not shown when opening dashboard while model metadata was still loading.
* D-11129: Case nonconformancies root tried to declare variables twice.
* D-14142: CreateDataTable function incorrectly deleted all source datatable content if connection included source datatable name.
* D-11151: Some number conversions were incorrect in CSV import.
*D-14161: Fixed issue where Append function in SqlDataFrame broke source data.
* D-11153: Decimal separator could not be specified for duration type of columns in the CSV import.
*D-14157: AI Assistant didn't show detailed error message when OpenAI query failed.
* D-11154: Client side validation didn't work for duplicate user and group names.
*D-14137: AI Assistant incorrectly appeared on top of chart in the fullscreen mode.
*D-14170: Toolbar dropdown lists didn't work when dashboard contained more than one Design Diagram.
*D-14146: Fixed error "Unable to get on-premise gateway named..." when running script from SQL script using QPR ScriptLauncher.
*D-14106: Having only a template string in the #expr{...} block didn't work.
*D-14008: "Root Causes contribution" and "Comparison eventlog cases percentage" columns didn't work (in-memory).
*D-14010: Occurrences of specific flow measure didn't work with the Root causes analysis weighting expression (in-memory).
*D-14148: Root causes for case duration preset didn't support Multi-unit time settings.
*D-14139: Added info message when successfully exporting model to pacm file.
*D-14153: Fixed in-memory measures for "Flow duration" and "Occurrences of specific flow" which failed when selected flow didn't exist.
* D-14167: Fixed issue where ScriptLauncher sometimes terminated prematurely on exceptions occurring in on-premise import.
*D-14165: Flowchart export file name was incorrect and exported flowchart background was always transparent.
* D-14160: Fixed issue where DashboardId wasn't recorded to operation log when opening dashboard by identifier (DashboardsController.GetByIdentifierPath).
*D-14159: IsHidden property didn't work in in-memory Value expressions.
*D-14131: Some popup messages had incorrect html escaping.
*D-14151: Fixed issue where flowchart might have given browser console error when clicking event types or flows while still loading data.
*D-14022: In System reports, numeric aggregations which don't work in SQL Server are now hidden.
* D-14129: Imported model name was incorrectly cut if it contained dots.


== QPR ProcessAnalyzer 2021.6 (build 444) (released 2021-08-10) ==
==QPR ProcessAnalyzer 2024.4 (build 6246) (released 2024-05-14)==


'''Features:'''
'''Features:'''
* B-05859: CSV file import is renewed and available in the Workspace (old import is still available).
* B-08227: Dashboards have [[AI_Assistant_for_QPR_ProcessAnalyzer|AI Assistant]] (powered by ChatGPT) helping users in process analysis. AI Assistant can answer general questions about the process, create filters based on user prompt, and explain charts and analyses.
* B-05988: Charts can be duplicated when editing dashboards.
*B-08277: QPR ProcessAnalyzer now detects automatically when cases or events data in Snowflake updates. Check is done every 5 minutes which is the maximum delay of detecting new data. ([[Snowflake_Connection_Configuration#Automatic_data_update_detection|more information]])
* B-05969: Not contains -type of column filter is available in tables.
*B-08322: OpenAI model name can be configured by administrator. The model is used by the AI Assistant and (by default) the OpenAIChatCompletion function.
* B-03225: If user is authenticated with SAML, password changing is not available.
* B-08264: Workspace is now showing child projects in the top level when there is no access to parent project.
* B-03232: In dashboard export files, chart settings are stored as presentation object property instead of context variable.
*B-08276: Adjusted permissions for [[Roles_and_Permissions#Project_Permissions|moving projects]].
* B-05982: Workspace context menu improvements.
*B-08310: Added Details property to [[Generic_Objects_in_Expression_Language#Exception|Exception object]] in expression language.
* B-05950: Allow empty value in first column in CSV file import.
*B-08328: Language translations have been updated to 2024.4.
* B-05860: Frontend component update (part 2).
*B-08312: Frontend components have been updated.
*B-08308: Backend components have been updated.


'''Fixed issues:'''
'''Fixed issues:'''
* D-11107: In Workspace, when new project, datatable or script is clicked, the name text was highlighted by default.
*D-14084: Filter rule for first and last event in case couldn't be edited if there were more than one event selected.
* D-11106: Query cancellation suppression didn't work when cancellation was in the inner exception.
*D-14091: Duration multi-unit didn't work in big data chart.
* D-11118: Issues with Dropdown list selector: (1) dates as variable values are handled incorrectly, (2) list refreshes unnecessary when activated.
*D-14095: Flowchart sometimes crashed with color mapping in use to an event type measure with null values.
* D-11117: Case attribute and event type filters lists incorrectly made queries already when dashboard is opened.
*D-14105: Snowflake root causes analysis showed incorrect row count when Contribution was Contributing or Impeding.
* D-11053: All texts didn't fit to screen in Syncfusion grid Excel filter when using UI languages with long words.
* D-14107: Snowflake model that has earlier been an in-memory model showed case count and estimated memory incorrectly.
* D-11075: Datatable didn't open after creation from UI.
*D-14074: Fixed issue in QPR ScriptLauncher when calling the script from other script.
* D-11105: Wrong color in Clear Filter icon in data grid Excel filter.
*D-14104: Fixed expression language parsing issue with in-memory DataFrame and filter using "In" function.
* D-11092: Code editor should not show errors for correct code.
*D-14121: Datatable UpdateRows function now supports column names given as expressions.
* D-11104: When context menu is opened for project that is not previously selected, hierarchy was scrolled.
*D-14085: Measure/dimension/column settings dialog didn't open for Event attribute when drop-down list values weren't selected.
* D-11095: For json type of error responses Content-Type is now application/json.
* D-14123: There was an error of unable to get on-premise gateway when using ExtractSap function in expression language script from SQL script called from expression language script.
* D-11071: Web API could still return datatables with null configuration.
*D-14128: Table without title was incorrectly exported as .txt file.
* D-11098: Small layout issue fixes.
* D-14112: Convert to custom expression button didn't work in design diagram.
* D-11133: Submenu of "Move to" is opened at the top-left corner.
*D-14100: In Workspace, project bread crumbs didn't update when moving the selected project.
*D-14094: Measure unit was incorrectly shown for textual values and the unit could not be changed in chart settings.
*D-14097: In Workspace, added progress spinner to prevent starting a new operation while the previous is still in progress.
* D-14096: Highcharts tooltip square icons were slightly misaligned.
*D-14099: There was a console warning when opening the business calendar dialog.
*D-14118: Design diagram sometimes gave following JavaScript error: Cannot read properties of undefined (reading 'parentNode').
* D-14024: If quickly logging out after changing model, the model change might not be been saved.
*D-14120: User.getAttribute function returned values from incorrect context.
*D-14102: Pivot table cannot read properties of undefined.
* D-14161: SqlDataFrame.Append breaks the used source SqlDataFrames


== QPR ProcessAnalyzer 2021.5 (build 389) (released 2021-06-23) ==
==QPR ProcessAnalyzer 2024.3 (build 5801) (released 2024-04-04)==


'''Features:'''
'''Features:'''
* B-05846: Datatable contents can be previewed, and also new system reports dialog.
*B-08024: [[Design_Diagram|Design diagram]] has now swimlanes and BPMN expanded subprocesses. Also indirect flows can be included when calculating flow measures.
* B-03233: Improved UI for chart background color, border color, border width and border corner radius.
*B-08242: Script based [[Actions_to_Run_Script_in_Table|actions]] can be started from dashboard table context menu, extending dashboard functionality to e.g., create tickets, trigger automation, and fetch external information.
* B-05852: New presets for intelligent process automation and boxplot visualizations.
*B-08268: (1) In Overview flowchart preset, flow width visualizes now case volumes instead of flow duration. (2) When converting Snowflake expression into custom, the expression filter is preserved and not embedded into the custom expression.
* B-05828: Actions for tables to change dashboard variables.
*B-08288: Added expression language functions to [[QPR_ProcessAnalyzer_Objects_in_Expression_Language#Start|start and stop]] scripts.
* B-05853: Scripting supports also scripts written in the expression language.
*B-08252: When Analyzed objects is cases, event attribute values are filtered with the native event attribute filter rules instead of expression based filter rules.
* B-05093: Workspace visual layout has been improved and context menu is available also for projects, dashboards and datatables.
*B-07906: Implemented cross joins to SQL dataframes.
* B-05922: Component filter for case attribute and event type selectors.
*B-08267: Simplified Task log additional parameters by moving query parameters to the root level.
* B-05847: Presets performance improvements: Digital fit rate by attribute, Path until selected event, Path starting from selected event.
*B-08221: Snowflake query performance has been improved by using cached filters to build new filters.
* B-05836: Changed "Automation opportunity scout" to use even types as basis and implement optimizations.
*B-08231: Snowflake performance improved by splitting object counts (shown in header) query into two, so that the filtered object count query uses eventlog caching.
* B-05825: Better performing method to get event type names in model.
* B-08250: Business calendar calculation also takes into account calendars with overlapping periods.
* B-05821: Improved backend performance by removing unnecessary ToArray calls.
*B-03047: Removed support for dashboard panels.
* B-05817: Backend support for running expression scrips in web UI.
*B-08214: Removed unused columns from the PA_VIEW table.
* B-05855: Running expression scripts in ScriptLauncher.
*B-08254: Frontend components have been updated.
* B-05946: Data type conversions for CSV import.
*B-08255: Backend components have been updated.
* B-05944: CSV file writing for expression script through ScriptLauncher and client side execution using expression scripts.
* B-08233: Language translations have been updated to 2024.3.
* 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:'''
'''Fixed issues:'''
* D-11084: Syncfusion pivot table headers were not visible.
*D-14048: Fixed issue where in-memory root causes analysis for case attributes didn't show attributes with ShortString data type.
* D-11085: Tooltip in chart settings were stuck open in some occasions.
*D-14035: In design diagram, BPMN event and gateway symbols are now circular.
* D-09524: Polar chart showed wrong tooltips value and graph was shown incorrectly if polar chart disabled and enabled again.
*D-14049: Added some missing translations for table column filter and BPMN editor.
* D-11007: Workspace grid showed shortly incorrect content.
*D-14021: FindRootCauses function WeightingExpression was run in incorrect context for in-memory model.
* D-11030: Javascript error: "TypeError: Cannot read property 'length' of null" when returning to workspace.
*D-14020: Query which goes from EventTypes to Cases did not show the error when using GetValueFrom function.
* D-11042: Release package was much larger for 2021.4 than for earlier releases due to unnecessary Monaco editor files.
*D-13976: Fixed issue where gateway-based imports were not synchronous.
* D-11051: Negative timespans returned by server don't work in UI.
*D-13689: Fixed JavaScript error in Highcharts polar chart with tooltips.
* D-11052: Number of cases not updated when removing ModelId from dashboard properties.
*D-12614: Highcharts gives "Maximum call stack size exceeded" error in bar chart with polar and data labels.
* D-11054: Background color conditional formatting didn't work for non-numerical columns.
*D-14060: Highcharts custom layout translatable properties incorrectly changed chart configuration by translating the labels.
* D-11055: Extra space appeared in header when changing model and opening filters list.
*D-14071: Business calendar button press caused error when user didn't have access to any model.
* D-11058: Expression filters didn't work due to single quotes don't work anymore.
*D-14041: Manager Users dialog "Has password" field filter shows now Yes/No texts instead of true/false.
* D-11059: On-the-fly migration for existing stored expression filter rules using single quotes.
*D-11268: There were inconsistent button colors in Workspace.
* D-11068: When zooming and moving flowchart, following console error appeared: TypeError: Cannot read property 'behavior' of undefined.
* D-12264: Disabled stacked and polar charts for donut, packed bubble, sankey, dependency wheel, word cloud, and gantt charts.
* D-11073: Chart image export should have same scale as in the dashboard.
*D-14066: Fixed issue when EventTypes, Events.IncomingFlowOccurrence fails because there is event type filtering in in-memory model.
* D-11072: Index out of bounds error in Flow Duration analysis view.
*D-14081: Fixed null references error when logging null in expression script.
* 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.
==Additional release for QPR ProcessAnalyzer 2024.2 (build 5509) (released 2024-02-27)==
* 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) ==
'''Features:'''


'''Notes:'''
*B-06280: User management dialog shows whether users have password defined and unnecessary passwords can be removed to improve security.


<div style="border:1px solid #dfdfdf;padding:0.5em 1em 0.5em 1em;background-color:#E7EAEC;margin:10px 0px 0px 10px;">
'''Fixed issues:'''
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;">
*D-14045: Fixed issue where users with Viewer or Analyzer role couldn't create filters in Snowflake models.
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).
</div>


<div style="border:1px solid #dfdfdf;padding:0.5em 1em 0.5em 1em;background-color:#E7EAEC;margin:10px 0px 0px 10px;">
== QPR ProcessAnalyzer 2024.2 (build 5438) (released 2024-02-21)==
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/.
</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;">
Starting from QPR ProcessAnalyzer 2021.4, the 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).
The legacy User permissions report (analysis number 11) and Filters report (analysis number 30) used in SQL scripts have been removed. Use instead the expressions language to query filters and user permissions, e.g., [[QPR_ProcessAnalyzer_Objects_in_Expression_Language#Filter|Models.Filters]] and [[Generic_Properties_in_Expression_Language#RoleAssignments|RoleAssignments]] property.
</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;">
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.
New version of the Design diagram component has been improved with object-specific measures, and the previous common measures are not migrated into object-specific measures. Thus, the measures need to be configured again, or manually edit the chart json settings (if needed please ask instructions from QPR CustomerCare).
</div>
</div>


'''Features:'''
'''Features:'''  
* B-03297: Scripting is available in the web UI.
*B-08022: Design diagram supports now BPMN notation, elbow style flows and object-specific measures.
* B-03231: Recycle bin for models and projects is available in the web UI.
* B-08232: Entire future eventlogs can be [[Create_Predicted_Eventlog|predicted]] based on generative AI models running in Snowflake.
* B-05764: Table component in dashboards has been upgraded to newer generation of Syncfusion JS2.
*B-08166: Added expression language function [[Generic_Functions_in_QPR_ProcessAnalyzer#OpenAIChatCompletion|OpenAIChatCompletion]] to answer natural language prompts based on OpenAI ChatGPT API.
* B-05814: There are now default parameter values for most preset.
*B-08177: Snowflake query performance has been improved by introducing caching of filtered eventlogs using Snowflake tables.
* B-05812: Optimize "Automation opportunity scout" preset and remove root items duplicate removal from dimensioning
*B-08196: Conditional formatting rules can be defined for [[QPR_ProcessAnalyzer_Table#Textual_equal_rules_for_background_color|textual and boolean values]].
* B-05769&B-03081: "Cost Savings by Automation" preset performance has been improved.
*B-08213: Big data chart expressions event type selections to be multi-select where applicable.
* B-05745: Functions CaseByName and Reverse, and improved support for TimespanPrecision/DatetimeTruncation.
*B-08205: Expression language API is available for storing [[Storing_Secrets_for_Scripts|secrets]] for scripts.
* B-05750: Expression language functions for managing datatables.
*B-07780: Chart [[QPR_ProcessAnalyzer_Chart#Variable_mappings|variable mappings]] has been removed - use the [[Chart_Linked_Settings|linked settings]] instead. Dashboards using variable mappings are automatically converted to use linked settings.
* B-05800: Improvements to SQL script log writing.
* B-08117: Added ToSqlDataFrame function to convert in-memory dataframe into SQL dataframes.
* B-05083: Expression language scripting.
* B-08174: Only non-default parameters values are written to the operation log.
* B-05789: Expression language scripting: Run expression language scripts using Run function.
*B-08200: Timestamps in System reports are shown in user workstation local time.
* B-05799: Expression language scripting: Run SQL scripts using Run function.
*B-08171: Dashboard id has been added to queries, to track from which dashboard queries are originating.
* B-05752: Delete multiple items at the same time: Recyclebin.DeletePermanently().
*B-07144: Remove legacy User permissions report (analysis number 11) and Filters report (analysis number 30) in SQL scripts (see note above).
* B-05082: Distributed computing, part 5: Improving KPI analysis expressions and data import.
*B-08193: Added retry mechanism to QPR ScriptLauncher to recover if connection to server breaks.
* B-05762: Distributed computing, part 6: Improvements related to imports to external distributed computing systems
*B-08202: Updated copyright for year 2024.
* B-05790: Distributed computing, part 7: Filtering etc.
*B-08199: Frontend components have been updated.
* B-05775: Translations for 2021.4 release.
* B-08203: Backend components have been updated.
 
*B-08209: Translations updated for release 2024.2.
'''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:'''
* D-10965: "The given key was not present in the dictionary" error when calculating expression referring to attribute values.
* D-10985: SAML service provider self-signed certificate is renewed.
* D-10976: Donut showed slices in incorrect order.
* D-09534: Filters were not working correctly in some cases.
* D-10974: Median aggregation didn't work in table conditional formatting.
* D-10962: Tables conditional formatting referring to other columns, didn't work.
* D-10963: Chart table web links should not encode tag if it contains entire url.
* D-09581: Fix for error: Cannot read property 'length' of undefined.
* D-09589: The error message is now more specific in the "no access" case.
* D-09592: Fix for error: TypeError: Cannot read property 'querySelector' of null.
* D-09518: Stacking for Column Pyramid Chart alignment issue.
* D-09597: Case attribute and event type filter components are not showing counts and visualize items without cases.
* D-09591: Server required To field information to send a notification.
* D-09494: Username and setting was missing in ScriptLauncher logs.
* D-09535: TakeSample function should not decrease performance when sampling is not needed.
* D-09580: TakeSample function should support DataFrames.
* D-09610: Expression based greater/lower than filters don't show texts in header.
* D-09601: Filter rule editor bugs: wrong counts and existing filters not taken into account.
* D-09606: Flowchart doesn't show loading spinner.
* D-09609: JavaScript error when opening flowchart for the first time.
* D-10960: Client side query cache should be cleared when model is dropped, reloaded or model settings changed.
* D-10967: Missing translation for "Select All" filter option.
* D-10969: Fix for error: SyntaxError: Unexpected token u in JSON at position 0.
* D-10979: Browser log should not contain informational messages.
* D-10982: Model properties has problem to get new added datatables for CASE and EVENT Datasources.
* D-09522: Uncaught TypeError: Cannot read property 'call' of undefined.
* D-09911: Turn off filter rule will cause i[e][a] is not iterable at Function.compactFilterRules error.
* D-09510: Clicking workspace button or switching between editor modes don't close chart settings.
* 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) ==
 
'''Features:'''
* 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:'''
* 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) ==
 
'''Features:'''
* 308096: New function "EventLog" to expression language to explicitly define preprocessings.


'''Fixed issues:'''
'''Fixed issues:'''
* 219612: Opening models dropdown list jammed UI when there are lot of models.
*D-13972: Some measures/dimensions/columns in Big data chart didn't show the expressions level filtering.
* 219495: Improve error message when trying to change login name to already existing.
*D-14015: Fixed business calendar incorrect calculation when business period covered entire day.
*D-14014: Fixed issue where Snowflake business calendar could not have end time as 00:00.
*D-13962: System variable values were interpreted incorrectly when used in linked settings.
* D-13971: HiddenInNavigation and SortOrder variables didn't work in navigation menu dashboards list.
*D-13959: Removed possibility to add datatable columns with the legacy "any" data type.
*D-13991: Improved drop-down selector component to handle empty strings as variable values.
*D-13965: Datatable column name length was validated incorrectly which may have caused error in saving with too long column names.
*D-13958: Project names showed unnecessary html escaping in the "Move to" menu.
*D-13964: Model attributes and notifications dialogs gave error when trying to use dashboard tags.
*D-13960: Added missing translations for list of permission list and 12-hour clock format.
* D-13966: Fixed issue were root causes chart tooltip sometimes didn't disappear.
*D-13969: Datatable column schema export sometimes showed empty for the key column.
*D-13862: Session token was not accepted when url path capitalization is different.
*D-13942: Datatable could not be dimensioned if it has column named "CaseId".
*D-13980: Business calendar dialog crashed when tried to open it for a model without access.
*D-13983: Notifications dialog didn't validate situation when same name was used in a measure and dimension.
*D-13981: Dashboard import set incorrect model id to dashboard if there was no access to any model.
*D-11276: Translations were missing for 12-hour clock dates (AM and PM) in dashboards.
*D-13977: Multi-select dropdown lists showed some special characters incorrectly.
*D-13945: Syncfusion toast message didn't work when text contains ${[]}.
*D-13930: Pivot table throws javascript error when certain clicks.
*D-13273: Duplicate datatable row count didn't shown correctly.
*D-13994: There was an error in the in-memory chart with some flow related measures about duplicate variable names when same measure was defined twice.
*D-13985: Models list dots menu had texts misaligned in narrow screens.
*D-13995: In Workspace, wrong datatable was selected after duplication when non-default sorting was applied.
*D-13997: Workspace tables column filtering search caused JavaScript errors.
*D-13978: In table Excel export, the last row representing other items appeared incorrectly for in-memory chart.
*D-14007: In System reports, model related selections are hidden from the Analyzed objects lists.
*D-14005: In big data chart, changing to custom expression caused crash with some expressions having case/event attribute.
*D-14003: When dimensioning was not used, pivot table values were incorrectly rounded in the server side.
*D-14004: Removed empty filters from queries to optimize them.
*D-13988: Fixed issue where data grid context menu rendered initially as too high.
*D-13979: BPMN model editor element settings use now Open Sans font.
*D-14013: Fixed incorrect expression "Duration between first and last occurrence" in big data chart event types.
*D-13984: Fixed the error of refusing to run the JavaScript URL.
*D-14031: ThrownObject property was not included to http error response when error came from the script.


== QPR ProcessAnalyzer 2021.1 (build 156) (released 2021-01-12) ==
== QPR ProcessAnalyzer 2024.1 (build 4784) (released 2024-01-10)==


'''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 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.
QPR ProcessAnalyzer Server and QPR ScriptLauncher are now using .Net 8 (previous was .Net 6). When updating to this release, install the .Net 8 Runtime ([[Updating_QPR_ProcessAnalyzer_Server|see more]]). The .Net 6 doesn't need to be uninstalled immediately because .Net 6 and .Net 8 work side-by-side, but due to security reasons, the unused .Net 6 should eventually be uninstalled.
</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 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.
In this release, all filters that don't contain any filter rules, are removed. These are legacy filters which have not been visible in the UI.
</div>
 
<div style="border:1px solid #dfdfdf;padding:0.5em 1em 0.5em 1em;background-color:#E7EAEC;margin:10px 0px 0px 10px;">
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>
</div>


'''Features:'''
'''Features:'''
* 308075: Chart data point colors can be defined using [[QPR_ProcessAnalyzer_Graphs#Conditional_Formatting|conditional formatting]].
*B-08019: New component [[Design Diagram]] for showing user-created diagrams in dashboards where to visualize process mining metrics.
* 307816: Datatables to workspace (part 1).
*B-08087: Generic [[Dropdown_List_Selector|dropdown list selector]] works with Snowflake models allowing to add selection lists for any values.
* 308076: QPRLibraries migration to Syncfusion JS2 (part 4).
*B-08163: Linked settings support for binding to [[Chart_Linked_Settings#Binding_to_case_attribute_filters_with_attribute_name_and_attribute_values|case attribute filter values without defining case attribute name]].
* 308086: Syncfusion JS2 update.
*B-08170: Snowflake model filters can be [[Filtering_in_QPR_ProcessAnalyzer#Filter_actions|saved as new models]] which can be used to create snapshots of part of models.
* 307975: Data grid presentation objects and datasets have been removed.
*B-08093: Multiple dashboards can be exported to same file, and model can be set for imported dashboards.
* 307974: Remove HTML presentation objects have been removed.
* B-08161: Added [[Datatable_in_Expression_Language#Modify|Modify]] function to change datatable properties and improved [[QPR_ProcessAnalyzer_Objects_in_Expression_Language#CreateDatatable|CreateDatatable]] function for creating datatables.
* 308073: Create presentation object types for all HTML presentation objects used in system views - part 2.
*B-08122: Added new system report to list dashboards.
* 308077: Translation updates for PA release 2021.1.
*B-08173: Removed legacy filters that didn't have any filter rules.
* 307652: Remove QPR Connector.
*B-07961: In OperationLog, changed parameters to json format and added request id.
* 307709: Remove most of Excel client functionality and support of Xpress.
*B-08069: Added DashboardId property to [[Generic_Properties_in_Expression_Language#OperationLog|OperationLog]] in expression language.
* 308039: Web API for terminating operations.
*B-08139: Added [[Datatable_in_Expression_Language#UpdateRows|UpdateRows]] function to update existing rows in datatables with similar logic than SQL update.
* 308046: Web API for copying datatable.
*B-08115: Added [[Datatable_in_Expression_Language#DeleteRows|DeleteRows]] function to delete rows in datatables with similar logic than SQL delete.
* 308051: [[Importing_Data_from_SAP|Data type conversions]] have been improved for SAP import.
*B-08149: QPR ProcessAnalyzer has been updated to .Net 8.
* 308105: Copyright information update to 2021.
*B-08054: Changed Scripts property in generic context to return all scripts, instead of legacy system level scripts.
* 308063: SmtpFromAddress setting for sending email.
*B-08138: Changed Synchronize function to remove all columns when no Snowflake table exists.
* 307368 & 308084: Business calendar for duration calculation.
* B-07689: For datatables, [[Datatable_in_Expression_Language#ForeignKeys|foreign keys]] to other datatables can be defined using expression language.
* 307565: Expression filter rule improvements for comparing numerical values.
*B-08176: Translation updates for release 2024.1.
* 307990: Email notifications part 1.
*B-08175: Workspace should show timestamps in user's local time.
* 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.
*D-13913: Datatable properties dialog incorrectly showed linked models from other projects.
* 219590: UI got frozen when opening workspace from home view if no other system view opened just before.
*D-13916: Chart filter could not be defined for some expressions in Big data chart.
* 219595: Long words were not wrapped in message dialog.
*D-13933: Navigation menu selected item wasn't highlighted when used Snowflake models.
* 219519: Error message did not show clear enough information.
*D-13906: In Conformance Analysis, deviating flows were not translated.
* 219557: Root causes analysis is changed to take into account summary row column count.
*D-13907: Improved translation related to datatable properties dialog "Used by models" field.
* 219592: Excel client installer did not contain all connector files.
*D-13904: There was an unclear error message in Snowflake, as exception code 1 was returned without AttributeName and ModelName properties when non-existing attribute was in filter.
* 219600: Confirmation message is improved when deleting project.
*D-13911: Fixed small glitches in the opening and closing of drop-down lists.
* 219607: Dashboards don't work with bpmn models having linebreaks.
* D-13918: Datatable could be configured incorrectly to use table for other datatable.
* 219604: Special characters do not work correctly in chart settings.
*D-13932: Duplicating datatable with custom table in datasource losed all data.
* 219606: Using dashboard links sometimes causes an error message to popup.
*D-11002: Removed legacy in-memory prediction preset.
* 219608: Conformance statistics po tooltip in tool palette is incorrect.
*D-13912: Added check that array cannot be stored to dashboard Content property.
* 219593: Getting data tables is really slow and the query times out after 30 seconds.
*D-13936: Query designer default query didn't work with Snowflake models.
* 219582: ScriptLauncher not work in direct database mode.
*D-13938: There was an incorrect logging with some operations related to ScriptLauncher.
* 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.
*D-13923: Snowflake expressions didn't work with Where function in root referring to case attribute.
* 219544: Inconsistent # Cases Total when running an analysis.
*D-13939: ApplyFilter function gave null reference error for non-existing attribute name.
* 219539: Excessively large amount of data added into expression language exception messages.
*D-13931: There were issues with AllowExternalDatasources and EnableFullFunctionality settings.
* 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.


== Old Releases ==
== Old Releases==
See older releases in [[QPR ProcessAnalyzer Release Archive]]
See older releases in [[QPR ProcessAnalyzer Release Archive]]
__NOTOC__
__NOTOC__


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

Latest revision as of 12:34, 1 April 2025

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

Next Release: QPR ProcessAnalyzer 2025.3 (planned release date 2025-04-15)

See plan for next release features and fixes

Latest release: 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.

QPR ProcessAnalyzer 2024.8 (build 8937) (released 2024-12-11)

Known issue: There may be old invalid models which don't work with QPR ProcessAnalyzer 2024.8. The following query can be run in the Expression Designer (with System administrator user) to list such models:

Models.Where(!IsOcelModel && Configuration.TryGetValue("DataSource").TryGetValue("Events").TryGetValue("DataSourceType") == _EMPTY).(Project.Name + ": " + Name + " (" + Id + ")")

Those models don't have a valid datasource defined and thus they are likely not is use. Easiest solution is to delete those models with following command:

ModelById(<id>).DeletePermanently()

SQL Server database compatibility level needs to be at least 130 (corresponding to SQL Server 2016) for databases used by QPR ProcessAnalyzer. When using a supported version of SQL Server, the database compatibility level might still be unsupported, so please check to used compatibility level. It's recommended to set the highest available compatibility level. More information: https://learn.microsoft.com/en-us/sql/relational-databases/databases/view-or-change-the-compatibility-level-of-a-database.

External content component doesn't allow to embed websites from other origins than the QPR ProcessAnalyzer server. This is due to a change in the Content security policy (CSP) HTTP header (more information: Security hardening). The content security policy HTTP header can be modified in the appsettings.json file. More information about the same-origin policy: https://developer.mozilla.org/en-US/docs/Web/Security/Same-origin_policy.

QPR ProcessAnalyzer now uses the Microsoft.Data.SqlClient library for SQL server connection instead of the System.Data.SqlClient library, and there are slight differences with the connection string parameter default values. If using a self-signed certificate in the SQL Server with the encrypted connection, it might require to add TrustServerCertificate=True to the connection string, so that QPR ProcessAnalyzer will trust the self-signed certificate and allow the database connection.

Project Designer and Administrator roles can now create models and datatables in the project. Earlier these operations required the global Create models role. This global role is now renamed to Create projects, describing its new purpose.

Features

  • B-08395: Added native object-centric flowchart showing predefined measures.
  • B-08396: Object attributes are now available as case attributes in object-centric perspective.
  • B-08449: Snowflake Native App supports project-specific database, schema, and warehouse.
  • B-08432: Decision intelligence event log prediction and simulation has been integrated into QPR ProcessAnalyzer.
  • B-03062: Project Designer and Administrator roles can now create models and datatables, and global "Create models" role changed to "Create projects".
  • B-08471: Model properties dialog has been simplified for Native App to exclude in-memory model datasources.
  • B-08504: Charts don't automatically change case/event attributes and event types when encountering non-existing selections.
  • B-08522: Optimized Snowflake queries that do not need event data.
  • B-08454: Optimized SQL executed in Snowflake by removing unnecessary column type casts.
  • B-08507: Migrated tables for scripts and script logs to Entity Framework.
  • B-08519: Migrated user management tables to Entity Framework.
  • B-08539: Migrated model, project and filter tables to Entity Framework.
  • B-08514: Updated translations for release 2024.8.
  • B-08515: Frontend components have been updated.
  • B-08513: Backend components have been updated.

Fixed issues

  • D-14320: On-screen setting didn't work when "dynamicType" is "DataTablesOfProject".
  • D-14221: Content-Security-Policy HTTP headers allows only same origin for iframes, and X-Frame-Options HTTP header removed.
  • D-14317: Model statistics system report gave error about invalid expression.
  • D-14286: Fixed issue in model import which sometimes created partially configured model.
  • D-14315: Filtering for custom dimensions didn't work, if expression refers to measures with variables.
  • D-14302: "let" statement did not work in #expr-block embedded into SQL expression.
  • D-14303: Flowchart lost selection when flowchart used linked variables.
  • D-14311: Fixed issue were dashboards were not visible in iPhone.
  • D-14301: Filtering from "First event attribute value" and "Last event attribute value" columns did not work.
  • D-14314: Fixed error in BPMN editor when object-centric model didn't have perspective defined.
  • D-14297: Native App incorrectly cached OAuth token causing "OAuth access token expired" errors.
  • D-14248: Improved error message "Unable to read event log data from external source without specified sample size".
  • D-12402: Fixed issue where flowchart start/end flows didn't start from middle of start/end symbols.
  • D-14293: AI Assistant didn't work with object-centric models.
  • D-14295: Fixed issue where authentication was not possible if PA_ROLE table contained roles with ROL_FLAGS field having NULL values.
  • D-14245: When dialog was opened in Workspace, console showed following error: "Blocked aria-hidden on a <button> element because the element that just received focus ...".

QPR ProcessAnalyzer 2024.7 (build 8234) (released 2024-10-29)

If using local datatables (stored in SQL Server), the SqlServerConnectionString setting is now mandatory. Starting from QPR ProcessAnalyzer 2024.7, local datatables cannot be created if the setting is not configured. It's recommended to have a separate database for the datatables data, but it's also possible to configure the same connection to the SqlServerConnectionString setting as for the configuration database (in appsettings.json). See System Architecture for more information about the data storage.

Check whether there are custom roles in the database (table PA_ROLE) which have the ROL_FLAGS field set to NULL. The NULL values don't work with this release, so set a correct value (either 1, 2, or 3). Following query can be run in the database showing roles which have an incorrect ROL_FLAGS field:

SELECT *
FROM [PA_ROLE]
WHERE [ROL_FLAGS] = NULL;

Snowflake user-defined functions (UDF) used by QPR ProcessAnalyzer have been updated to use Python 3.11. Old versions of the functions use Python 3.8 which has been deprecated by Snowflake. Although the old versions are not anymore used by QPR ProcessAnalyzer, they are not automatically deleted and thus Snowflake may send notifications emails about existing deprecated functions. It's recommended to remove the old functions which are following:

  • QPRPA_UDF_BC_DURATION_BETWEEN_DATES
  • QPRPA_UDF_BC_DURATION_BETWEEN_DATES_V2
  • QPRPA_UDF_BC_DURATION_BETWEEN_DATES_V3
  • QPRPA_UDF_BC_DURATION_BETWEEN_DATES_V4
  • QPRPA_UDF_BC_DURATION_BETWEEN_DATES_V5
  • QPRPA_UDTF_CLUSTER
  • QPRPA_UDTF_CLUSTER_V2
  • QPRPA_UDTF_CLUSTER_V3
  • QPRPA_UDF_BPMN_IS_CONFORMANT
  • QPRPA_UDF_BPMN_CONFORMANCE_VIOLATIONS_FLOWS

Features

  • B-08458: Object-centric perspectives can be stored as filters and object-centric model can be selected for dashboard.
  • B-08472: Snowflake filter cache tables are now created in background to improve performance.
  • B-08452: Limited sampled cases to 10000 in Snowflake and in-memory clustering presets.
  • B-08430: Improved Snowflake flowchart performance by calculating variations using sampling.
  • B-08446: QPR ProcessAnalyzer can be deployed as Snowflake application package to publish it as a native app.
  • B-08418: QPR ProcessAnalyzer has been integrated into Snowflake authentication for Snowpark Container Services.
  • B-08420: Legacy "Local" datatables cannot be created anymore - only separate SQL Server database is supported (see release note above).
  • B-08437: Snowflake cache is now bypassed for queries that have caching disabled.
  • B-08443: Improved object-centric models performance by optimizing perspective generation.
  • B-08450: Updated Snowflake UDF's python version from 3.8 to 3.11 (see release note above).
  • B-08425: Migrated nine configuration data tables to use Entity Framework.
  • B-08334: Removed legacy functionality related to models.
  • B-08337: Removed legacy functionality related to roles.
  • B-08456: Frontend components have been updated.
  • B-08477: Backend components have been updated.
  • B-08478: Updated translations for release 2024.7.

Fixed issues

  • D-14263: Filtering with case id caused error when Snowflake model didn't have case attributes datatable.
  • D-14256: Workspace showed progress spinner forever if trying to remove rows from table where there is no access.
  • D-14250: "Show in Query Designer" button didn't show full query sent to server.
  • D-14285: Non-breaking spaces didn't work in json fields.
  • D-14278: Workspace models list showed linked cases/events datatable even though datatable didn't exist.
  • D-14251: Aggregations list in Combined measure/dimension/column incorrectly showed aggregations for all data types.
  • D-14257: Exporting datatable with no columns froze loading spinner.
  • D-14188: Script incorrectly aborted after error occurring in the import phase of client-side import.
  • D-14275: Several "Loop percentage" event measures caused flowchart error.
  • D-14259: Removed malfunctioning undo/redo operations from Design diagram.
  • D-14260: Design diagram toolbar incorrectly scrolled to left when diagram was zoomed.
  • D-14262: Opening version information caused javascript error if backend communication failed.
  • D-14271: None aggregation didn't work with some Statistical calculations.
  • D-14283: BPMN editor toolbox has now correct font.
  • D-14280: Dashboard component stacking order buttons didn't work if dashboard had z-indeces with gaps.

QPR ProcessAnalyzer 2024.6 (build 7414) (released 2024-09-18)

Features:

  • B-08366: Frontend for OCPM model configuration and Snowflake charts using perspectives.
  • B-08365: Added following visual settings for KPI Card: font size, text color, text styles, vertical and horizontal alignment.
  • B-08382: Measures, dimensions and columns can be duplicated in chart settings.
  • B-08381: Table vertical scrollbar is now hidden when table is not scrollable.
  • B-08355: Expression language identifiers are primarily assumed as variables and secondarily as property names.
  • B-08402: QPR ProcessAnalyzer can now connect to Snowflake when running in Snowpark Container Services.
  • B-08389: Added support for making multiple Snowflake queries in same request for OCPM queries.
  • B-08416: Improved backend functionality for partially configured OCEL models.
  • B-08428: Improved Snowflake calculation performance by including to filter cache tables only the event table key (this behavior can be opt-in with a CacheOnlyPrimaryKeysForFilters setting).
  • B-08448: Add configuration to disable event cache tables storing primary key only.
  • B-08340: New users don't have a default model selected when login for the first time.
  • B-08413: Frontend components have been updated.
  • B-08397: Backend components have been updated.
  • B-08398: Updated translations for release 2024.6.

Fixed issues:

  • D-14209: Fixed issue where moving projects in Workspace was not possible.
  • D-14186: Highcharts visualizations datalabel texts were incorrectly shown over tooltips.
  • D-14210: Fixes for issue with incorrectly shown pending tasks in System Reports.
  • D-14242: SqlDataFrame Persist function now keeps the original column types even if they are changed.
  • D-14147: Snowflake queries gave "Object reference not set to an instance of an object" error with MaximumRowCount higher than 2 billion.
  • D-14189: Dropdown list component gave following error when clicking Add button for "List items": Cannot read properties of undefined (reading 'axisLabel').
  • D-14192: Datagrid paging settings are now preserved when resizing or zooming window.
  • D-14214: In System reports, dropdown list showing dashboards didn't open if there were more than 1000 dashboards.
  • D-14218: CSV file import didn't detect existing column correctly when there was difference only in letter case.
  • D-14184: Giving ScriptText or ScriptFileName as parameter for QPR ScriptLauncher created a broken script.
  • D-14220: AI assistant gave strange error message when trying to explain chart showing error.
  • D-14135: Expression based Snowflake filter rule caused error "Object reference not set to an instance of an object".
  • D-14229: In Snowflake, disabled filter rules didn't affect header object counts when there were several filter rules.
  • D-14228: In Models and Model statistics reports, columns showing case and event attributes didn't work.
  • D-14213: In User Settings dialog, Effective Permissions settings are now preserved while dialog is open.
  • D-14227: Fixed issue where applying chart settings in System reports made settings pane empty.
  • D-14185: Stack traces were incorrectly returned even if IncludeExceptionDetailsInErrors was false.
  • D-14226: Fixed several OCPM calculation related issues in backend.
  • D-13943: Added error message to Case attribute selector when model doesn't have selected case attribute.
  • D-14162: Expression "0.()" gave null reference error.
  • D-14246: Chart setting dialog may have been partly out of screen when activating other chart while in dashboard is scrolled.
  • D-14238: Snowflake chart measure aggregation is incorrectly affected by statistical calculations.
  • D-14133: In Snowflake chart, events Aggregate settings caused JaveScript error and UI messed up.
  • D-14172: Fixed issue where validation error appeared when copying and moving elements in Design Diagram.
  • D-14253: Table didn't show column filter icon when column name was empty.

Additional release for QPR ProcessAnalyzer 2024.5 (build 6814) (released 2024-07-01)

Known issue: It's not possible to move projects that existed before updating to this release. The issue will be fixed in the next release. There is a following workaround available: Administrator user can go to the Expression Designer and run the following expression: Projects.Modify(#{}).

Fixed issues:

  • D-14191: Running script by id failed on data import when parameters contained ScriptId.
  • D-14183: Fixed issue where flowchart SVG export only exported the visible part of flowchart.

Additional release for QPR ProcessAnalyzer 2024.5 (build 6769) (released 2024-06-27)

Features:

  • B-08388: Added backend support for OCPM model perspectives to convert object-centric eventlogs into case-centric.

Fixed issues:

  • D-14187: Creating local datatables was not possible in Workspace if datatables were stored to the configuration database (i.e., SqlServerConnectionString setting is not used).

QPR ProcessAnalyzer 2024.5 (build 6746) (released 2024-06-25)

Features:

  • B-08338: Added reports to monitor dashboards usage: Popular dashboards, Dashboards by users and by time, and specific dashboard usage.
  • B-08314: Snowflake connection string can be specified for each project to allow projects connecting to different Snowflake accounts, databases or schemas.
  • B-08341: Added GetRelatedValueFrom and AggregateRelatedValueFrom SQL expression functions to extend models with data from additional tables.
  • B-08301: In chart settings, selecting another measure/dimension/column now doesn't reset settings.
  • B-08317: Added Snowflake presets for Root Causes for Attributes in table and detailed table format.
  • B-08318: Improved Snowflake Events preset performance by adding a filter that picks a subset of cases.
  • B-08385: Open AI default large language model has been changed to "gpt-4o".
  • B-08342: Added DashboardName and DashboardProjectName properties to OperationLog in expression language.
  • B-08320: Added RenameAllColumns function to dataframes to easily rename all columns.
  • B-08321: Added DataSourceConnection property to dataframes in expression language.
  • B-08307: Finetuned Workspace functionality for models that don't have datasource defined.
  • B-08329: Optimized metadata queries to Snowflake to improve performance.
  • B-08311: Changed QPR ScriptLauncher interaction with the server by changing long polling to short calls to improve robustness.
  • B-08368: Implemented backend support for configuring and importing OCPM models.
  • B-08352: Frontend components have been updated.
  • B-08348: Backend components have been updated.
  • B-08349: Updated translations for release 2024.5.

Fixed issues:

  • D-14150: Charts temporarily showed as too large when resized with non-zero chart margin values.
  • D-14058: Login page is not anymore shown when SAML authentication is configured and user is directed to the identity provider.
  • D-11579: Column filter menu in tables can now appear outside the table area which is useful in small tables.
  • D-14144: Fixed issue where Snowflake clustering failed if there were date type of case attribute with null values.
  • D-14163: Non-breaking spaces appeared strangely as "&nbsp;" in Highcharts charts.
  • D-14132: Snowflake model object counts were not shown when opening dashboard while model metadata was still loading.
  • D-14142: CreateDataTable function incorrectly deleted all source datatable content if connection included source datatable name.
  • D-14161: Fixed issue where Append function in SqlDataFrame broke source data.
  • D-14157: AI Assistant didn't show detailed error message when OpenAI query failed.
  • D-14137: AI Assistant incorrectly appeared on top of chart in the fullscreen mode.
  • D-14170: Toolbar dropdown lists didn't work when dashboard contained more than one Design Diagram.
  • D-14146: Fixed error "Unable to get on-premise gateway named..." when running script from SQL script using QPR ScriptLauncher.
  • D-14106: Having only a template string in the #expr{...} block didn't work.
  • D-14008: "Root Causes contribution" and "Comparison eventlog cases percentage" columns didn't work (in-memory).
  • D-14010: Occurrences of specific flow measure didn't work with the Root causes analysis weighting expression (in-memory).
  • D-14148: Root causes for case duration preset didn't support Multi-unit time settings.
  • D-14139: Added info message when successfully exporting model to pacm file.
  • D-14153: Fixed in-memory measures for "Flow duration" and "Occurrences of specific flow" which failed when selected flow didn't exist.
  • D-14167: Fixed issue where ScriptLauncher sometimes terminated prematurely on exceptions occurring in on-premise import.
  • D-14165: Flowchart export file name was incorrect and exported flowchart background was always transparent.
  • D-14160: Fixed issue where DashboardId wasn't recorded to operation log when opening dashboard by identifier (DashboardsController.GetByIdentifierPath).
  • D-14159: IsHidden property didn't work in in-memory Value expressions.
  • D-14131: Some popup messages had incorrect html escaping.
  • D-14151: Fixed issue where flowchart might have given browser console error when clicking event types or flows while still loading data.
  • D-14022: In System reports, numeric aggregations which don't work in SQL Server are now hidden.
  • D-14129: Imported model name was incorrectly cut if it contained dots.

QPR ProcessAnalyzer 2024.4 (build 6246) (released 2024-05-14)

Features:

  • B-08227: Dashboards have AI Assistant (powered by ChatGPT) helping users in process analysis. AI Assistant can answer general questions about the process, create filters based on user prompt, and explain charts and analyses.
  • B-08277: QPR ProcessAnalyzer now detects automatically when cases or events data in Snowflake updates. Check is done every 5 minutes which is the maximum delay of detecting new data. (more information)
  • B-08322: OpenAI model name can be configured by administrator. The model is used by the AI Assistant and (by default) the OpenAIChatCompletion function.
  • B-08264: Workspace is now showing child projects in the top level when there is no access to parent project.
  • B-08276: Adjusted permissions for moving projects.
  • B-08310: Added Details property to Exception object in expression language.
  • B-08328: Language translations have been updated to 2024.4.
  • B-08312: Frontend components have been updated.
  • B-08308: Backend components have been updated.

Fixed issues:

  • D-14084: Filter rule for first and last event in case couldn't be edited if there were more than one event selected.
  • D-14091: Duration multi-unit didn't work in big data chart.
  • D-14095: Flowchart sometimes crashed with color mapping in use to an event type measure with null values.
  • D-14105: Snowflake root causes analysis showed incorrect row count when Contribution was Contributing or Impeding.
  • D-14107: Snowflake model that has earlier been an in-memory model showed case count and estimated memory incorrectly.
  • D-14074: Fixed issue in QPR ScriptLauncher when calling the script from other script.
  • D-14104: Fixed expression language parsing issue with in-memory DataFrame and filter using "In" function.
  • D-14121: Datatable UpdateRows function now supports column names given as expressions.
  • D-14085: Measure/dimension/column settings dialog didn't open for Event attribute when drop-down list values weren't selected.
  • D-14123: There was an error of unable to get on-premise gateway when using ExtractSap function in expression language script from SQL script called from expression language script.
  • D-14128: Table without title was incorrectly exported as .txt file.
  • D-14112: Convert to custom expression button didn't work in design diagram.
  • D-14100: In Workspace, project bread crumbs didn't update when moving the selected project.
  • D-14094: Measure unit was incorrectly shown for textual values and the unit could not be changed in chart settings.
  • D-14097: In Workspace, added progress spinner to prevent starting a new operation while the previous is still in progress.
  • D-14096: Highcharts tooltip square icons were slightly misaligned.
  • D-14099: There was a console warning when opening the business calendar dialog.
  • D-14118: Design diagram sometimes gave following JavaScript error: Cannot read properties of undefined (reading 'parentNode').
  • D-14024: If quickly logging out after changing model, the model change might not be been saved.
  • D-14120: User.getAttribute function returned values from incorrect context.
  • D-14102: Pivot table cannot read properties of undefined.
  • D-14161: SqlDataFrame.Append breaks the used source SqlDataFrames

QPR ProcessAnalyzer 2024.3 (build 5801) (released 2024-04-04)

Features:

  • B-08024: Design diagram has now swimlanes and BPMN expanded subprocesses. Also indirect flows can be included when calculating flow measures.
  • B-08242: Script based actions can be started from dashboard table context menu, extending dashboard functionality to e.g., create tickets, trigger automation, and fetch external information.
  • B-08268: (1) In Overview flowchart preset, flow width visualizes now case volumes instead of flow duration. (2) When converting Snowflake expression into custom, the expression filter is preserved and not embedded into the custom expression.
  • B-08288: Added expression language functions to start and stop scripts.
  • B-08252: When Analyzed objects is cases, event attribute values are filtered with the native event attribute filter rules instead of expression based filter rules.
  • B-07906: Implemented cross joins to SQL dataframes.
  • B-08267: Simplified Task log additional parameters by moving query parameters to the root level.
  • B-08221: Snowflake query performance has been improved by using cached filters to build new filters.
  • B-08231: Snowflake performance improved by splitting object counts (shown in header) query into two, so that the filtered object count query uses eventlog caching.
  • B-08250: Business calendar calculation also takes into account calendars with overlapping periods.
  • B-03047: Removed support for dashboard panels.
  • B-08214: Removed unused columns from the PA_VIEW table.
  • B-08254: Frontend components have been updated.
  • B-08255: Backend components have been updated.
  • B-08233: Language translations have been updated to 2024.3.

Fixed issues:

  • D-14048: Fixed issue where in-memory root causes analysis for case attributes didn't show attributes with ShortString data type.
  • D-14035: In design diagram, BPMN event and gateway symbols are now circular.
  • D-14049: Added some missing translations for table column filter and BPMN editor.
  • D-14021: FindRootCauses function WeightingExpression was run in incorrect context for in-memory model.
  • D-14020: Query which goes from EventTypes to Cases did not show the error when using GetValueFrom function.
  • D-13976: Fixed issue where gateway-based imports were not synchronous.
  • D-13689: Fixed JavaScript error in Highcharts polar chart with tooltips.
  • D-12614: Highcharts gives "Maximum call stack size exceeded" error in bar chart with polar and data labels.
  • D-14060: Highcharts custom layout translatable properties incorrectly changed chart configuration by translating the labels.
  • D-14071: Business calendar button press caused error when user didn't have access to any model.
  • D-14041: Manager Users dialog "Has password" field filter shows now Yes/No texts instead of true/false.
  • D-11268: There were inconsistent button colors in Workspace.
  • D-12264: Disabled stacked and polar charts for donut, packed bubble, sankey, dependency wheel, word cloud, and gantt charts.
  • D-14066: Fixed issue when EventTypes, Events.IncomingFlowOccurrence fails because there is event type filtering in in-memory model.
  • D-14081: Fixed null references error when logging null in expression script.

Additional release for QPR ProcessAnalyzer 2024.2 (build 5509) (released 2024-02-27)

Features:

  • B-06280: User management dialog shows whether users have password defined and unnecessary passwords can be removed to improve security.

Fixed issues:

  • D-14045: Fixed issue where users with Viewer or Analyzer role couldn't create filters in Snowflake models.

QPR ProcessAnalyzer 2024.2 (build 5438) (released 2024-02-21)

The legacy User permissions report (analysis number 11) and Filters report (analysis number 30) used in SQL scripts have been removed. Use instead the expressions language to query filters and user permissions, e.g., Models.Filters and RoleAssignments property.

New version of the Design diagram component has been improved with object-specific measures, and the previous common measures are not migrated into object-specific measures. Thus, the measures need to be configured again, or manually edit the chart json settings (if needed please ask instructions from QPR CustomerCare).

Features:

  • B-08022: Design diagram supports now BPMN notation, elbow style flows and object-specific measures.
  • B-08232: Entire future eventlogs can be predicted based on generative AI models running in Snowflake.
  • B-08166: Added expression language function OpenAIChatCompletion to answer natural language prompts based on OpenAI ChatGPT API.
  • B-08177: Snowflake query performance has been improved by introducing caching of filtered eventlogs using Snowflake tables.
  • B-08196: Conditional formatting rules can be defined for textual and boolean values.
  • B-08213: Big data chart expressions event type selections to be multi-select where applicable.
  • B-08205: Expression language API is available for storing secrets for scripts.
  • B-07780: Chart variable mappings has been removed - use the linked settings instead. Dashboards using variable mappings are automatically converted to use linked settings.
  • B-08117: Added ToSqlDataFrame function to convert in-memory dataframe into SQL dataframes.
  • B-08174: Only non-default parameters values are written to the operation log.
  • B-08200: Timestamps in System reports are shown in user workstation local time.
  • B-08171: Dashboard id has been added to queries, to track from which dashboard queries are originating.
  • B-07144: Remove legacy User permissions report (analysis number 11) and Filters report (analysis number 30) in SQL scripts (see note above).
  • B-08193: Added retry mechanism to QPR ScriptLauncher to recover if connection to server breaks.
  • B-08202: Updated copyright for year 2024.
  • B-08199: Frontend components have been updated.
  • B-08203: Backend components have been updated.
  • B-08209: Translations updated for release 2024.2.

Fixed issues:

  • D-13972: Some measures/dimensions/columns in Big data chart didn't show the expressions level filtering.
  • D-14015: Fixed business calendar incorrect calculation when business period covered entire day.
  • D-14014: Fixed issue where Snowflake business calendar could not have end time as 00:00.
  • D-13962: System variable values were interpreted incorrectly when used in linked settings.
  • D-13971: HiddenInNavigation and SortOrder variables didn't work in navigation menu dashboards list.
  • D-13959: Removed possibility to add datatable columns with the legacy "any" data type.
  • D-13991: Improved drop-down selector component to handle empty strings as variable values.
  • D-13965: Datatable column name length was validated incorrectly which may have caused error in saving with too long column names.
  • D-13958: Project names showed unnecessary html escaping in the "Move to" menu.
  • D-13964: Model attributes and notifications dialogs gave error when trying to use dashboard tags.
  • D-13960: Added missing translations for list of permission list and 12-hour clock format.
  • D-13966: Fixed issue were root causes chart tooltip sometimes didn't disappear.
  • D-13969: Datatable column schema export sometimes showed empty for the key column.
  • D-13862: Session token was not accepted when url path capitalization is different.
  • D-13942: Datatable could not be dimensioned if it has column named "CaseId".
  • D-13980: Business calendar dialog crashed when tried to open it for a model without access.
  • D-13983: Notifications dialog didn't validate situation when same name was used in a measure and dimension.
  • D-13981: Dashboard import set incorrect model id to dashboard if there was no access to any model.
  • D-11276: Translations were missing for 12-hour clock dates (AM and PM) in dashboards.
  • D-13977: Multi-select dropdown lists showed some special characters incorrectly.
  • D-13945: Syncfusion toast message didn't work when text contains ${[]}.
  • D-13930: Pivot table throws javascript error when certain clicks.
  • D-13273: Duplicate datatable row count didn't shown correctly.
  • D-13994: There was an error in the in-memory chart with some flow related measures about duplicate variable names when same measure was defined twice.
  • D-13985: Models list dots menu had texts misaligned in narrow screens.
  • D-13995: In Workspace, wrong datatable was selected after duplication when non-default sorting was applied.
  • D-13997: Workspace tables column filtering search caused JavaScript errors.
  • D-13978: In table Excel export, the last row representing other items appeared incorrectly for in-memory chart.
  • D-14007: In System reports, model related selections are hidden from the Analyzed objects lists.
  • D-14005: In big data chart, changing to custom expression caused crash with some expressions having case/event attribute.
  • D-14003: When dimensioning was not used, pivot table values were incorrectly rounded in the server side.
  • D-14004: Removed empty filters from queries to optimize them.
  • D-13988: Fixed issue where data grid context menu rendered initially as too high.
  • D-13979: BPMN model editor element settings use now Open Sans font.
  • D-14013: Fixed incorrect expression "Duration between first and last occurrence" in big data chart event types.
  • D-13984: Fixed the error of refusing to run the JavaScript URL.
  • D-14031: ThrownObject property was not included to http error response when error came from the script.

QPR ProcessAnalyzer 2024.1 (build 4784) (released 2024-01-10)

QPR ProcessAnalyzer Server and QPR ScriptLauncher are now using .Net 8 (previous was .Net 6). When updating to this release, install the .Net 8 Runtime (see more). The .Net 6 doesn't need to be uninstalled immediately because .Net 6 and .Net 8 work side-by-side, but due to security reasons, the unused .Net 6 should eventually be uninstalled.

In this release, all filters that don't contain any filter rules, are removed. These are legacy filters which have not been visible in the UI.

Features:

  • B-08019: New component Design Diagram for showing user-created diagrams in dashboards where to visualize process mining metrics.
  • B-08087: Generic dropdown list selector works with Snowflake models allowing to add selection lists for any values.
  • B-08163: Linked settings support for binding to case attribute filter values without defining case attribute name.
  • B-08170: Snowflake model filters can be saved as new models which can be used to create snapshots of part of models.
  • B-08093: Multiple dashboards can be exported to same file, and model can be set for imported dashboards.
  • B-08161: Added Modify function to change datatable properties and improved CreateDatatable function for creating datatables.
  • B-08122: Added new system report to list dashboards.
  • B-08173: Removed legacy filters that didn't have any filter rules.
  • B-07961: In OperationLog, changed parameters to json format and added request id.
  • B-08069: Added DashboardId property to OperationLog in expression language.
  • B-08139: Added UpdateRows function to update existing rows in datatables with similar logic than SQL update.
  • B-08115: Added DeleteRows function to delete rows in datatables with similar logic than SQL delete.
  • B-08149: QPR ProcessAnalyzer has been updated to .Net 8.
  • B-08054: Changed Scripts property in generic context to return all scripts, instead of legacy system level scripts.
  • B-08138: Changed Synchronize function to remove all columns when no Snowflake table exists.
  • B-07689: For datatables, foreign keys to other datatables can be defined using expression language.
  • B-08176: Translation updates for release 2024.1.
  • B-08175: Workspace should show timestamps in user's local time.

Fixed issues:

  • D-13913: Datatable properties dialog incorrectly showed linked models from other projects.
  • D-13916: Chart filter could not be defined for some expressions in Big data chart.
  • D-13933: Navigation menu selected item wasn't highlighted when used Snowflake models.
  • D-13906: In Conformance Analysis, deviating flows were not translated.
  • D-13907: Improved translation related to datatable properties dialog "Used by models" field.
  • D-13904: There was an unclear error message in Snowflake, as exception code 1 was returned without AttributeName and ModelName properties when non-existing attribute was in filter.
  • D-13911: Fixed small glitches in the opening and closing of drop-down lists.
  • D-13918: Datatable could be configured incorrectly to use table for other datatable.
  • D-13932: Duplicating datatable with custom table in datasource losed all data.
  • D-11002: Removed legacy in-memory prediction preset.
  • D-13912: Added check that array cannot be stored to dashboard Content property.
  • D-13936: Query designer default query didn't work with Snowflake models.
  • D-13938: There was an incorrect logging with some operations related to ScriptLauncher.
  • D-13923: Snowflake expressions didn't work with Where function in root referring to case attribute.
  • D-13939: ApplyFilter function gave null reference error for non-existing attribute name.
  • D-13931: There were issues with AllowExternalDatasources and EnableFullFunctionality settings.

Old Releases

See older releases in QPR ProcessAnalyzer Release Archive