QPR ProcessAnalyzer Release Notes: Difference between revisions

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


== Next Release: QPR ProcessAnalyzer 2020.7 (planned release date 2020-09-29) ==  
== Next Release: QPR ProcessAnalyzer 2024.3 (planned release date 2024-04-02) ==
Build number: 2020.7.0.xxxxx, Model compatibility version: x, Database version: xx, PACM file version: x, Protocol version: xx.
 
'''Notes:'''
* [[QPR_ProcessAnalyzer_Version_Compatibility|Excel Client protocol version]] will be changed in QPR ProcessAnalyzer 2020.7 which requires to update Excel Client when updating to QPR ProcessAnalyzer 2020.7. (See more how to [[Installing_QPR_ProcessAnalyzer_Excel_Client#Installing_QPR_ProcessAnalyzer_Excel_Client|update Excel Client]].)
* The legacy process mining models are not supported anymore, and they need to be migrated manually to new models before updating to QPR ProcessAnalyzer 2020.7. The new models use datatables to store events and cases. You can check the model type as follows: Open QPR ProcessAnalyzer Web UI, open the models dropdown list in the header, find a model, open ''Properties'' for the model, and go to the ''Datasources'' tab. If the ''Load from Database'' is ''yes'', the model is a legacy model and requires a migration. The migration can be done by exporting the model as a .pacm file (in the ''Actions'' tab from model properties), and importing the file back using the ''Import Data'' functionality. It's also recommended to delete the legacy models. The eventlog data for the legacy models is not yet removed in QPR ProcessAnalyzer 2020.7 and thus it's possible to rollback to QPR ProcessAnalyzer 2020.6 if needed. The eventlog data for the legacy models will be removed in a future release to save space in the database.
* The version numbering of QPR ProcessAnalyzer has changed, and for now on the release is identified using a more simple version number instead of version consisting of several parts (e.g. 2020.6.0.42152). The version number can be seen in the ''User Settings''.


'''Features:'''
'''Features:'''
* 307987: Navigation menu width is set based on dashboard names.
* B-08242: [[Actions_to_Run_Script_in_Table|Custom actions]] in scripts can be started from dashboard table context menu, e.g., create tickets, trigger automation, and fetch external information.
* 307996 & 308012: Translation fixes.
* 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.
* 307954: Web API for datatables.
* B-08268: (1) In Overview flowchart preset, flow width visualizes now case volumes. (2) When converting Snowflake expression into custom, the expression filter is preserved and not embedded into the expression.
* 307992: In Conformance root causes view, replace datagrid with a chart.
* 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.
* 308008: Chart specific model selection.
* B-07906: Implemented cross joins to SQL dataframes.
* 307993: Adjust model size estimate + filter rule editor refactoring.
* B-03047: Removed support for dashboard panels.
* 308004: Expression designer results field should be editable.
* B-08214: Removed unused columns from the PA_VIEW table.
* 307995: End tasks in web UI.
* B-08221: Snowflake query performance has been improved by using cached filters to build new filters.
* 307994: Take into use functions stdev, stdevp, var and varp in Chart.
* B-08254: Frontend components have been updated.
* 308005: Remove "Dimensions/columns as calculated attributes" and "Chart settings (compacted)" from chart.
* B-08255: Backend components have been updated.
* 307999: Remove legacy model settings from model properties.
* 308020: Change default bpmn model to empty.
* 308006: KPI card customizable colors.
* 308009: Color mappings to dimensions.
* 308017: Remove left and right axis synchronization in Chart.
* 307758: Standard deviation, sample standard deviation, variance and sample variance to expression language.
* 307759: Add requirements and tests to mathematical functions from NCalc.
* 307989: Expression language: Dictionary.Clone-function and improvement to generic ToDictionary and ToDataFrame functions.
* 307879: Optimize preprocessing for model event log.
* 307916, 308010: Drop support for legacy models.
* 308003: Disabling filter rules.
* 308007: "On-screen settings follow flow selection" to work for all start and event event type selections.
* 308021: Dimension specific maximum number of items.
* 308030: Change password changing to use /api/users/password.
* 308018: Bottleneck identification and optimizations for models having lots of cases.
* 308016: Migrate Chart pivot to Syncfusion JS2 PivotTable.
* 307805: Syncfusion JS2 migration - part 1.
* 307976: Angular migration finalization.
* 308025: QPRLibraries migration to Syncfusion JS2 - part 1.
* 308029: Revision number in UI.


'''Fixed issues:'''
'''Fixed issues:'''
* 219465: Case/event attribute not found error messages not user friendly.
* D-14048: Fixed issue where in-memory root causes analysis for case attributes didn't show attributes with ShortString data type.
* 219474: Filter rule text says "undefined" for some expression based filters.
* D-14049: Added some missing translations for table column filter and BPMN editor.
* 219462: User cannot fix incorrect chart settings.
* D-14021: FindRootCauses function WeightingExpression was run in incorrect context for in-memory model.
* 219471: "All cases" not visible when changing between models that don't have filters.
* D-14020: Query which goes from EventTypes to Cases did not show the error when using GetValueFrom function.
* 219488: Filter selection should be cancelled when changing dashboard.
* D-13976: Fixed issue where gateway-based imports were not synchronous.
* 219479: SAML login redirection replaces contains http even if https is configured.
* D-13689: Fixed JavaScript error in Highcharts polar chart with tooltips.
* 219468: ProcessAnalyzer user rights are within PACM export.
* D-12614: Highcharts gives "Maximum call stack size exceeded" error in bar chart with polar and data labels.
* 219494: Some duration values in flowchart are rounded incorrectly.
* D-14060: Highcharts custom layout translatable properties incorrectly changed chart configuration by translating the labels.
* 219429: Chart case attribute dropdown list's items' item count does not match with the chart presentation.
* D-14071: Business calendar button press caused error when user didn't have access to any model.
* 219472: Quick fixes to model and data table loading slowness and memory usage.
* D-14041: Manager Users dialog "Has password" field filter shows now Yes/No texts instead of true/false.
* 219484: Alignment of PA dashboard objects is near impossible.
* D-11268: There were inconsistent button colors in Workspace.
* 219487: When moving and resizing, presentation objects should be aligned with each other and with the canvas.
* D-12264: Disabled stacked and polar charts for donut, packed bubble, sankey, dependency wheel, word cloud, and gantt charts.
* 219502: When clicking same Case attribute/Event attribute preset again, loading animation stays for ever.
* D-14066: Fixed issue when EventTypes, Events.IncomingFlowOccurrence fails because there is event type filtering in in-memory model.
* 219481: Stdev, stdevp, var and varp functions should return null when there are zero or one items in the array.
* 219496: Series should be stacked bottom-to-top and from-left-to-right in charts.
* 219499: Chart colors are reset to default when resizing window.


== Latest release: QPR ProcessAnalyzer 2020.6 (release date 2020-08-18) ==  
== Latest: Additional release for QPR ProcessAnalyzer 2024.2 (build 5509) (released 2024-02-27) ==
Build number: 2020.6.0.42152, Model compatibility version: 3, Database version: 74, PACM file version: 7, Protocol version: 33.


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


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


== QPR ProcessAnalyzer 2020.5 (release date 2020-06-29) ==
* D-14045: Fixed issue where users with Viewer or Analyzer role couldn't create filters in Snowflake models.
Build number: 2020.5.0.41888, Model compatibility version: 3, Database version: 73, PACM file version: 7, Protocol version: 33.


'''Notes:'''
== QPR ProcessAnalyzer 2024.2 (build 5438) (released 2024-02-21) ==
* Dashboards structure is simplified, as panels are removed and presentation objects are placed directly to the dashboard canvas. In addition, panel headers are not available anymore. Presentation objects have now background color, border color, border width and border corner radius, that were previously in the panel level. All existing dashboards are automatically migrated to the newer structure. Existing dashboards that have several presentation objects within a same panel, are positioned on top of the others, so in those cases presentation objects need to be repositioned manually after updating to QPR ProcessAnalyzer 2020.5.
* IP address verification of user sessions has been removed. Previously, each user session was only allowed from the same IP address. This kind of security feature won't work with IPv6 addresses which usually change more often than IPv4 addresses.


'''Features:'''
<div style="border:1px solid #dfdfdf;padding:0.5em 1em 0.5em 1em;background-color:#E7EAEC;margin:10px 0px 0px 10px;">
* 307938: Support for French language.
Known issue: Snowflake models and dashboards don't work with Viewer and Analyzer role permisions. The reason is that cache tables created to Snowflake incorrectly require the write permissions. Workaround is to give users the Designer role which will give the needed permissions. Note that the Designer role gives many permissions to the user for the project [[Roles_and_Permissions#Roles_and_Permissions|(more information)]]. This issue has been fixed in the next release (D-14045).
* 307868: New dashboard designer that doesn't have panels.
</div>
* 307947: [[Tables Conditional Formatting|Tables conditional formatting]]
* 307948: Dashboard properties layout and terminology changes.
* 307911: IP address verification has been removed.
* 307931: Expression language and performance improvements (originated from Spark prototyping).
* 307774: Web API operation /api/importfile for data import.
* 307933: Default logging mode has been changed to ExclusiveLock for all components.
* 307904: Server side support for UI languages.


'''Fixed issues:'''
<div style="border:1px solid #dfdfdf;padding:0.5em 1em 0.5em 1em;background-color:#E7EAEC;margin:10px 0px 0px 10px;">
* 219372: Issue with simultaneous eventlog processing that caused "Value cannot be null" errors and sometimes calculation with incorrect eventlogs.
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.
* 219375: --#CallWebService didn't work with Content-Type parameter.
</div>
* 219357: UI was stuck to IdP login page when SAML settings (e.g SAMLUserIdAttribute) were misconfigured.
* 219391: After logout GetOperationProgress failed for validating session.
* 219408: Removed focus outline border from buttons and textboxes.
* 219398: ETL Access denied CheckIsInProjectContext.
* 219373: Case.FlowOccurrences and Case.FlowOccurrencesByType have Variations preprocessing missing.
* 219382: Query for open operations should not return "open" operations that were started before the server startup time.
* 219402: Model with LoadOnStartup=true doesn't work with case level permission with expressions referring to current user.
* 219409: Filters containing event type and variation rules always filter out all cases.
* 219416: Error in model loading in startup can effect other model loading.
* 219369: Change error message "Time out while waiting for server response.".
* 219387: Text filter options opened to left for ChartView making them partly hidden for first column.
* 219395: Save button not always enabled when editing dashboard.
* 219396: Context change notification should not be called for closing dashboard charts.
* 219411: Right click menu issue in PA Flowchart analysis view.


== QPR ProcessAnalyzer 2020.4 (release date 2020-05-26) ==
<div style="border:1px solid #dfdfdf;padding:0.5em 1em 0.5em 1em;background-color:#E7EAEC;margin:10px 0px 0px 10px;">
Build number: 2020.4.0.41643, Model compatibility version: 3, Database version: 71, PACM file version: 7, Protocol version: 33.
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>
'''Notes:'''
* In QPR ProcessAnalyzer 2020.4, the deployment package dashboards come with the installation, so there is no deployment package anymore to be installed. The previous deployment package located in the ''QPR ProcessAnalyzer UI'' project can be deleted when 2020.4 is installed.
* To fix issue ''Datetimes are incorrect in files exported from data grids'' (219377), [[Data Grid Export Service|data grid export service]] needs to be updated from version V001 to V002.
* Issue workaround: After updating to QPR ProcessAnalyzer 2020.4, dashboards containing the root causes analysis give an error message about invalid chart configuration. The problem can be fixed as follows: from the JSON text that appears in the full screen text editor, make the following text replacements: "Case Attribute" --> "Case attribute" and "Attribute Value" --> "Attribute value". When the dashboard is saved, the error doesn't appear anymore.
* To improve performance, for custom expressions in charts it's recommended to replace ''??_remove'' with the [[Generic_Functions_in_QPR_ProcessAnalyzer#RemoveNulls|RemoveNulls]] function. Example: Expression ''Average((_.Attribute("Cost") ??_remove)._)'' can be changed to ''Average(RemoveNulls(_.Attribute("Cost")))''.
* To improve performance, for custom expressions in charts it's recommended to change expressions that make duration aggregations to work in a way that the aggregation is made before converting TimeSpans to integers (e.g. to days). Example: expression ''Average(_.Duration.TotalDays)'' can be changed to ''Average(_.Duration).TotalDays''.
* Issue: In Firefox, when opening a dashboard, an error message "Error in chart settings" might appear (the dashboard is still opened correctly). If the issue appears, it's recommended to use Chrome, where the issue does not appear that often. There are no other workarounds available for the issue.
* Issue: FlowOccurrences and FlowOccurrencesByType properties don't work for Case objects when there are also filter rules applied. Some measures and dimensions use those properties. QPR ProcessAnalyzer 2020.5 will fix the issue, and for earlier versions there is no workaround.


'''Features:'''
'''Features:'''
* 307859: Deployment package dashboards are embedded to QPR ProcessAnalyzer release.
* B-08022: Design diagram supports now BPMN notation, elbow style flows and object-specific measures.
* 307899: RemoveNulls function to remove null values from arrays.
* B-08232: Entire future eventlogs can be [[Create_Predicted_Eventlog|predicted]] based on generative AI models running in Snowflake.
* 307915: Expression language improvements related to CSV file generation.
* B-08166: Added expression language function [[Generic_Functions_in_QPR_ProcessAnalyzer#OpenAIChatCompletion|OpenAIChatCompletion]] to answer natural language prompts based on OpenAI ChatGPT API.
* 307809: When dashboard is opened, editing mode is disabled when no rights to edit the dashboard.
* B-08177: Snowflake query performance has been improved by introducing caching of filtered eventlogs using Snowflake tables.
* 307829: Highcharts, Syncfusion, GoJS and some other components have been updated to their latest versions.
* B-08196: Conditional formatting rules can be defined for [[QPR_ProcessAnalyzer_Table#Textual_equal_rules_for_background_color|textual and boolean values]].
* 307848: Component updates for building QPR ProcessAnalyzer UI.
* B-08213: Big data chart expressions event type selections to be multi-select where applicable.
* 307882: JavaScript libraries are split into smaller files in release build.
* B-08205: Expression language API is available for storing [[Storing_Secrets_for_Scripts|secrets]] for scripts.
* 307932: Some PAPO buttons are removed from the tool palette.
* 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.
* 307912&307917: ChartView and main header improvements for 2020.4 (parts 1 and 2).
* 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 bugs:'''
'''Fixed issues:'''
* 219365: Sometimes system stuck during the time models were being loaded into memory.
* D-13972: Some measures/dimensions/columns in Big data chart didn't show the expressions level filtering.
* 219326&219377: Datetimes are incorrect in files exported from data grids (time zone difference) (See also the notes above).
* D-14015: Fixed business calendar incorrect calculation when business period covered entire day.
* 219378: ChartView resizing sometimes didn't work when using full screen.
* D-14014: Fixed issue where Snowflake business calendar could not have end time as 00:00.
* 219371: Error messages have been improved for session expired and unknown error.
* D-13962: System variable values were interpreted incorrectly when used in linked settings.
* 219360: Some styles were defined twice in CSS.
* 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.
== Additional release for QPR ProcessAnalyzer 2020.3 (release date 2020-04-23) ==
* D-13991: Improved drop-down selector component to handle empty strings as variable values.
Build number: 2020.3.0.41450, Model compatibility version: 3, Database version: 71, PACM file version: 7, Protocol version: 33.
* 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.


'''Features''':
== QPR ProcessAnalyzer 2024.1 (build 4784) (released 2024-01-10) ==
* 307902 ChartView improvements for 2020.3 hotfix: Custom expressions have by default datatype "auto", added support for binding to multi-select lists in Variable bindings, bugfix: Custom sorting didn't work in presets, bugfix: Aggregation method for Pivot table was not selected correctly.


'''Fixed bugs:'''
<div style="border:1px solid #dfdfdf;padding:0.5em 1em 0.5em 1em;background-color:#E7EAEC;margin:10px 0px 0px 10px;">
* 219370: Dashboards could not be edited by other than administrators.
Known issue fixed in QPR ProcessAnalyzer 2024.2: In Big data chart, some measures, dimensions and columns have the filtering option missing. The issue concerns for example Duration between events, Path starting/until between specific events, and Cases where event occurs before other selections. Workaround is to set the filter in the chart json settings: the filter can be configured to another expression and copied to the correct expression.
* 219361: Flowchart sometimes crashed to ThrowKeyNotFoundException when pressing Root Causes button.
</div>


== QPR ProcessAnalyzer 2020.3 (release date 2020-04-16) ==
<div style="border:1px solid #dfdfdf;padding:0.5em 1em 0.5em 1em;background-color:#E7EAEC;margin:10px 0px 0px 10px;">
Build number: 2020.3.0.41413, Model compatibility version: 3, Database version: 71, PACM file version: 7, Protocol version: 33.
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>


'''Notes:'''
<div style="border:1px solid #dfdfdf;padding:0.5em 1em 0.5em 1em;background-color:#E7EAEC;margin:10px 0px 0px 10px;">
* Legacy Chart and Gauge presentation objects are removed from QPR ProcessAnalyzer (they are different than ChartView). If there are dashboards containing those types of presentation objects after updating to 2020.3, there will be a placeholder frame instead with an error message of a non-existing presentation object. To change the dashboard, remove those placeholders and replace with ChartViews. It's recommended to make the replacement to ChartViews before the update, because chart and gauge settings cannot be accessed anymore in 2020.3.
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.
* ChartView will change from an HTML presentation object to a native presentation object, which ensures that dashboards will work in future releases when the ChartView is evolving. ChartViews created with 2020.2 will be automatically migrated to the native ChartViews in 2020.3. ChartViews created with 2020.1 or earlier releases need to be updated manually by removing the ChartView from the dashboard and replacing it with a new ChartView.
</div>


'''Features:'''
'''Features:'''
* 307849: Securely stored strings for passwords.
* B-08019: New component [[Design_Diagram|Design Diagram]] for showing user-created diagrams in dashboards where to visualize process mining metrics.
* 307746: ChartView is now a native presentation object instead of an HTML presentation object. ChartView's made in 2020.2 are automatically converted to the native presentation objects.
* B-08087: Generic [[Dropdown_List_Selector|dropdown list selector]] works with Snowflake models allowing to add selection lists for any values.
* 307880: When a datatable model is moved to another project, the linked datatables should also be moved to the project.
* 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]].
* 307556: Functions to expression language to improve usability and performance: CaseCount, EventCount, EventCountByType and Round.
* 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.
* 307895: SQL scripting command for database commit.
* B-08093: Multiple dashboards can be exported to same file, and model can be set for imported dashboards.
* 307850: Expression language performance improvement by a new way to calling functions and properties.
* 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.
* 307858: Expression language: Support for array operators.
* B-08122: Added new system report to list dashboards.
* 307845: Header buttons layout has been improved.
* B-08173: Removed legacy filters that didn't have any filter rules.
* 307870: Preprocessings are determined automatically.
* B-07961: In OperationLog, changed parameters to json format and added request id.
* 307761: Functionality that user doesn't have access is now disabled in the dashboard designer and workspace to avoid access denied errors.
* B-08069: Added DashboardId property to [[Generic_Properties_in_Expression_Language#OperationLog|OperationLog]] in expression language.
* 307839: Generic chart and gauge presentation objects are removed.
* B-08139: Added [[Datatable_in_Expression_Language#UpdateRows|UpdateRows]] function to update existing rows in datatables with similar logic than SQL update.
* 307863: Automatic redirection to SAML authentication.
* B-08115: Added [[Datatable_in_Expression_Language#DeleteRows|DeleteRows]] function to delete rows in datatables with similar logic than SQL delete.
* 307872: API support for querying if SAML is configured.
* B-08149: QPR ProcessAnalyzer has been updated to .Net 8.
* 307846: Error message further improvements.
* B-08054: Changed Scripts property in generic context to return all scripts, instead of legacy system level scripts.
* 307888: Error message text changes for Dashboard not found and Multiple dashboards found.
* B-08138: Changed Synchronize function to remove all columns when no Snowflake table exists.
* 307874 & 307887: ChartView and main header has been improved.
* B-07689: For datatables, [[Datatable_in_Expression_Language#ForeignKeys|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 bugs:'''
'''Fixed issues:'''
* 219341: Analysis function unnecessarily required FilterId parameter.
* D-13913: Datatable properties dialog incorrectly showed linked models from other projects.
* 219343: Root causes analysis gave access denied when using Analysis function.
* D-13916: Chart filter could not be defined for some expressions in Big data chart.
* 219348: Query cancellation caused database connection leakage.
* D-13933: Navigation menu selected item wasn't highlighted when used Snowflake models.
* 219332: "Thread was being aborted" returned to client while loading model from datatable.
* D-13906: In Conformance Analysis, deviating flows were not translated.
* 219321: Removed unnecessary error log lines "Missing expected HttpRequest X-Forwarded-For" that appeared even if UseXForwardedForAsClientIp=false.
* D-13907: Improved translation related to datatable properties dialog "Used by models" field.
* 219335: [_remove ]._ or empty array is not handled correctly in a KPI dimension.
* 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.
* 219340: default.aspx does not work.
* D-13911: Fixed small glitches in the opening and closing of drop-down lists.
* 219330: EditDashboards permission should be needed for target project when moving dashboards between projects.
* D-13918: Datatable could be configured incorrectly to use table for other datatable.
* 219347: Queries done by the main header were cancelled when view is changed.
* D-13932: Duplicating datatable with custom table in datasource losed all data.
* 219355: Expression language: Was unable to use properties of the parent context in dictionary initialization.
* D-11002: Removed legacy in-memory prediction preset.
* 219346: PAPO flowchart should have by default median duration shown on flows and flow counts hidden.
* D-13912: Added check that array cannot be stored to dashboard Content property.
* 219333: PAPO generated incorrect filter JSON and unnecessary query.
* D-13936: Query designer default query didn't work with Snowflake models.
* 219311: When opened a view by identifier, the view was fetched twice from the server.
* D-13938: There was an incorrect logging with some operations related to ScriptLauncher.
* 219329: Unnecessary information was stored in database for dashboard definitions.
* D-13923: Snowflake expressions didn't work with Where function in root referring to case attribute.
* 219362: Issues with session expiration checks.
* D-13939: ApplyFilter function gave null reference error for non-existing attribute name.
* 219364: Session expiration with SAML authentication configured gives incorrect error message.
* D-13931: There were issues with AllowExternalDatasources and EnableFullFunctionality settings.
* 219344: Case count view in model manager header and Home view can cause unwanted model loading.
* 219242: Flowchart is not updated correctly after event type filtering.


== QPR ProcessAnalyzer 2020.2 (release date 2020-03-09) ==  
== QPR ProcessAnalyzer 2023.7 (build 4326) (released 2023-11-28) ==
Build number: 2020.2.0.41129, Model compatibility version: 3, Database version: 67, PACM file version: 7, Protocol version: 33.


'''Notes:'''
<div style="border:1px solid #dfdfdf;padding:0.5em 1em 0.5em 1em;background-color:#E7EAEC;margin:10px 0px 0px 10px;">
* Expression language has now a [[QPR_ProcessAnalyzer_Expressions#Conditional_operator_.28if.29|conditional operator "if"]] and [[QPR_ProcessAnalyzer_Expressions#Define_variables_.28let.29_and_assign_variable_values_.28.3D.29|variable declaration operator "let"]]. In earlier QPR ProcessAnalyzer versions, the expression language had functions [[Generic_Properties_and_Functions_in_QPR_ProcessAnalyzer_Expressions#If|If]] and [[Generic_Properties_and_Functions_in_QPR_ProcessAnalyzer_Expressions#Let|Let]] which earlier could also be written in lowercase (i.e. "if" and "let"). Starting from QPR ProcessAnalyzer 2020.2, the lowercase versions refer to the conditional and variable declaration operators, and the uppercase versions refer to the corresponding functions. If there are expressions containing "If" and "Let" functions written in lowercase, please change them starting with uppercase.
Limitation for the maximum amount of data (B-07636) causes a behavior change in in-memory charts that have the Maximum rows settings empty and have the sorting defined. In certain cases, the order in which measures are evaluated changes (due to an internal performance optimization). If there are custom expressions that define variables, the variables may not be available in other measures anymore. As a resolution, either redefine the variables in those measure expressions or add those measures secondarily to the sorting.
* Issue workaround: The Root Causes analysis don't work (shows empty) in the right side chart (PAPO) of the ''Process Discovery'' view. The issue can be fixed as follows by an administrator: click the ''Edit'' toggle button, click the right side chart, click the ''Edit'' icon in the top right of the chart, click the chart again, click ''Properties'' icon in the top right of the chart, open ''Variables'' tab, find the ''InfluenceAttributeTypeId'' variable, and change its value to empty (instead of ''20''). Click ''Close'' twice to go back to the main level and click ''Save'' button. The issue will be fixed to 2020.3.
</div>
* Issue workaround: In ChartView, the ''Duration between events'' measure and dimension don't work when there are filters in use (the chart is empty). Workaround is to add the following ''Suffix expression'' to the measure or dimension settings (without quotes): "''//eventtypes''". The issue will be fixed to 2020.3.


'''Features:'''
<div style="border:1px solid #dfdfdf;padding:0.5em 1em 0.5em 1em;background-color:#E7EAEC;margin:10px 0px 0px 10px;">
* 307779: SAML 2.0 support for PA UI.
Default query timeout of 30 minutes has been added for --#ImportOdbcQuery, --#ImportSqlQuery and --#ImportOleDbQuery commands. If a query run is taking longer than the timeout, the query is stopped. The timeout can be adjusted using the '''QueryExecutionTimeout''' parameter. Previously, there has been no timeout, so queries that take more than 30 minutes require configuring a longer timeout.
* 307789: PAPO now supports ModelId variable and new filters.
</div>
* 307854: Filter selector for main header.
* 307844: Improved main header (visible in view designer and workspace) (part 2).
* 307820: Improved main header (visible in view designer and workspace).
* 307840: Model loading script is now run in a security context allowing access to the project. Setting AllowExternalDatasources for disabling ODBC interfaces.
* 307763: Root causes analysis supports multiple case attributes.
* 307737: Datatable columns can be queried without loading entire datatable into memory.
* 307780: When user logs in, last used model and default filter of the model is added to the session context.
* 307547: Expression filter rule supports value conversion expression for better compatibility with e.g. date values.
* 307841: Expression language has a new function [[Process_Mining_Objects_in_Expression_Language#Case|Case.DurationBetweenEvents]].
* 307819: Expression language improvements for functions, variables and statements.
* 307827: New function EventsWindow (and expression optimization to take it into use automatically)
* 307794: [[ QPR_ProcessAnalyzer_Objects_in_Expression_Language#Model | GenericWrite permission]] should see model object counts when case level permissions are in use.
* 307776: [[QPR_ProcessAnalyzer_Objects_in_Expression_Language#User.2FGroup|Effective permissions]] can be queried using expression language.
* 307838: /api/projects returns effective permissions for each project.
* 307832: Browser side caching has been optimized for performance.
* 307787: Session data and permission are cached for improved performance.
* 307853: Memory management operations to expression language.
* 307803: Error message improvements (part 2).


'''Fixed bugs:'''
<div style="border:1px solid #dfdfdf;padding:0.5em 1em 0.5em 1em;background-color:#E7EAEC;margin:10px 0px 0px 10px;">
* 219198: In web.config, empty setting names are formatted as <value></value>.
Incorrectly configured [[Chart_Linked_Settings|linked settings]] in charts (available in the ''Advanced'' tab) give now an error message, if they are referring to non-existing measures, dimensions or columns. Previously, incorrect linked settings were ignored. To fix the error message, remove the incorrect linked settings.
* 219199: In web.config, ResponsePollingInterval is 3600000.
</div>
* 219200: Model.EstimatedMemory gave too large estimate for models with lot of event types.
* 219222: AggregateOthers didn't work with MaximumRowCount when dimensions is null in expression analysis.
* 219276: It should be possible to set filter to be model default filter when the filter is created.
* 219280: It should be possible to delete model default filter.
* 219275: Changing model default filter should only be possible for ManageViews permission.
* 219297: Designer user can delete other people published filter from web UI but cannot delete it from PA Excel Client.
* 219285: Expression filter gives "Value was either too large or too small for an Int32".
* 219304: Expression analysis returning DataFrame doesn't work in SQL script that prints to Excel sheet.
* 219251: Sample files removed from \\Release\Files\OfficeAddIns\Excel\Example Data.
* 219293: AnalyzeConformance function throws KeyNotFoundException - variation data missing.
* 219261: Restored model model could not be open.
* 219271: Invalid security notification when using Excel client.
* 219298: X-Forwarded-For handled incorrectly in Functions.GetClientIpAddress.
* 219305: Decimal datatype caused problems in the expression language.
* 219323: Delete operation deleted unexpected project, models and datatables.
* 219337: EventTypes in ModelInformation in PA response should contain entire model data.
* 219339: Expression language: If statement without false statement causes an exception if the condition is false.
* 219172: Invalid filterId causes "Internal server error" and " Method Not allow" error.
* 219258: Exception message is not shown properly in PA Web UI for FaultException.
* 219281: Improving the error handling for invalid ModelId.
* 219284: Client side forces filterId=0 even if filter is not mentioned.
* 219313: After adding the same existing panel twice, not possible to delete it from the view.
* 219320: Duplicate id on PanelDesigner field-properties.html template.
* 219336: When PAPO is added from tool palette, InfluenceAttributeTypeId variable contains invalid value "20" (should be empty).
 
== QPR ProcessAnalyzer 2020.1 (release date 2020-01-21) ==
Build number: 2020.1.0.40909, Model compatibility version: 3, Database version: 65, PACM file version: 7, Protocol version: 32.


'''Features:'''
'''Features:'''
* 307749: Support for importing data to the datatable models.
* B-07511: Datatables have a [[Datatable_Properties_Dialog|dialog]] to view datatable properties, write description, set the Snowflake source table, add/modify/delete columns, and set the datatable key.
* 307813: DataSourceType parameter to --#ImportEvents and --#ImportCaseAttributes ETL scripting commands.
* B-08150: Added setting [[QPR_ProcessAnalyzer_Chart#Filtering_Settings|Apply chart filters first]] to determine whether chart filter rules or dashboard filter rules are applied first when chart queries are filtered.
* 307743: Backend support for saving the new filters.
* B-08091: When filtering charts in Snowflake, case attribute filter is created instead of case id filter.
* 307775: Effective dashboard permissions are included to dashboard definition when fetched from the server.
* B-08091: [[QPR_ProcessAnalyzer_Chart#Filtering_Settings|New setting]] to define whether cases or events are filtered by default.
* 307772: Dashboard project path is added to dashboard definition when fetched from the server.
* B-08091: New preset "Looping paths" to detect whether there are repeating patterns of events.
* 307778: When saving a view, the view is not anymore reloaded unnecessary.
* B-08091: Duration between events calculation ignores negative durations in Snowflake.
* 307810: Expression language adjustments.
* B-08091: Chart loading animation has been renewed.
* 307818: Drop support for QPR ProcessAnalyzer Excel Client for Excel 2013.
* B-07636: To prevent dashboards from jamming when querying too much data, added [[QPR_ProcessAnalyzer_Chart#Available_Visualizations|limitations]] to the amount of data that charts can visualize. Note that the limitation concerns the aggregated data that is visualized, not the source event log data.
* B-08017: [[Dashboard_in_Expression_Language|Dashboards API]] has been added to expression language, allowing to create, modify and delete dashboards in scripts.
* B-08056: Following properties have been added to [[QPR_ProcessAnalyzer_Objects_in_Expression_Language#User.2FGroup|user objects]] in expression language: IsLocked, LastLockedDate, LastLoginDate.
* B-08053: [[Navigation_Menu#System_Reports|User rights report]] has been refactored to use [[Generic_Properties_in_Expression_Language#RoleAssignments|RoleAssignments]] property in the expression language. The change also simplifies the report as now it only shows the direct role assignments that are visible in the [[Manage_Users_and_Groups|User Management]].
* B-08151: For Snowflake expressions support for following [[SQL_Expressions#Window_functions|windowing functions]]: sum, average, median, min, and max.
* B-08050: When a model is created, the default filter is not created anymore (this is a refactoring that doesn't have any impact on user interface).
* B-08123: Translation updates for 2023.7.
* B-08092: Updated backend components.


'''Fixed bugs:'''
'''Fixed issues:'''
* 219236: Microsoft.AspNet.Identity.Core.dll and Microsoft.AspNet.Identity.Core.xml files missing when installing QPR ScriptLauncher from the installation package.
* D-13876: In CreateSnowflakeConnection function, ProjectId parameter is optional when OdbcConnectionStringKey is not specified.
* 219291: QPR ProcessAnalyzer didn't work in https only configuration.
* D-13898: Snowflake: Exclude case attribute filter didn't work when there was null values and was selecting at least two values.
* 219264: DataFrameMode enabled for KPI analysis even if Values have been defined (but Dimensions is empty).
* D-13890: Fixed XES file import to work.
* 219223: Variable function don't work with upper case variables.
* D-13894: Business calendar based duration calculation was incorrect in some durations that spanned to several weeks (for Snowflake and in-memory models).
* 219267: Viewing DataFrame contents in KPI analysis gives incorrect results.
* D-13899: Using broken OdbcConnectionString in a datatable prevented the datatable from being deleted.
* 219279: DataFrame columns by name is unavailable inside user defined functions in KPI analysis.
* D-13883: Script run stucked after running a script with error that uses client-side ODBC import.
* 219259: It should be possible to enable CORS from all origins.
* D-13879: SqlExpressionValue filter when excluding events didn't work with filter rule root expression only.
* 219274: "Inconsistent or unavailable ids" error when using all cases filter.
* D-13896: Adding or removing columns to datatable didn't change the LastModifiedDate.
* 219290: Getting contents of a dashboard is slow in a customer environment.
* D-13882: User details weren't written to operation log when creating or modifying users.
* 219286: User could not open any models after using broken model.
* D-13771: User rights system report didn't give error when changing columns.
* 219227: Slowness in model creation when read data from datasource - event cost calculation improvements.
* D-13893: Some event filtering caused null pointer error when primary key had been defined.
* 219250: Slowness in event creation when read data from datasource - group by event sorting.
* D-13873: Fixed pivot table visual issues after component update.
* 219292: Performance issue in /api/uielements as it unnecessarily fetched dashboard contents.
* D-13900: When adding, renaming or removing columns for Snowflake table fails, operation is now rolled back without any changes.
* 219295: Client side fix for 219292.
* D-13866: Querying GET api/uielements was quite slow right after server start.
* 219269: Query results were handled incorrectly in the client side - datatype is cell specific, not column specific.
* D-13864: Combinations of translatable and hardcoded strings didn't get translated in UI.


== Additional release for QPR ProcessAnalyzer 2019.9 (release date 2019-12-18) ==  
== Additional release for QPR ProcessAnalyzer 2023.6 (build 3933) (released 2023-10-24) ==
Build number: 2019.9.0.40754, Model compatibility version: 2, Database version: 63, PACM file version: 7, Protocol version: 32.


'''Notes'''
'''Features:'''
* Starting from QPR ProcessAnalyzer 2019.9 the separately installed QPR UI is not needed anymore. Instead, the web UI is now part of QPR ProcessAnalyzer and does not require a separate installation. The new UI can be accessed in ''http(s)://SERVER/QPRPA/ui/'' (where SERVER is the hostname of your QPR ProcessAnalyzer server). Dashboards in the old QPR UI are not moved automatically to QPR ProcessAnalyzer, and also the QPR UI dashboard export files are not compatible with the new QPR ProcessAnalyzer UI.
* B-08055: Error message for locked account has been replaced with generic error message, so that username enumeration is not possible.


'''Features for QPR ProcessAnalyzer:'''
'''Fixed issues:'''
* 307785: Angular Migration: Migrate ProcessAnalyserService.
* D-13884: Attributes dialog crashed with some older model configurations.
* 307786: Angular Migration: Migrate FieldPropertiesUtils.
* D-13843: In charts, selected case and event attributes switched away when attribute data type was ShortString.
* D-13877: Some Snowflake expressions gave error "exceeds maximum length limit of 255 characters" when selecting lot of items.
* D-13878: Snowflake expression filters for case attribute values didn't accept other than string type of case attributes.
* D-13871: Some statistical calculations with percentages didn't work with Last Row Aggregates Over-limit Rows setting.
* D-13875: Using some case level filters in a model without cases datatable didn't work.
* D-13861: Dashboard opens are now logged to the Task log (i.e., calling GET /api/dashboards/{dashboardid}).
* D-13870: Workspace projects hierarchy focused project showed light grey background making the project name not readable.
* D-13867: When starting datatable refresh and going to other tab, went back to Datatables tab when query completed.
* D-13853: If chart Custom Layout settings had extra series defined, chart may have crashed.
* D-13869: Export as CSV button didn't work in the datatable contents dialog when dialog was still loading.
* D-13872: Main progress spinner had unnecessary small scrollbar on top right.
* D-13863: In the REST API method GET /api/users, password field (that has always been null) has been removed.


'''Fixed bugs for QPR ProcessAnalyzer:'''
== QPR ProcessAnalyzer 2023.6 (build 3847) (released 2023-10-17) ==
* 219262: Login to PA UI is not possible when there is + character in the password
* 219263: Opening dashboard which definition is large
* 219257: It should be possible to get DataFrame cell value by column name in expression analysis


== QPR ProcessAnalyzer 2019.9 (release date 2019-12-10) ==
<div style="border:1px solid #dfdfdf;padding:0.5em 1em 0.5em 1em;background-color:#E7EAEC;margin:10px 0px 0px 10px;">
Build number: 2019.9.0.40704, Model compatibility version: 2, Database version: 63, PACM file version: 7, Protocol version: 32.
Big data chart support of models with local datatables (i.e., SQL Server stored) is removed in this release. If there are big data charts using SQL Server calculation, either migrate data to Snowflake or switch to in-memory charts (requiring to load data in-memory).
</div>


'''Features for QPR ProcessAnalyzer:'''
'''Features:'''
* 307484: Implemented Excel client protocol version for improved compatibility for older Excel Clients.
* B-07992: Added 10 new presets including Queue analysis, Four eyes principle, Self-looping events, and Path until selected event. There are also presets for Individual Cases Flow and Range of event type occurrences which use Gantt chart.
* 307564: [[Web.config_file_in_QPR_ProcessAnalyzer|Case sampling]] is disabled by default.
* B-08011: Added following date related operations for Snowflake: Day of year, Day of month, Day of week, Week of year, Half-year only, Quarter only, Month only, Hours only, Minutes only, Seconds only, and Milliseconds only. These are available when calculating with date type of data.
* 307724: There is a support for self-signed certificate for QPR ProcessAnalyzer service.
* B-08016: [[QPR_ProcessAnalyzer_Table#Table_actions|Table actions to set variables]] can also be opened to a new browser tab. Also improved user interface for table actions.
* 307705: User related information and session id is available for HTML presentation objects.
* B-08018: For Snowflake expressions, added Flows aggregations FromEventType and ToEventType to get starting/ending event type, and FlowOccurrences aggregations FromEvent and ToEvent to get starting/ending event.
* 307712: Error messages from the backend are shown in UI
* B-08001: Added [[Generic_Functions_in_QPR_ProcessAnalyzer#CallStoredProcedure|CallStoredProcedure]] function to call Snowflake stored procedures. This allows to start ETL transformation in Snowflake orchestrated by QPR ProcessAnalyzer script.
* 307750: PA UI Frontend (part 3)
* B-08013: Added [[Generic_Properties_in_Expression_Language#RoleAssignments|RoleAssignments]] property to expression language to replace the legacy UserPermissions analysis (11).
* B-07976: Snowflake [[Filtering_in_QPR_ProcessAnalyzer_Queries#Expression|expression based filter rules]] support additional expression columns allowing more Big data chart expressions to be filterable.
* B-08015: Big data chart doesn't anymore support calculation in SQL Server (using local datatables).
* B-06270: Improved error messages and made them translatable by taking into use exception codes provided by server.
* B-08021: Added possibility to store [[Diagram_in_Expression_Language|designed diagrams]] for models and expression language API for reading and modifying diagrams.
* B-08037: Dropped following unused tables database: PA_IDEA, PA_IDEA_VOTE, PA_REPORT, PA_REPORT_SETTING, PA_SESSION_SERVICE, PA_VIEW_FILTER_RULE, PA_VIEW_FILTER_RULE_PARAMETER.
* B-08052: Language translations have been updated to 2023.6.
* B-08051: Frontend side components have been updated.
* B-08034: Backend side components have been updated.


'''Fixed bugs for QPR ProcessAnalyzer:'''
'''Fixed issues:'''
* 219170: Conformance checking didn't work when there is a non-existing bpmn task between parallel gateway and the end event.
* D-13830: Object counts indicator in header showed incorrect counts when there was disabled filter rules in Snowflake models.
* 219152: Loading model into memory doesn't anymore require a ResetModelCache permission.
* D-13833: In-memory charts didn't work with boolean type of dimensions when filtering with the false value.
* 219213: Improved model loading performance when using ODBC, datatable and expression datasources.
* D-13858: Target value measures didn't update chart when controlled using an on-screen setting.
* 219218: Order of the comparison rules incorrectly affected the influence analysis results.
* D-13827: Calculated attributes data type was incorrectly set as Any by the Attributes dialog.
* 219240: Import model or export model from filter gave "Input string was not in a correct format" error.
* D-13849: Multiselect list search didn't allow spaces.
* 219238: Fix for error message "CommunicationException: The remote host closed the connection".
* D-13829: Multiselect dropdown lists height jumped couple of pixels when selecting values.
* 219249: Access was incorrectly denied for non system admins when saving a new dashboard.
* D-13835: Deselecting a selected data point didn't remove chart filter rule.
* D-13702: Improved Snowflake query performance in situations when there are lot of filter rules (by decreasing number of CTE's).
* D-13819: Model.CaseAttributes sometimes gave incorrectly Any datatype for all attributes.
* D-13820: Fixed incorrect manifest.json file to avoid "not found" errors when fetching web site icon.
* D-13865: Break, continue, and return statements didn't work properly when called from inside a catch block.
* D-13795: There was a Python error in clustering analysis with Snowflake model.
* D-13823: Some tooltips in Workspace project hierarchy didn't work and caused a JavaScript error.
* D-13824: BPMN editor align context menu layout looked strange.
* D-13813: QPR logo button in the top left was misaligned in Firefox.
* D-13797: Snowflake query may have given following error when using sampling: ambiguous column name '_EventType_NotNull_1'.
* D-13774: TakeSample function with certain columns caused SQL compilation error: ambiguous column name 'Case Name'.
* D-13782: Snowflake: Aggregating from variations didn't work when using sampling.
* D-13836: Some tooltips had a strange two-colored background.
* D-13834: Removed Model statistics column from clustering and root causes analysis.
* D-13860: Removed filter button from the custom expressions in Task log analyzed objects.
* D-13838: Removed Split data by filtering column from clustering analysis.
* D-13832: Script and model status updates incorrectly sent next update when previous was still pending.
* D-13839: Charts reset zoom button font size was too small.
* D-13817: Importing data to Snowflake datatable with Append=0 doesn't now drop the underlying Snowflake table.
* D-13825: Some models could not have been deleted from recycle bin.
* D-13852: Recycle bin Projects and Models tab didn't show correct content when Recycle bin only contained either models or projects.
* D-13841: In-memory chart Data type selection type has been corrected to string.
* D-13842: Second time and Third time selections has been hidden in in-memory chart measures.
* D-13850: In Chrome, there were console errors related in incorrect text field autocomplete type and text field without form.
* D-13847: Improved browser side performance by removing unnecessary operations.
* D-13859: Chart without dimensions showed an unnecessary Remove dimension button.
* D-12598: When script is stopped in server, ScriptLauncher could still incorrectly continue to import data.


== QPR ProcessAnalyzer 2019.8 (release date 2019-10-30) ==  
== Additional release for QPR ProcessAnalyzer 2023.5 (build 3334) (released 2023-09-07) ==
Build number: 2019.8.0.40391, Model compatibility version: 2, Database version: 62, PACM file version: 7.


'''Features for QPR ProcessAnalyzer:'''
'''Fixed issues:'''
* 307633: [[QPR_ProcessAnalyzer_Model_Datasources#Loading_Data_from_Datatables|Datatables]] can be used as a PA model datasource (part 1).
* D-13826: Measures or dimensions with case or event attribute and value selections incorrectly removed calculated attributes when dashboard was opened or chart settings were changed.
* 307700: JSON filter rules should not give error for non-existing values, such as event type names.
* D-13821: Font size of some Highcharts tooltips was too small. Issue appeared when there were tooltips mappings in measures or dimensions.
* 307721: Improvements to model [[QPR_ProcessAnalyzer_Model_JSON_Settings#Automatic_Loading_on_Server_Startup|Improvements to model LoadOnStartup]]: loading is done in a separate thread and in parallel.
* D-13810: Simplified help links: now all Help buttons go to the QPR ProcessAnalyzer wiki main page.
* 307693: [[QPR_ProcessAnalyzer_Objects_in_Expression_Language|Expression language: Return attributes in alphabetical order]].
* D-13822: Snowflake clustering analysis showed empty strings and nulls as case attribute values in an unclear way as just nothing.
* 307738: Expression language: [[QPR_ProcessAnalyzer_Expressions#Null_conditional_operator_.28.3F._and_.3F:.29 | null-conditional]] and [[QPR_ProcessAnalyzer_Expressions#Null_coalescing_operator_.28.3F.3F.29 | null-coalescing operators]].
* 307725: Expression language: AsParallel function for making calculations in parallel to improve performance.
* 307715: New PA Web UI Backend (part 3).
* 307728: New PA Web UI Backend (part 4).


'''Fixed bugs for QPR ProcessAnalyzer:'''
== QPR ProcessAnalyzer 2023.5 (build 3304) (released 2023-09-05) ==
* 219210: ScriptLaucher CSV export should quote string values with double quotes when the string value contains semicolon.
* 219143: IIS https only setup does not work.
* 219186: Event.IndexInCase had issue with event type filters.
* 219167: Event.OutgoingFlowOccurrence and Event.IncomingFlowOccurrence had issues with event type filters.
* 218689: _.Cases and _.Events doesn't work as a root in EventLog context in KPI Analysis.
* 219004: PA license expiration causes unclear error in UI.
* 219187: KeyNotFound exception occurred when include only all cases from the Path Analysis.
* 219197: Minor issues in ODBC datasource.
* 219207: Flowchart influence analysis does not work properly when using both Filter and Comparison parameters.


== QPR ProcessAnalyzer 2019.7 (release date 2019-09-25) ==
<div style="border:1px solid #dfdfdf;padding:0.5em 1em 0.5em 1em;background-color:#E7EAEC;margin:10px 0px 0px 10px;">
Build number: 2019.7.0.40226, Model compatibility version: 2, Database version: 61, PACM file version: 7.
In Big Data Chart, the '''Case conformance''' measure and dimension has changed in a way that now it provides boolean values (true/false) instead of integer values (1/0). If [[Measure,_Dimension_and_Column_Settings#Other_settings|colorMappings]] are used for this measure or dimension to set specific colors to visualize conformant and nonconformant cases, the mapped values need to be changed as follows: '''1''' -> '''true''' and '''0''' -> '''false'''. Without the change, the mapped colors are not effective.


'''Features for QPR ProcessAnalyzer:'''
Exmaple: Old configuration:
* 307655: Drop support for SQL core as PA data source (Part 5 Memory optimization).
<pre>
* 307696: New PA Web UI Backend.
"colorMappings": {
* 307710: New PA Web UI Backend (part 2).
  "1": "#36d475ff",
  "0": "#f5403bff"
}
</pre>
New configuration:
<pre>
"colorMappings": {
  "true": "#36d475ff",
  "false": "#f5403bff"
}
</pre>
</div>


'''Fixed bugs for QPR ProcessAnalyzer:'''
<div style="border:1px solid #dfdfdf;padding:0.5em 1em 0.5em 1em;background-color:#E7EAEC;margin:10px 0px 0px 10px;">
* 219164: Event.NextInCase/PreviousInCase didn't work with event type filters.
Big data chart support of models with local datatables (i.e., SQL Server stored) is deprecated. Big data chart has allowed to process data both in Snowflake and SQL Server. Now the support for SQL Server is deprecated and the Big data chart will only support calculation in Snowflake. If there are big data charts using SQL Server calculation, either migrate data to Snowflake or switch to in-memory charts (requiring to load data in-memory).
* 219136: ODBC model not support import and remove functionality.
</div>
* 219171: Event.NextInCase and Event.PreviousInCase requires CaseEvents preprocessing.
* 219173: Out of memory error and application pool crashing in customer environment.


== QPR ProcessAnalyzer 2019.6 (release date 2019-08-08) ==
<div style="border:1px solid #dfdfdf;padding:0.5em 1em 0.5em 1em;background-color:#E7EAEC;margin:10px 0px 0px 10px;">
Build number: 2019.6.0.40009, Model compatibility version: 2, Database version: 59, PACM file version: 7.
Following legacy analyses have been removed: Operation log (analysis number: 12), Root causes (14), Correlations (15), Idea feed (16) and Duration influence (29). This functionality may be in use in SQL scripts (in [[SQL_Scripting_Commands#--.23GetAnalysis|--#GetAnalysis]] command), and thus needs to be changed to the [[SQL_Scripting_Commands#--.23RunQuery|--#RunQuery]] command (see the [[RunQuery_Script_Examples|examples page]] how each legacy analysis can be replaced). The OperationLog analysis is replaced by the [[Generic_Properties_in_Expression_Language#OperationLog|OperationLog function]] and the Infcluencers analysis is replaced by the [[FindRootCauses_Function|FindRootCauses function]].


'''Features for QPR ProcessAnalyzer:'''
Following script can be run in the [[Navigation_Menu#Expression_Designer|Expression Designer]] to show whether there are scripts that use the removed analyses (and thus require migration):
* 307260: Update to Visual Studio 2017 and update to .Net 4.7.1.
<pre>
let removedAnalyses = [12, 14, 15, 16, 29];
OrderByDescending(Flatten(Projects.Scripts).Where({
  let scr = _;Sum(removedAnalyses.("'AnalysisType','" + _ + "')").{let num=_;(scr.code ?? "").Replace(" ", "").Replace("\t", "").Replace("\n", "").Replace("\r\n", "").Replace("\r", "").Contains(num)})>0;
}),LastRunStart).(Project.Name + ": " + name + " (id: " + id + ") (last run: " + (LastRunStart ?? "N/A") + ")");
</pre>
</div>


'''Fixed bugs for QPR ProcessAnalyzer:'''
<div style="border:1px solid #dfdfdf;padding:0.5em 1em 0.5em 1em;background-color:#E7EAEC;margin:10px 0px 0px 10px;">
* 219106: Datetime ticks property in the expression language should be in UTC.
By default, Snowflake ODBC driver generates quite much logging to files which might unnecessarily fill up the disk space. It's recommended to set the LogLevel parameter to value 0. The path where the logs are created can be seen in Windows registry (key LogPath). More information about configuring Snowflake ODBC parameters: https://docs.snowflake.com/en/developer-guide/odbc/odbc-parameters.
</div>


== QPR ProcessAnalyzer 2019.5 (release date 2019-06-19) ==
'''Features:'''
Build number: 2019.5.0.39902, Model compatibility version: 2, Database version: 59, PACM file version: 7.
* B-07971: Machine learning based [[Clustering_Analysis|Clustering analysis]] can be run in Snowflake.
* B-07989: In dashboard designer the stacking order of charts can be changed with buttons [[QPR_ProcessAnalyzer_Dashboard_Designer#Viewing_and_Editing_Dashboards|Bring to front, Send to back, Bring forward and Send backward]].
* B-07977: For [[Sankey_Chart|sankey diagram]], added Start level and End level mappings to define custom start and end level for the sankey flows. Implemented also color mappings to define specific colors for specific values.
* B-08010: To improve performance, charts are loaded and updated only when they are visible in the dashboard.
* B-07975: Added following [[SQL_Expressions#Date_functions|date related functions]] to Snowflake: DayOfYear, DayOfWeek, WeekOfYear, Quarter.
* B-07908: When [[QPR_ProcessAnalyzer_Project_Workspace#Duplicating_Model|model is duplicated]], also filters in the model are also duplicated.
* B-07904: Filters and models API for expression language has been completed.
* B-07991: In [[Filter_Selectors|case and event type filter selectors]], threshold whether the dropdown list or search dialog is shown can be defined using the ''Maximum Rows'' setting. Also the search dialog filters search results by other filter rules in the dashboard.
* B-07999: Filters report has been changed to use the [[QPR_ProcessAnalyzer_Objects_in_Expression_Language#Filter|expression language API for filters]].
* B-07540: Added [[QPR_ProcessAnalyzer_Expressions#Throwing_objects|throw statement]] to expression language.
* B-07813: UI components are updated. There are small visual improvements, such as in flowchart flows are routed a bit differently and in charts the hidden series is shown as strike-through in the legend.
* B-07963: Following legacy analysis types have been removed: Operation log (analysis number: 12), Root causes (14), Correlations (15), Idea feed (16) and Duration influence (29) (see more information in the note above).


'''Features for QPR ProcessAnalyzer UI:'''
'''Fixed issues:'''
* 307330: Filtering renewal: PAPO.
* D-13777: Filters could not be created in charts when "Update Filter During Selection" setting was disabled.
* 307638: Angular Migration: Migrate Analysis classes part 3.
* D-13767: Automation per Event Types preset in in-memory incorrectly showed only one event type.
* 307653: Angular Migration: Migrate Analysis classes part 4.
* D-13756: Changing background color in KPI card didn't have any effect.
* D-13812: "Exclude events" was incorrectly translated to "Exclure les cas" in French.
* D-13815: Dashboard designer background grid was not visible in entire area in edit mode. Improved also the grid to match to snapping in move and resize.
* D-13674: Business calendar dialog layout was incorrect when a model with a long name was selected to copy holidays.
* D-13811: Table actions link to a new window didn't go to dashboard if there were other parameters in the link.
* D-13601: Fixed issue where some presets may have given error when attribute value selection and the automatically selected attribute conflicted by the data type.
* D-13753: While Snowflake model was selected, in Filters and User Rights reports the Columns list could not be opened.
* D-13720: Now table column filter and sorting are preserved when resizing or zooming page.
* D-13785: In tables increased number of rows to 20000 that are inspected to get available items shown in Excel-style column filter.
* D-13759: Some statistical calculations had bad performance with large number of rows.
* D-13787: Conformance statistics component didn't have scrollbars when text didn't fit to the visible area.
* D-13788: In-memory "Nonconformance reason" selection caused error when two of them was selected in the same chart.
* D-13783: When Analyzed objects was Generic analysis, column selection incorrectly caused "Analysis has not been selected" error.
* D-13776: When measure name contained quotation mark, notification preview didn't work.
* D-13747: Filtering with integer type of case id with case attribute value filter caused error in Snowflake.
* D-13791: In Firefox, model selection in chart settings didn't show models in the first open.
* D-11984: Recycle bin buttons didn't fit to the screen when screen width was small.
* D-13780: Using CaseId case attribute in clustering analysis did not work with Snowflake 106 cases standard model.
* D-13781: Clustering analysis produced Python error with a certain simple Snowflake model.
* D-13730: Snowflake: Case attribute filtering didn't work when there are cases without row in cases table.
* D-13803: There was chart configuration validation error in browser console when measures were moved into dimensions in Big data chart.
* D-13758: There was performance issue with the Recent tasks system preset.
* D-13793: Snowflake clustering failed when cluster count is larger than case count.
* D-13763: SQL expression based filter rule with Where function to filter events didn't filter anything in Snowflake.
* D-13804: Added missing Millisecond function to Snowflake.
* D-13772: Expression EventLog.Cases.Events caused error "Value cannot be null".
* D-13755: Model.CaseAttributes sometimes gave incorrectly Any datatype for all attributes.
* D-13739: When switching between System reports there was error: "Uncaught Error: 2nd dimension not found. at y.getExpressionConfiguration".
* D-12109: Sometimes flowcharts showed message "Error in querying event type measures. Input string was not in a correct format".
* D-12473: Cost Savings by Automation preset gave sometimes error "Unable to cast object of type 'System.Double' to type 'System.String'".
* D-13750: Snowflake model didn't work with the Case Duration vs. Manual Activities preset.
* D-13657: There was error converting data type nvarchar to bigint.
* D-13796: Some Snowflake operations didn't work with zero rows and columns.
* D-12494: Now when chart size changes, the table column filters and sorting are preserved.
* D-13736: In Performance benchmarking dialog, the Export result button exported wrong benchmark performance analysis result.
* D-13609: Improved conformance analysis related filter names.
* D-13594: Recycle bin buttons were not visible when opening recycle bin in a narrow screen.
* D-13226: Tooltips in the model properties dialog are now translated.
* D-12569: Table incorrectly showed ellipsis for narrow boolean type of columns showing checkboxes.
* D-13391: Emptying date or datetime picker value was not registered and it didn't trigger functionality.
* D-12621: Value search dialog didn't work with values containing backslashes.
* D-13796: Some Snowflake operation didn't work with zero rows/columns.


'''Features for QPR ProcessAnalyzer:'''
== QPR ProcessAnalyzer 2023.4 (build 2628) (released 2023-06-14) ==
* 307649: Drop support for SQL core as PA data source (Part 4 Source code removal).


'''Fixed bugs in QPR ProcessAnalyzer UI:'''
'''Features:'''
* 219040: Clustering analysis expression doesn't take into account model without any case attributes.
* B-07767: Added [[Gantt_Chart|Gantt chart]] to visualize timeline of cases and events divided into swimlanes.
* 219001: Case Analysis always limited to 1000 rows (other analyses have the same problem).
* B-06383: Added [[Sankey_Chart|Sankey chart]] to visualize flow from one set of values to another.
* 219042: PAPO: "Influence Analysis for Case Attributes", value is rounded to closest integer.
* B-07941: Implemented many more presets running in Snowflake models for compliance and operational excellence use cases. There are also presets for the path analysis and process bottlenecks identification.
* 218944: PAPO: Recycle bin icon in filter rule name is not visible when there is long text without spaces.
* B-07864: Snowflake conformance analysis shows now [[Conformance_Analysis#Top_Deviations_(in-memory)_/_Deviating_Flows_(Snowflake)|reasons for conformance deviations]], such as which event occurrences deviated from the design model.
* 219041: When duration limit 0, filters made from duration beams don't work.
* B-07909: Snowflake conformance analysis visualizes [[Conformance_Analysis#Undesired_Events_(Snowflake)|undesired event types]] in table and flowchart.
* 219099: Datetimes in expression language query don't show fraction of seconds (QPR UI).
* B-07823: Flowchart Bottlenecks preset has been changed to show bottlenecks for event types. Also renewed the [[QPR_ProcessAnalyzer_Logs#Task_Log|Tasks reports]] to use expression language based interface.
* 219103: PAPO: context menu is not working in KPI analysis.
* B-07891: User interface has been [[Languages_and_Localization|translated into Portuguese]].
* B-07873: Improved [[QPR_ProcessAnalyzer_Pivot_Table|pivot table]] visual layout to highlight totals and aggregated rows. Also the row titles are now visible in the top left.
* B-07905: Added [[SQL_Expressions#Rank_functions|Rank related functions]] to Snowflake for writing more versatile custom KPI's, e.g., FirstValue, LastValue, NthValue, Lead and Lag.
* B-07912: Added more SQL expression [[SQL_Expressions#Array_functions|array functions ArrayToString and ArrayOverlap]] to Snowflake.
* B-06449: Added SQL expression functions ToTimestamp and TryToTimestamp for parsing timestamps from strings using provided format.
* B-07959: Added new functions Base64Encode and Base64Decode to help using basic HTTP authentication when calling web services.
* B-07206: SQL expressions support data [[SqlDataFrame_in_Expression_Language#WithClusterColumn|clustering]] which is an unsupervised machine learning algorithm to group data based on similarities.
* B-07848: Data can be extracted from SAP using the encrypted [[Importing_Data_from_SAP#SNC_encrypted_connection|SNC connection]].
* B-07903: Added expression language API to create and modify filters and models.
* B-03103: [[QPR_ProcessAnalyzer_Logs#Task_Log|Task log]] (operation log) can be accessed in expression language.
* B-07872: List aggregation with Distinct=true orders now items by their value.
* B-07940: Removed "Count" aggregation from textual values in Big data chart (you can use the Case count, Event count, etc. selection instead).
* B-07757: Backend support for datatables linking to user-definable Snowflake database, schema and table.
* B-07825: Improved error message when trying to use non-existing attributes in Snowflake queries.
* B-03101: To expression language, added try-catch-finally statement to handle thrown exceptions.
* B-07861: Removed available and total virtual memory information from User settings dialog.
* B-07902: Optimized sequences of joins in Snowflake queries to improve performance.
* B-07837: Updated backend components.


'''Fixed bugs in QPR ProcessAnalyzer:'''
'''Fixed issues:'''
* 219062: GetModels is slow for admin.
* D-13709: If image width-to-height ratio was lower than container's ratio, image was incorrectly stretched to fit the container.
* 218978: Odd 1 million filter is adapted once you remove your custom filter.
* D-13660: Disabling filter rules didn't work in Snowflake models.
* 219015: Script Launcher million rows limit when exporting to excel csv.
* D-13526: Passing dataframes from SQL scripts to expression scripts didn't work.
* 219022: GetModelAsStream webservice not support modelId.
* D-13661: Snowflake conformance analysis crashed when there was no access to conformance related Snowflake UDF's.
* 219080: JSON filtering does not work with flowchart analysis.
* D-13693: Resolved major Snowflake conformance analysis performance issues in the BPMN model handling.
* 219087: Increase from 1GB to 2GB limit in PA webservice.
* D-13716: Snowflake root causes analysis incorrectly bypassed Snowflake cache.
* 219032: PAPO Variation Analysis is not drawn.
* D-13707: In SQL Scripting, the datatable analysis (number 18) didn't always copy the data table contents to the target table correctly.
* 219017: Datetimes in expression language query don't show fraction of seconds (PA CORE).
* D-13653: Big data flowchart Root causes preset showed incorrect legend.
* D-13626: Flowchart froze when converting into big data flowchart and vice versa by modifying chart json settings.
* D-13656: Root causes for attribute gave error "Failed to compare two elements in the array" in some situations.
* D-11563: Pivot table had a minimum height of 300px, which caused bottom part of it to be out of view.
* D-13704: In CSV file import, parsing now allows spaces between column separator and text quotation mark.
* D-13598: Chart gave unclear error message when events datatable was not defined.
* D-13655: Improved error messages for BPMN editor and conformance statistics.
* D-13528: Error message for certain erroneous SQL expressions was unclear.
* D-13677: "Flow occurrences with specific case attribute value" selection didn't work for in-memory chart.
* D-13663: Pivot table border line was slightly broken in the header area.
* D-13608: There was incorrect alignment of items in the table paging controls.
* D-13703: Importing CSV file with some special characters to Snowflake failed (due to incorrect escaping in Snowflake staging files).
* D-13708: Duplicating datatable using user defined table, removed data the source table.
* D-13717: Dependency wheel crashed when there were zero weights and showing data labels.
* D-13348: There was an unclear error message when Snowflake query had a certain incorrect expression.
* D-13732: Pivot table Excel export contained headers formatted incorrectly.
* D-13729: There was a JavaScript error when limited user tried to access business calendar.
* D-13662: Percentile function didn't always work with timespan types.
* D-13646: Using incorrectly configured model without cases datatable caused null reference error.
* D-13629: When tried to use chart with a non-existing model, there is now a proper translated error message.


== Additional release for QPR ProcessAnalyzer 2019.4 (release date 2019-05-31) ==
== QPR ProcessAnalyzer 2023.3 (build 1990) (released 2023-05-03) ==
Build number: 2019.4.0.39800, Model compatibility version: 2, Database version: 59, PACM file version: 7.


'''Fixed bugs in QPR ProcessAnalyzer:'''
'''Features:'''
* 219078: PAPO loses saved filter when changing analysis
* B-07818: [[Conformance_Analysis|Conformance analysis]] is supported in Snowflake with following dashboard components: Big data chart, BPMN editor, Conformance statistics, and Design model selector.
* 219000: User with only Analyzer role can see and use private filter created by Administrator.
* B-07833: [[Root_Causes#Root_causes_in_flowchart|Root causes analysis for flowchart]] is available for Snowflake showing how the event and flow occurrences explain selected phenomena.
* 219049: Copy of a model with odbc datasource doesn't have filters from the original model.
* B-07786: Big data chart has more [[Big_Data_Chart#Measure_aggregations|measure aggregations]], such as median, percentile, standard deviation and variance. Also for textual items, unique values can be listed.
* 219044: Calculated case attributes don't work with odbc model without defined cases.
* B-07795: [[QPR_ProcessAnalyzer_Table#Conditional_formatting|Conditional formatting]] supports also columns with non-numerical contents.
* B-07830: [[Big_Data_Chart#Measure_aggregations|None and Any aggregations]] for Snowflake and user-friendly formatting for conformance violations.
* B-06527: Error messages in [[Importing_Data_to_Datatable_from_CSV_File|CSV file import]] show also the column number to help working with CSV files with lot of columns.
* B-07747: In-memory conformance checking accepts design models with multiple tasks having same name (same is followed by the Snowflake implementation).
* B-07659: In-memory flowchart preset Case Conformance to visualize conformance checking violations.
* B-07571: Added function IsConformant to backend to check whether cases are conformant.
* B-07863: Added function ConformanceViolationsFlows to backend to return nonconformance reasons for violating cases.
* B-07844: Support for "array" aggregation to return aggregated items as array.
* B-07856: Support for creating and accessing arrays and objects in SQL expressions.
* B-07860: Array handling functions and Tasks property for DesignModel entity.
* B-07847: Added throttling for QPR ScriptLauncher client-side imports to limit memory usage.
* B-07811: Snowflake query optimization to omit columns that are not used by the query.


'''Features for QPR ProcessAnalyzer:'''
'''Fixed issues:'''
* 307611: Drop support of PAIK.
* D-13632: Going from variations to event types led to very poor performance with certain models.
* 307636: Drop PA Excel client support for Excel 2010, Windows 7 and Windows 8.1.
* D-13628: Statistical calculations were incorrectly not applied in chart CSV export.
* 307628: Drop support for SQL core as PA data source (Part 3 Source code removal).
* D-13575: SQL script may have given error "Operand type clash: nvarchar(max) was incompatible with sql_variant".
* D-13597: UI supports now datatable column type "ShortString" (previously datatable contents preview and CSV import didn't work).
* D-13536: Using business calendar sometimes gave error "System.InvalidOperationException: Collection was modified".
* D-13477: Chart types without y-axis mapping caused an error when series mapping was used.
* D-13453: _model variable was not available for Snowflake expression filter rules.
* D-13527: Checkbox height didn't increase when long label needed to span to multiple lines.
* D-13363: Snowflake query with EvaluateAfterAggregations and IsHidden failed when dimensioning by case id column.
* D-13383: Snowflake query gave error "Invalid column name 'FromCase Name'".
* D-13523: Request id was incorrectly shown as zeros in error messages.
* D-13541: In CSV import, error message for maximum number of columns exceeded is improved (maximum is 300 column for SQL Server).
* D-13583: Objects count in header didn't work for empty Snowflake model.
* D-13553: Larger pacm files can now be imported, as there isn't error "Request body too large. The max request body size is 30000000 bytes".
* D-13306: Stack overflow error was given when using SqlDataFrames.
* D-13487: When Flows root and there was filter in Values expression, some flows were lost.
* D-13540: SqlDataFrame query with 300 columns failed to error "WithExpressionColumn: No name given for the new column".
* D-13429: Ordering in List aggregation couldn't find columns in dataframe query.
* D-13406: Dataframe query with root FlowOccurrences and get value from cases caused error.
* D-13538: There was incorrect handling of escaping characters in column names used in dimensions.
* D-13633: Fixed ordering in List aggregation with null and empty values.
* D-13636: Query that dimensions by numeric case attribute with AggregateOthers true, caused error.
* D-13589: Creating Snowflake datatable did not connect to Snowflake.
* D-13623: Value expressions without aggregation didn't work with AggregateOthers setting.
* D-13554: In in-memory chart, percentile function might have return both Int64 and Double type of objects which cannot be sorted.
* D-13481: Improved error message when trying to use deleted model.
* D-13621: Dynamic value search dialog had incorrect font in lists.
* D-13610: Some invalid BPMN files crashed BPMN editor.
* D-13614: Checkbox label texts overflowed to right.
* D-13520: Removed excessive parameters from the Query Designer for generic context queries.
* D-12998: QPR icon was incorrectly positioned in header in Safari.
* D-13480: Import to duration data type is removed from Snowflake datatables, and for local datatables duration type maximum size is checked.
* D-13517: In Highcharts-based visualizationsm conditional formatting didn't work for other than the first y-axis mapping.
* D-13529: In some presets containing several on-screen settings, when chart showed in error message, on-screen settings showed invalid selection.
* D-13530: Opening dropdown list caused JavaScript error when the list contents should be empty after it previously contained items.
* D-13486: Removed unreachable error message in CSV import.
* D-13524: Fixed in-memory chart flow occurrences root measures "Event attribute (text)" and "Event attribute (number)" that caused error.


== QPR ProcessAnalyzer 2019.4 (release date 2019-05-07) ==  
== QPR ProcessAnalyzer 2023.2 (build 1478) (released 2023-03-22) ==
Build number: 2019.4.0.39420, Model compatibility version: 2, Database version: 58, PACM file version: 7.


'''Release Highlights''':
'''Features:'''
* Custom dashboards for QPR ProcessAnalyzer can be browsed and edited more easily, as there is a Dashboards menu item available.
* B-07755: [[Business_Calendar|Business calendar]] for duration calculation is available for Snowflake models.
* B-07719: In Snowflake dashboards, [[Big_Data_Chart#Using_measure_variables|measures can be assigned to variables]] and use the variables in other measures to create combined measures.
* B-07746: Changed in-memory conformance checking to not show invalid flow violations where starting or ending event type is invalid.
* B-07743: [[PA_Configuration_database_table#General_Settings|Default datasource]] can be configured for datatables created by scripts, allowing to set Snowflake as default.
* B-07740: System memory indicator moved from the header to User settings Version information dialog.
* B-07776: New SQL expressions functions Unicode, Char and Regexp, as a basis for future rule-based process mining.
* B-07741: Backend support for aggregation operations Median, Percentile, Stdev, Stdevp, Var and Varp to Snowflake.
* B-07742: Backend support for aggregation operation to list unique items in Snowflake.
* B-07770: Optimized Snowflake SQL generation by combining consecutive WithColumn function calls into one select.


'''Features for QPR ProcessAnalyzer:'''
'''Fixed issues:'''
* 307419: Change the database connection type to use in-memory core (PA Core).
* D-13491: QPR ProcessAnalyzer server crashed now and then when sorting was in progress and the query was cancelled.
* 307324: Drop support for SQL core as PA data source (Part 1: Export from EventLog).
* D-13380: Dimensioning integers in in-memory core calculation didn't work correctly as 0 and -1 were put to same bucket.
* 307619: Drop support for SQL core as PA data source (Part 2: Remove analysis 26, 27 and 28).
* D-13385: In Workspace Bin, Delete Forever and Restore from Bin buttons were misaligned.
* 307523: Refactor ModelInformation code in PA Core.
* D-13332: Conformance checking didn't show in violations when there were multiple undesired events in same case.
* 307613: Quick & Easy memory usage optimizations: PA Core.
* D-13405: Images take now always all available space in image component area.
* 307618: Prediction capability to expression language.
* D-13417: KPI card without title was slightly misaligned vertically.
* D-13438: Clicking selected event type or flow in flowchart didn't cancel the filter selection.
* D-13350: Task log and Script log default filter end date is now empty by default.
* D-13381: Disabled browser auto-complete from flowchart variation stepper and Workspace create/rename object dialog.
* D-13347: Improved performance for in-memory business calendar calculation.
* D-13335: In in-memory chart, filtering didn't work in "Flow occurrences" root "Flow occurrences with specific event attribute value" dimension.
* D-13367: Percentage value wasn't displayed properly with German or Spanish language when event types were shown in object counts indicator.
* D-13451: Exported filter file is now named based on selected filter name.
* D-13378: In Big data chart, prevented error "Unable to aggregate from level RootCauses to level Custom".
* D-13293: DataFrame query with root Flows and IncludeEvents and ExcludeEvents filter rules failed.
* D-13370: Fixed issue where on-screen settings that didn't have any selectable items, showed a strange selection.
* D-13392: Clustering analysis was incorrectly shown when originally in-memory chart was converted into big data chart by changing chart json settings.
* D-12784: Some Snowflake queries incorrectly bypassed Snowflake caching because they used unique object names.
* D-13456: Improved error messages for incorrectly configured on-screen settings.
* D-13445: Conformance violations related translated terms have been fine-tuned for better translations into different languages.
* D-13421: Improved error messages when trying to use model having some column mappings missing.
* D-13485: Snowflake business calendar gave error when calendar contained Sunday.
* D-13218: Windows event viewer incorrectly contained log entries that are not errors.
* D-12634: Multiline text boxes width is set to non-changeable.
* D-13034: Confirmation dialog to delete items permanently has been updated.
* D-13288: In dialogs, the Create button didn't show the disabled state correctly.
* D-13427: When dropdown lists didn't have any selectable items, the "N/A" text appeared and the list incorrectly took more space vertically.
* D-13483: In Workspace, the new items menu was too narrow for Spanish texts.


'''Fixed bugs in QPR ProcessAnalyzer UI:'''
== Additional release for QPR ProcessAnalyzer 2023.1 (build 1449) (released 2023-02-24) ==
* 218909: Data grid based analysis jumping.
* 218971: PAPO Variation analysis has both paths and counts at the same time.
* 218972: PAPO Duration analysis missing the grouped by dimension (default value is not set in analysis).
* 218969: Event attribute "Cost" doesn't work in Profiling Events analysis and in Expression language.
* 219006: Case id's (case names) are interpreted as numbers by PAPO.
* 219027: Numerical attributes are shown as zero decimals in some analysis in data grid presentations.


'''Fixed bugs in QPR ProcessAnalyzer:'''
'''Features:'''
* 218938: Filter rules information is not showing names for odbc loaded models and calculated case/event attributes.
* B-07690: System setting [[PA_Configuration_database_table#General_Settings|DatabaseId]] can be defined by administrator to get more simple table names in Snowflake.
* 218945: PA UI Profiling and Event type analysis with selections costs are lost.
* B-07737: In flowchart Bottlenecks preset, originally used flow colors has been recovered.
* 218976: Inconsistency in pre-processing CaseEvents results.
* B-07748: For Analyzed objects "Conformance checking findings" in charts, terminology has been revised and issue with the case count calculation fixed.
* 219012: Pre-loaded models give null reference exception.
* B-07663: In [[Chart_On-screen_Settings|on-screen settings]], when case/event attribute is selected, related attribute values list are reset.
* 219008: Key is not in dictionary is thrown when selecting benchmark case attribute.
* B-07570: Backend support for [[Business_Calendar|business calendars]] in Snowflake.
* 219034: Model calculation context for expression data source is not initialized correctly.
* B-07660: Backend support for conformance checking to show also the last event index and event type in NotCompleted reason.
* 218920: Private filters are visible for other users (which is fine for admins but not for other user types).
* B-07610: Memory counter related technical properties have been removed from expression language.


== QPR ProcessAnalyzer 2019.3 (release date 2019-03-27) ==
'''Fixed issues:'''
Build number: 2019.3.0.38860, Model compatibility version: 2, Database version: 58, PACM file version: 7.
* D-13349: Opening dashboard containing Root causes preset with default settings jammed the system by generating lot of calculations (for more information, see previous release notes).
* D-13277: Stacked charts with date type of data as series did incorrectly show gaps in columns/bars.
* D-13270: Flowchart conditional formatting didn't work with duration multi-unit format.
* D-13358: Calculation results caching works also across different user sessions.
* D-13250: Dashboard with two charts connected with linked settings using variables ended up to to a never ending loop.
* D-13230: SAP import did not automatically create columns to use the correct column types.
* D-12857: Deeply recursive functions caused a crash without any trace.
* D-12994: In Workspace, some buttons were not clickable due to breadcrumb covering them.
* D-13249: In Workspace, there was incorrect error message for duplicate datatable names when there were items with only letter capitalization was different.
* D-13232: In-memory chart Top variations preset is now sorted secondarily by average duration descending.
* D-13300: Setting DashboardFilter variable to empty value didn't have any effect in dashboard but old value was incorrectly used.
* D-12834: Limited the maximum number of dimensions to 20, to avoid too demanding queries for SQL Server.
* D-12917: Changed visual indication of missing items in dropdown lists (it's no longer showing "***").
* D-13111: In Root causes preset, there is now error message when trying to use weighting related columns when weighting isn't in use.
* D-13124: SQLDataFrame query containing filter rule EventTypes aggregating from cases failed.
* D-13207: Dataframe query with AggregateOthers, AggregationFunctionForOthersRow and EvaluateAfterAggregations failed.
* D-13292: Dataframe query with AggregateOthers, AggregationFunctionForOthersRow and EvaluateAfterAggregations failed (rev.2).
* D-12991: Dropdown list texts had some translations missing.


'''Release Highlights''':
== QPR ProcessAnalyzer 2023.1 (build 1433) (released 2023-02-07) ==
* It's possible to add [[Calculated_Attributes_in_QPR_ProcessAnalyzer|calculated case and event attributes]] to QPR ProcessAnalyzer models using the expression language. Calculated attributes are created when the model is loaded into memory, and they are available in the analyses like the normal imported attributes. Calculated attributes allow e.g. data conversions and cleansing, and also making calculations beforehand to improve performance.
<div style="border:1px solid #dfdfdf;padding:0.5em 1em 0.5em 1em;background-color:#E7EAEC;margin:10px 0px 0px 10px;">
* QPR ProcessAnalyzer has a new [[Clustering Analysis]], which divides cases into similar groups based in case attributes and occurred types of events. Clustering analysis provides a new way to understand and structure your process mining data.
This release contains a potentially severe issue, where some dashboards completely jam the system by generating lot of calculations. The issue may appear in dashboards that have been created in earlier releases and containing the Root causes preset with default settings. The issue will be fixed by the next release. The issue can be worked around by exporting the affected dashboard, modifying the dashboard file manually and importing the dashboard back. The required modification is to remove line(s) containing <pre>"preset": "RootCauses"</pre> and the comma from the preceding line.
* In the expression language, the left out rows can be [[QPR_ProcessAnalyzer_Expression_Analysis#Expression_Analysis_JSON_Configuration|aggregated as the last row]], which is useful, e.g. when you want to present only the most important data but still see the total amount of cases in the model. Also ChartView contains a new setting Group and Show Others using this expression language feature.
</div>


'''Features for QPR ProcessAnalyzer UI:'''
<div style="border:1px solid #dfdfdf;padding:0.5em 1em 0.5em 1em;background-color:#E7EAEC;margin:10px 0px 0px 10px;">
* 307507: Disable rectangular selection in flowchart.
Following legacy analyses have been removed: Cases (analysis number: 5), Events (6), and EventTypes (7). This functionality may be in use in SQL scripts (in [[SQL_Scripting_Commands#--.23GetAnalysis|--#GetAnalysis]] command), and thus needs to be changed to the [[SQL_Scripting_Commands#--.23RunQuery|--#RunQuery]] command (see the [[RunQuery_Script_Examples|examples page]] how each legacy analysis can be replaced). Note that the legacy analyses removal don't affect the dashboarding functionality.


'''Features for QPR ProcessAnalyzer:'''
Following script can be run in the [[Navigation_Menu#Expression_Designer|Expression Designer]] to show whether there are scripts that use the removed analyses (and thus require migration):
* 307545: KPI: Clustering analysis and related utility functions.
<pre>
* 307512: Expression language: Description attribute to Model.
let removedAnalyses = [5, 6, 7];
* 306900: Calculated case and event attributes.
OrderByDescending(Flatten(Projects.Scripts).Where({
* 307533: Level of event log pre-processing can be set for [[QPR_ProcessAnalyzer_Expression_Analysis#KPI_Analysis_JSON_Configuration |expression analysis]].
  let scr = _;Sum(removedAnalyses.("'AnalysisType','" + _ + "')").{let num=_;(scr.code ?? "").Replace(" ", "").Replace("\t", "").Replace("\n", "").Replace("\r\n", "").Replace("\r", "").Contains(num)})>0;
* 307575: [[Web.config_file_in_QPR_ProcessAnalyzer#Qpr.ProcessAnalyzer.Common.Properties.Settings_Section |Change items memory caching times]].
}),LastRunStart).(Project.Name + ": " + name + " (id: " + id + ") (last run: " + (LastRunStart ?? "N/A") + ")");
* Support for Windows 8 has been dropped. Windows 8.1 is still supported.
</pre>
</div>


'''Fixed bugs in QPR ProcessAnalyzer UI:'''
<div style="border:1px solid #dfdfdf;padding:0.5em 1em 0.5em 1em;background-color:#E7EAEC;margin:10px 0px 0px 10px;">
* 218863: Model manager not updated after changing Filter Id.
Starting from QPR ProcessAnalyzer 2023.1, the '''.NET Desktop Runtime''' is not needed anymore for QPR ProcessAnalyzer Server, so it can be uninstalled. Also for QPR ScriptLauncher, ''.NET Desktop Runtime'' is not needed, but instead install the '''.NET Runtime''' (which is more lightweight). ''.NET Desktop Runtime'' contains the ''.NET Runtime'', so the actions are not mandatory when updating to QPR ProcessAnalyzer 2023.1.
* 218874: Sorting and filtering icons overlap in datagrid.
</div>
* 218922: There should be default maximum number of items for different analyses created from tool palette.
* 218723: Empty analysis window after error thrown by PA service.


'''Fixed bugs in QPR ProcessAnalyzer:'''
'''Features:'''
* 218908: Wrong Client data in operation log.
* B-06997: Expression-based filter rules for Snowflake dashboards to allow versatile filtering and filtering from custom expressions.
* 218928: Expression filter doesn't work with integers.
* B-07383: Improvements to linked settings to allow binding to variables, tags and filter rules [[Chart_Linked_Settings|(more information)]].
* 218940: Model eventlog can drop from memory.
* B-07508: Flowchart preset colors have been renewed to be more intuitive.
* 218927: JSON filtering for case attributes doesn't work with nulls.
* B-07184: Automation preset in flowchart has now options for selecting the Automation attribute and value.
* 218779: Source data formatted to two decimals accuracy but PA total cost flowchart show much more decimals.
* B-07512: Changed datatable metadata can be refreshed from Snowflake, and all rows in the datatable can be deleted easily in Workspace [[QPR_ProcessAnalyzer_Project_Workspace#Datatables|(more information)]].
* 218943: ODBC SQL boolean values does not work with filter CaseAttributeValue.
* B-07440: Date when the release was made is now shown in User settings.
* 218965: Accessing calculated event attribute value from EventType.Events -property does not work.
* B-07595: WeekOfYear property for DateTime objects in expression language to get the week number of a year (between 1 and 53).
* B-07623: In-memory expression language functions Random (to get random numbers) and Hash (to get hash value of string).
* B-07612: Breadcrumb in Workspace has now a Home button to quickly navigate to the top level of the projects hierarchy.
* B-07637: Language selector now shows the language options in local languages.
* B-07228: Remove following deprecated analyses: Cases, Events, and EventTypes (see the release note above).
* B-07538: Backend support: Snowflake root causes analysis can find event attribute related root causes.
* B-07706: Backend support: Snowflake expression-based filter rules support for roots containing Where function.
* B-07611: Removed following legacy filter rules: CaseAttributeTrend, EventAttributeTrend, EventTypeTrend, and Duration.
* B-07598: Refactored client-side import for SQL scripting to use generic client-side task mechanism.
* B-07716: ShortString columns are now properly detected in SQL Server queries.
* B-07652: Now it's possible to pipe multiline expression strings to QPR ScriptLauncher.
* B-07688: AddColumns function for Datatables to create multiple columns in one call.


== QPR ProcessAnalyzer 2019.2 (release date 2019-02-14) ==
'''Fixed issues:'''
Build number: 2019.2.0.38539, Model compatibility version: 2, Database version: 58, PACM file version: 7.
* D-13092: Table conditional formatting didn't work when color code was fetched from other column.
* D-13105: Some charts created in earlier release referring to non-existing presets names appeared as empty after software update.
* D-13107: Flowcharts crashed and showed loading animation forever when setting color or flow thickness to non-numerical measure.
* D-13104: In BPMN model editor, context menus to edit elements didn't appear.
* D-12939: Script editor tabs Close buttons didn't work.
* D-13154: "Search by case ID" didn't work in in-memory chart.
* D-12933: CSV columns with only empty values were incorrectly auto-detected as integers.
* D-12929: In-memory chart Root causes for case duration and Root causes for case attributes (weighted) had Custom expression missing.
* D-12928: Pivot table headers were empty when there were two column levels and two values.
* D-12924: Pivot table columns with Count and Distinct Count aggregations are now numeric and aligned right.
* D-13033: Changing colors in chart settings Color palette caused "Item already exists" error and prevented changing colors.
* D-12996: Tags referring to dashboard variables didn't work in Additional root expression.
* D-12877: UI gave error in some situations: Uncaught TypeError: Cannot read properties of undefined (reading 'min').
* D-13071: Prevented selecting two or more of the Y-axis, X-axis and series mappings at the same time for the same measure or dimension.
* D-12895: Big data chart crashed when on-screen setting contained event type selector and there were no event type filter set.
* D-13231: Tooltips for dashboard name, model selector and filter selector in header show now the content text instead of generic instruction.
* D-13139: There was an error when tried to create filter for a custom expression where selected data type didn't match with the actual type of data.
* D-12988: Chart presets selection in chart settings showed unnecessary tooltip.
* D-12901: When set sampling over 1 million, Snowflake models gave error: parameter value out of range: size of fixed sample. Must be between 0 and 1,000,000.
* D-12904: Creating expression filter having lower/greater logic with root objects sampling failed.
* D-12923: Chart schema didn't accept pivotAggregation in dimensions/columns.
* D-12926: Root causes columns Selected weight, Compared weight and Total weight have now correct float data type.
* D-12880: In out-of-the box dashboards, chart titles and subtitles were not translated.
* D-12916: Improved filter rule description text in Filter rule editor dialog for expression filter rules.
* D-12889: No clear error message was given when user tried to export corrupted model from .pacm file.
* D-12869: Date selector in on-screen settings had inconsistent vertical alignment.
* D-12938: When creating a filter with lasso and selecting a single data point only, "equals" kind of filter rule is now created.
* D-12989: "Running tasks as specific time" system report may have ended up in loop causing following error: Maximum call stack size exceeded error.
* D-13010: Pivot table sometimes ended up to never-ending resizing loop when browser zoom was more than 100%.
* D-12790: Expression language: DataFrame.SetColumns: Initializing and using variables defined in closure of SetColumns function parameter didn't work
* D-12927: All on-screen settings were not be visible in narrow charts having several on-screen settings.
* D-12937: Added maximum value limitation to several number input fields in charts.
* D-12947: Message dialog didn't show line breaks correctly (e.g., in CSV file import).
* D-12948: Defining column setting caused error when Measure Expression was not defined.
* D-12946: Filter rule text couldn't be seen entirely from tooltip.
* D-12983: When range filtering using integer values in Highcharts chart, filter is now shown as integer value.
* D-12984: When range filtering in Highcharts charts and there is category axis, filter rule is now based on individual (category) values.
* D-12930: When creating filters from charts using date type of X-axis with lasso, "greater than or equal" and "less than or equal" filter rules are not created.
* D-12920: "Where" function in DataFrame lost column data types of the original DataFrame.
* D-13048: Model notifications failed with certain measures that define variables in root expression leading to error: Variable "sampleSize" already exists in this context.
* D-13116: BPMN editor had some translations missing.
* D-13019: Datatable and script selectors show now datatable/script name instead of id, when opening selector having existing selections.
* D-12951: Changing additional root expression in flowchart didn't refresh the flowchart.
* D-13147: Filter rule boxes in header had different widths, and Add filter rule button vertical alignment was incorrect.
* D-12907: Sometimes case attribute selection showed incorrect attribute name for empty model.
* D-13148: Filters and Datatables system reports loaded unnecessarily twice which could be seen as blinking.
* D-12844: In dataframe query, FlowOccurrences in root and GetValueFrom Cases with filter gave null reference exception
* D-12915: Repeating certain query twice with aggregations in Events root generated invalid SQL
* D-12728: Was huge amount logs in server during client side import (manual testing required as identification)
* D-13156: Persist function failed to snowflake: Invalid unicode escape sequence '\u0027ACCE'; should be at most '\u0010FFFF'.
* D-12876: Flows/FlowOccurrences in root didn't work with SqlExpressionValue filtering.


'''Release Highlights''':
== Additional release for QPR ProcessAnalyzer 2022.8 (build 1397) (released 2023-01-11) ==
* Support for [[QPR_ProcessAnalyzer_System_Requirements#System_Requirements_for_QPR_ProcessAnalyzer_Excel_Client| Microsoft Office 2019]] for QPR ProcessAnalyzer Excel Client.
<div style="border:1px solid #dfdfdf;padding:0.5em 1em 0.5em 1em;background-color:#E7EAEC;margin:10px 0px 0px 10px;">
This release fixes an issue where extracting large datasets from SAP increases memory consumption considerably and may lead to out-of-memory error. This release contains packages for both QPR ScriptLauncher and QPR ProcessAnalyzer Server. If SAP extractions are done using QPR ScriptLauncher in client side mode (ExecuteInClientSide=1), it's enough to update QPR ScriptLauncher to fix this issue.
</div>


'''Features for QPR ProcessAnalyzer:'''
'''Fixed issues:'''
* 307423: Improved memory management: unused objects are automatically dropped from the memory. Settings can be configured in [[Web.config_file_in_QPR_ProcessAnalyzer#Qpr.ProcessAnalyzer.Common.Properties.Settings_Section | web.config]] or from the [[QPR_ProcessAnalyzer_Model_JSON_Settings#Memory_Usage_Settings | model JSON settings]].
* D-12941: Extracting data from SAP consumed unnecessary lot of memory and may have led to out-of-memory error (both when running using QPR ScriptLauncher and in server side).


'''Fixed bugs in QPR ProcessAnalyzer UI:'''
== QPR ProcessAnalyzer 2022.8 (build 1396) (released 2022-12-30) ==
* 218838: KPI analysis: Event Occurrence Time isn't calculated properly, e.g. Period=Month fails.
<div style="border:1px solid #dfdfdf;padding:0.5em 1em 0.5em 1em;background-color:#E7EAEC;margin:10px 0px 0px 10px;">
Creating datatables with duplicate names in the same project is prevented, and possible existing duplicate names are automatically changed to unique names with a random suffix. If there are duplicate names, they can be renamed either before updating QPR ProcessAnalyzer (to avoid automatic renaming) or after the update (by changing suffixed names). If the renamed datatables are used by models, the linkage will break because it's based on the datatable name. Creating duplicate datatables has already been prevented in the UI, but the improved method works also in the API level.


'''Fixed bugs in QPR ProcessAnalyzer:'''
Following SQL query can be used to list datatables (and project id) having duplicate names:
* 218880: PAPO: odbc case and event attributes are not shown in dropdown menu.
SELECT ITA_NAME, ITA_PROJECT_ID
* 218877: Support material - Project admins are not able to create new users.
FROM PA_INTEGRATION_TABLE
* 218898: Importing XES file with xmlns -definition fails.
GROUP BY ITA_NAME, ITA_PROJECT_ID
* 218893: Model status shows incorrectly "offline" when Model event log is in memory and Model information not.
HAVING Count(*) > 1
* 218917: BaseContext.EvaluateChildExpression with given root object iterates the root object if it is an array.
</div>


== Additional release for QPR ProcessAnalyzer 2019.1 (release date 2019-01-23) ==
<div style="border:1px solid #dfdfdf;padding:0.5em 1em 0.5em 1em;background-color:#E7EAEC;margin:10px 0px 0px 10px;">
Build number: 2019.1.0.38400, Model compatibility version: 2, Database version: 58, PACM file version: 7.
If trying to use business calendar for a model that doesn't have the business calendar defined, there will now be an error message instead of showing the chart. Either unselect the business calendar checkbox for the measure or dimension, or define a business calendar to the model. In this situation in earlier releases the business calendar was ignored and full time calculation used.
</div>


'''Features for QPR ProcessAnalyzer:'''
'''Features:'''
* B-07498: Automation and Operational Excellence presets and Root causes analysis (for Snowflake), Weighted root causes analysis and Event scattering preset (for Snowflake and in-memory), Root causes for case duration (in-memory).
* B-07177: Flexible mappings, user selectable aggregations and conditional formatting for Pivot table, and flexible mappings for KPI Card.
* B-07518: New function named Query to run call /api/expression/query.
* B-07294: In Workspace, the left side projects hierarchy can be collapsed and expanded to make more space to project contents.
* B-06814: In SQL expressions, new function DurationBetweenDates to calculate duration between timestamps precisely.
* B-07519: Replaced DateDiff function with the new DurationBetweenDates function in big data chart.
* B-07531: In SQL expressions, new mathematical functions Abs, Log, Mod, Power, Rand, Sign and Sqrt.
* B-07297: To optimize performance, Snowflake queries are automatically cancelled if they are not needed by UI.
* B-07569: To optimize performance, TakeSample function implementation is improved for Snowflake.
* B-07198: Several performance improvements to DataFrame queries (used in Snowflake).
* B-07464: Added Lead and Lag functions to SqlDataFrames to support getting previous and next event.
* B-07470: New ExtractSap function to fetch data from SAP using expression language.
* B-07536: New Pivot function to SqlDataFrames to enable root causes analysis.
* B-07488: Primary keys can be set to datatables to improve calculation performance (UI will follow later).
* B-07515: Added RootCauseAnalysis function to SqlDataFrames.
* B-07546: RootCauseAnalysis function support for complex weighting expressions.
* B-03052: Support for user-defined variables in /api/expression/query.
* B-07565: Support for NumberPrecision, DatetimeTruncation and TimespanPrecision properties for Values section in in-memory query.
* B-07513: For product activation file handling, replaced mutex based implementation with exclusive file lock.
* B-07480: Expression language support for DataFlows for data extraction.
* B-07613: Removed support for SQL Server based R scripting.
* B-07567: Take datatable primary keys into use in expression builder to improve performance (part 2).
* B-07588: Remove total memory information from log writing and DateDiff function for in-memory.


* 307357: PA model management: Analysis requests canceling. All operations have new parameters QueryIdentifier and CancelEarlierQueriesWithIdentifier.
'''Fixed issues:'''
* D-12715: Snowflake calculated imprecisely some operations containing division and aggregation.
* D-12761: Progress bar of the CSV import dialog didn't show any progress.
* D-12799: Opening datatable contents dialog settings was slow when there were lot of rows in the datatable.
* D-12089: Include conforming/nonconforming cases made BPMN editor no responding.
* D-12496: Datagrid filter search keyword didn't work for rounded values, so the search was hidden for other than textual data.
* D-12704: Durations as quarters was calculated incorrectly in charts.
* D-12662: Fixed issue where some special literals in custom expressions didn't work.
* D-12403: Setting Notifications on a model had some visual issues.
* D-12859: Dependency wheel visualization crashed with nulls values in From and To mappings.
* D-12660: Removed unnecessary float conversions in SQL expressions.
* D-12653: In-memory datafram OrderByColumns function with mixed values failed.
* D-12657: When trying to use milliseconds period in some presets, frontend frozed.
* D-12706: Line breaks in data were shown in many places where it's undesired.
* D-12719: Syncfusion dialog headers showed backslaces incorrectly.
* D-12372: Refused to run the JavaScript URL because it violated the Content Security Policy directive.
* D-12730: Logging out when filter selection is in progress, gave javascript error.
* D-12705: Header object counts tooltip was sometimes messed after logout.
* D-12384: Selected project was not highlighted for whole project name string.
* D-12581: Prevented creating duplicate datatable names in same project in parallel execution.
* D-12722: There was incorrect syntax near '<' when running SqlDataFrame expressions.
* D-12736: Swedish and Finnish translation improvements for object counter tooltips.
* D-12702: For BPMN Editor component "Something went wrong" error was given when switching from in-memory to Snowflake model.
* D-12712: UI gave error: TypeError: Cannot read properties of undefined (reading 'id').
* D-12738: Business calendar showed total business time when calendar configuration was invalid.
* D-12776: Special character filter caused JavaScript SyntaxError.
* D-12785: Unnecessary vertical scrollbar displayed for main header toolbar.
* D-12164: There was unnecessary UnauthorizedAccess errors in logs.
* D-12580: Case duration was not same when comparing Big data chart with in-memory chart for same data.
* D-12768: Data grid links and variable change actions didn't work when grouping was used.
* D-12735: FindRootCauses (in-memory) function filtered out cases with zero contribution.
* D-12763: --#CallWebService didn't work from ScriptLauncher.
* D-12789: There was timeout in SQL queries to scripting sandbox.


'''Fixed bugs in QPR ProcessAnalyzer:'''
== QPR ProcessAnalyzer 2022.7 (build 1331) (released 2022-11-15) ==
* 218806: Variation filter doesn't filter correctly.
<div style="border:1px solid #dfdfdf;padding:0.5em 1em 0.5em 1em;background-color:#E7EAEC;margin:10px 0px 0px 10px;">
* 218802: It should not be able to load deleted models into memory.
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.
* 218866: Case Analysis shows "0" for textual Case Attribute (SelectedActivityCounts=0 column count and data not match).
* 218862: Case Analysis returns incorrect Start and End times when start or end transition is selected.
* 218847: Variation Analysis Include Only Cases Filter Fails when using Event Counts and filter.
* 218765: Event Occurrence Time calculation for KPI analysis (Server side).


== QPR ProcessAnalyzer 2019.1 (release date 2019-01-03) ==
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.
Build number: 2019.1.0.38310, Model compatibility version: 2, Database version: 58, PACM file version: 7.


'''Release Highlights''':
Following SQL query can be executed in the QPR ProcessAnalyzer metadata database to reveal dashboards that potentially have prevented expressions:
* There are new training videos available for QPR ProcessAnalyzer in QPR Community. QPR ProcessAnalyzer users can access the videos by clicking Training Videos in the header menu of QPR ProcessAnalyzer UI.
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(%'
* ChartView can show several measures at the same time. In table, measures are in different columns, and in chart, measures are presented as different series.
</div>


'''Fixed bugs for QPR ProcessAnalyzer UI:'''
'''Features:'''
* 218768: Number of decimals is not updated in KPI analysis due to HistoryId context variable.
* B-07287: Process Discovery and most important presets for Snowflake.
* 218787: Datagrid export fails with numerical values.
* B-07271: "Last Row Aggregates Over-limit Rows" setting for big data chart.
* 218757: KPI analysis - null value shown as NaN.0 in table.
* B-06431: Snowflake datatables support for database views in the datasource.
* 218794: Popup menu is replicated when PAPO is drawn multiple times.
* B-07266: Security: "limited mode" to prevent data modifications and external calls from dashboard expressions.
* 218740: Case Analysis Year period should not show thousand separator.
* B-07097: Improved flowchart root causes color scales.
* 218805: Analysis not shown after adding duration analysis to panel using view designer "shortcuts buttons".
* B-07363: SQL LIKE function support for escape character.
* 218804: PAPO showing only Analysis Window doesn't show anything when other PAPO hides the Analysis window.
* B-06877: Improved variation queries performance in Snowflake, part 1.
* 218815: Flowchart influence analysis does not always show the results in an identical way.
* B-07444: Improved variation queries performance in Snowflake, part 2.
* 218791: Flowcharts visibility stepper don't work in PA deployment package Process benchmarking view.
* B-07382: Support for empty strings and nulls in event type names in dataframe processing.
* 218844: KPI Analysis sorting is not saved to the context variable.
* B-07273: WithRowNumberColumn, WithRankColumn, WithDenseRankColumn support for descending sorting.
* B-07303: FindRootCauses function support for weighting expression.
* B-07327: Unpivot function for SqlDataFrames (for root cause analysis).
* B-07385: Align token lifetime with SESSION_MAXIMUM_DURATION setting.
* B-07500: ColumnMappings property for IDataFrame and DataTables.
* B-07499: IDataFrame.ApplyFilter function to filter events data using a JSON-based filter.
* B-07469: Translation updates for release 2022.7.


'''Fixed bugs in QPR ProcessAnalyzer:'''
'''Fixed issues:'''
* 218755: If user selects Influence Analysis for Case Attributes into analysis window, it freezes the analysis window completely.
* D-11630: Drag and drop from chart settings to main header was working incorrectly for filter and root cause rules.
* 218756: PA model - with event attributes - without case attributes = event attributes shown in profiling case attributes analysis.
* 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.
* D-11382: Moving of flowchart was sometimes shaky.
* D-12655: Filter rule tooltips in header were styled incorrectly.
* D-12656: Large integer values in filter jsons were incorrectly presented as small integers.
* D-12661: Some exported filters contained unnecessary "invert" property.
* D-12500: Model with numeric case id's and filtering with the attribute mapped as case id: ERROR [22018] Numeric value <nowiki>''</nowiki> is not recognized.
* D-12509: Filtering null values didn't work in boolean attributes in Snowflake.
* D-12571: In dataframe processing in SQL Server, dividing two integers should not make rounding to integer.
* D-12610: Setting for global DropUnusedFiltersAfter was missing.
* D-12613: Filtering with case/event attributes with null values didn't match in Snowflake models.
* D-12617: Model didn't work when DropUnusedFiltersAfter is 00:00:00.
* D-12618: If model ConfigurationJson is null, Configuration property didn't work.
* D-12620: Filtering didn't work when there are backslaces in attribute names in Snowflake models.
* D-12643: AttributeFunctionCallExpression did not always work properly in array context.
* D-12647: SqlDataFrame with SQL Server: Comparing literals to variant column values failed.
* D-12648: Models that have DropUnusedModelsAfter setting caused "The sliding expiration value must be positive" error.
* D-11526: It was unable to translate Unicode character \uD83D at index 176 to specified code page.
* D-12637: In application startup arised FATAL Application startup exception System.UnauthorizedAccessException: Access to the path 'Global\MutexQPRPAActivation' is denied.


== Old Releases ==
== Old Releases ==

Latest revision as of 09:20, 27 March 2024

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

Next Release: QPR ProcessAnalyzer 2024.3 (planned release date 2024-04-02)

Features:

  • B-08242: Custom actions in scripts can be started from dashboard table context menu, e.g., create tickets, trigger automation, and fetch external information.
  • 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-08268: (1) In Overview flowchart preset, flow width visualizes now case volumes. (2) When converting Snowflake expression into custom, the expression filter is preserved and not embedded into the expression.
  • 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-07906: Implemented cross joins to SQL dataframes.
  • B-03047: Removed support for dashboard panels.
  • B-08214: Removed unused columns from the PA_VIEW table.
  • B-08221: Snowflake query performance has been improved by using cached filters to build new filters.
  • B-08254: Frontend components have been updated.
  • B-08255: Backend components have been updated.

Fixed issues:

  • D-14048: Fixed issue where in-memory root causes analysis for case attributes didn't show attributes with ShortString data type.
  • 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.

Latest: 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)

Known issue: Snowflake models and dashboards don't work with Viewer and Analyzer role permisions. The reason is that cache tables created to Snowflake incorrectly require the write permissions. Workaround is to give users the Designer role which will give the needed permissions. Note that the Designer role gives many permissions to the user for the project (more information). This issue has been fixed in the next release (D-14045).

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)

Known issue fixed in QPR ProcessAnalyzer 2024.2: In Big data chart, some measures, dimensions and columns have the filtering option missing. The issue concerns for example Duration between events, Path starting/until between specific events, and Cases where event occurs before other selections. Workaround is to set the filter in the chart json settings: the filter can be configured to another expression and copied to the correct expression.

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.

QPR ProcessAnalyzer 2023.7 (build 4326) (released 2023-11-28)

Limitation for the maximum amount of data (B-07636) causes a behavior change in in-memory charts that have the Maximum rows settings empty and have the sorting defined. In certain cases, the order in which measures are evaluated changes (due to an internal performance optimization). If there are custom expressions that define variables, the variables may not be available in other measures anymore. As a resolution, either redefine the variables in those measure expressions or add those measures secondarily to the sorting.

Default query timeout of 30 minutes has been added for --#ImportOdbcQuery, --#ImportSqlQuery and --#ImportOleDbQuery commands. If a query run is taking longer than the timeout, the query is stopped. The timeout can be adjusted using the QueryExecutionTimeout parameter. Previously, there has been no timeout, so queries that take more than 30 minutes require configuring a longer timeout.

Incorrectly configured linked settings in charts (available in the Advanced tab) give now an error message, if they are referring to non-existing measures, dimensions or columns. Previously, incorrect linked settings were ignored. To fix the error message, remove the incorrect linked settings.

Features:

  • B-07511: Datatables have a dialog to view datatable properties, write description, set the Snowflake source table, add/modify/delete columns, and set the datatable key.
  • B-08150: Added setting Apply chart filters first to determine whether chart filter rules or dashboard filter rules are applied first when chart queries are filtered.
  • B-08091: When filtering charts in Snowflake, case attribute filter is created instead of case id filter.
  • B-08091: New setting to define whether cases or events are filtered by default.
  • B-08091: New preset "Looping paths" to detect whether there are repeating patterns of events.
  • B-08091: Duration between events calculation ignores negative durations in Snowflake.
  • B-08091: Chart loading animation has been renewed.
  • B-07636: To prevent dashboards from jamming when querying too much data, added limitations to the amount of data that charts can visualize. Note that the limitation concerns the aggregated data that is visualized, not the source event log data.
  • B-08017: Dashboards API has been added to expression language, allowing to create, modify and delete dashboards in scripts.
  • B-08056: Following properties have been added to user objects in expression language: IsLocked, LastLockedDate, LastLoginDate.
  • B-08053: User rights report has been refactored to use RoleAssignments property in the expression language. The change also simplifies the report as now it only shows the direct role assignments that are visible in the User Management.
  • B-08151: For Snowflake expressions support for following windowing functions: sum, average, median, min, and max.
  • B-08050: When a model is created, the default filter is not created anymore (this is a refactoring that doesn't have any impact on user interface).
  • B-08123: Translation updates for 2023.7.
  • B-08092: Updated backend components.

Fixed issues:

  • D-13876: In CreateSnowflakeConnection function, ProjectId parameter is optional when OdbcConnectionStringKey is not specified.
  • D-13898: Snowflake: Exclude case attribute filter didn't work when there was null values and was selecting at least two values.
  • D-13890: Fixed XES file import to work.
  • D-13894: Business calendar based duration calculation was incorrect in some durations that spanned to several weeks (for Snowflake and in-memory models).
  • D-13899: Using broken OdbcConnectionString in a datatable prevented the datatable from being deleted.
  • D-13883: Script run stucked after running a script with error that uses client-side ODBC import.
  • D-13879: SqlExpressionValue filter when excluding events didn't work with filter rule root expression only.
  • D-13896: Adding or removing columns to datatable didn't change the LastModifiedDate.
  • D-13882: User details weren't written to operation log when creating or modifying users.
  • D-13771: User rights system report didn't give error when changing columns.
  • D-13893: Some event filtering caused null pointer error when primary key had been defined.
  • D-13873: Fixed pivot table visual issues after component update.
  • D-13900: When adding, renaming or removing columns for Snowflake table fails, operation is now rolled back without any changes.
  • D-13866: Querying GET api/uielements was quite slow right after server start.
  • D-13864: Combinations of translatable and hardcoded strings didn't get translated in UI.

Additional release for QPR ProcessAnalyzer 2023.6 (build 3933) (released 2023-10-24)

Features:

  • B-08055: Error message for locked account has been replaced with generic error message, so that username enumeration is not possible.

Fixed issues:

  • D-13884: Attributes dialog crashed with some older model configurations.
  • D-13843: In charts, selected case and event attributes switched away when attribute data type was ShortString.
  • D-13877: Some Snowflake expressions gave error "exceeds maximum length limit of 255 characters" when selecting lot of items.
  • D-13878: Snowflake expression filters for case attribute values didn't accept other than string type of case attributes.
  • D-13871: Some statistical calculations with percentages didn't work with Last Row Aggregates Over-limit Rows setting.
  • D-13875: Using some case level filters in a model without cases datatable didn't work.
  • D-13861: Dashboard opens are now logged to the Task log (i.e., calling GET /api/dashboards/{dashboardid}).
  • D-13870: Workspace projects hierarchy focused project showed light grey background making the project name not readable.
  • D-13867: When starting datatable refresh and going to other tab, went back to Datatables tab when query completed.
  • D-13853: If chart Custom Layout settings had extra series defined, chart may have crashed.
  • D-13869: Export as CSV button didn't work in the datatable contents dialog when dialog was still loading.
  • D-13872: Main progress spinner had unnecessary small scrollbar on top right.
  • D-13863: In the REST API method GET /api/users, password field (that has always been null) has been removed.

QPR ProcessAnalyzer 2023.6 (build 3847) (released 2023-10-17)

Big data chart support of models with local datatables (i.e., SQL Server stored) is removed in this release. If there are big data charts using SQL Server calculation, either migrate data to Snowflake or switch to in-memory charts (requiring to load data in-memory).

Features:

  • B-07992: Added 10 new presets including Queue analysis, Four eyes principle, Self-looping events, and Path until selected event. There are also presets for Individual Cases Flow and Range of event type occurrences which use Gantt chart.
  • B-08011: Added following date related operations for Snowflake: Day of year, Day of month, Day of week, Week of year, Half-year only, Quarter only, Month only, Hours only, Minutes only, Seconds only, and Milliseconds only. These are available when calculating with date type of data.
  • B-08016: Table actions to set variables can also be opened to a new browser tab. Also improved user interface for table actions.
  • B-08018: For Snowflake expressions, added Flows aggregations FromEventType and ToEventType to get starting/ending event type, and FlowOccurrences aggregations FromEvent and ToEvent to get starting/ending event.
  • B-08001: Added CallStoredProcedure function to call Snowflake stored procedures. This allows to start ETL transformation in Snowflake orchestrated by QPR ProcessAnalyzer script.
  • B-08013: Added RoleAssignments property to expression language to replace the legacy UserPermissions analysis (11).
  • B-07976: Snowflake expression based filter rules support additional expression columns allowing more Big data chart expressions to be filterable.
  • B-08015: Big data chart doesn't anymore support calculation in SQL Server (using local datatables).
  • B-06270: Improved error messages and made them translatable by taking into use exception codes provided by server.
  • B-08021: Added possibility to store designed diagrams for models and expression language API for reading and modifying diagrams.
  • B-08037: Dropped following unused tables database: PA_IDEA, PA_IDEA_VOTE, PA_REPORT, PA_REPORT_SETTING, PA_SESSION_SERVICE, PA_VIEW_FILTER_RULE, PA_VIEW_FILTER_RULE_PARAMETER.
  • B-08052: Language translations have been updated to 2023.6.
  • B-08051: Frontend side components have been updated.
  • B-08034: Backend side components have been updated.

Fixed issues:

  • D-13830: Object counts indicator in header showed incorrect counts when there was disabled filter rules in Snowflake models.
  • D-13833: In-memory charts didn't work with boolean type of dimensions when filtering with the false value.
  • D-13858: Target value measures didn't update chart when controlled using an on-screen setting.
  • D-13827: Calculated attributes data type was incorrectly set as Any by the Attributes dialog.
  • D-13849: Multiselect list search didn't allow spaces.
  • D-13829: Multiselect dropdown lists height jumped couple of pixels when selecting values.
  • D-13835: Deselecting a selected data point didn't remove chart filter rule.
  • D-13702: Improved Snowflake query performance in situations when there are lot of filter rules (by decreasing number of CTE's).
  • D-13819: Model.CaseAttributes sometimes gave incorrectly Any datatype for all attributes.
  • D-13820: Fixed incorrect manifest.json file to avoid "not found" errors when fetching web site icon.
  • D-13865: Break, continue, and return statements didn't work properly when called from inside a catch block.
  • D-13795: There was a Python error in clustering analysis with Snowflake model.
  • D-13823: Some tooltips in Workspace project hierarchy didn't work and caused a JavaScript error.
  • D-13824: BPMN editor align context menu layout looked strange.
  • D-13813: QPR logo button in the top left was misaligned in Firefox.
  • D-13797: Snowflake query may have given following error when using sampling: ambiguous column name '_EventType_NotNull_1'.
  • D-13774: TakeSample function with certain columns caused SQL compilation error: ambiguous column name 'Case Name'.
  • D-13782: Snowflake: Aggregating from variations didn't work when using sampling.
  • D-13836: Some tooltips had a strange two-colored background.
  • D-13834: Removed Model statistics column from clustering and root causes analysis.
  • D-13860: Removed filter button from the custom expressions in Task log analyzed objects.
  • D-13838: Removed Split data by filtering column from clustering analysis.
  • D-13832: Script and model status updates incorrectly sent next update when previous was still pending.
  • D-13839: Charts reset zoom button font size was too small.
  • D-13817: Importing data to Snowflake datatable with Append=0 doesn't now drop the underlying Snowflake table.
  • D-13825: Some models could not have been deleted from recycle bin.
  • D-13852: Recycle bin Projects and Models tab didn't show correct content when Recycle bin only contained either models or projects.
  • D-13841: In-memory chart Data type selection type has been corrected to string.
  • D-13842: Second time and Third time selections has been hidden in in-memory chart measures.
  • D-13850: In Chrome, there were console errors related in incorrect text field autocomplete type and text field without form.
  • D-13847: Improved browser side performance by removing unnecessary operations.
  • D-13859: Chart without dimensions showed an unnecessary Remove dimension button.
  • D-12598: When script is stopped in server, ScriptLauncher could still incorrectly continue to import data.

Additional release for QPR ProcessAnalyzer 2023.5 (build 3334) (released 2023-09-07)

Fixed issues:

  • D-13826: Measures or dimensions with case or event attribute and value selections incorrectly removed calculated attributes when dashboard was opened or chart settings were changed.
  • D-13821: Font size of some Highcharts tooltips was too small. Issue appeared when there were tooltips mappings in measures or dimensions.
  • D-13810: Simplified help links: now all Help buttons go to the QPR ProcessAnalyzer wiki main page.
  • D-13822: Snowflake clustering analysis showed empty strings and nulls as case attribute values in an unclear way as just nothing.

QPR ProcessAnalyzer 2023.5 (build 3304) (released 2023-09-05)

In Big Data Chart, the Case conformance measure and dimension has changed in a way that now it provides boolean values (true/false) instead of integer values (1/0). If colorMappings are used for this measure or dimension to set specific colors to visualize conformant and nonconformant cases, the mapped values need to be changed as follows: 1 -> true and 0 -> false. Without the change, the mapped colors are not effective.

Exmaple: Old configuration:

"colorMappings": {
  "1": "#36d475ff",
  "0": "#f5403bff"
}

New configuration:

"colorMappings": {
  "true": "#36d475ff",
  "false": "#f5403bff"
}

Big data chart support of models with local datatables (i.e., SQL Server stored) is deprecated. Big data chart has allowed to process data both in Snowflake and SQL Server. Now the support for SQL Server is deprecated and the Big data chart will only support calculation in Snowflake. If there are big data charts using SQL Server calculation, either migrate data to Snowflake or switch to in-memory charts (requiring to load data in-memory).

Following legacy analyses have been removed: Operation log (analysis number: 12), Root causes (14), Correlations (15), Idea feed (16) and Duration influence (29). This functionality may be in use in SQL scripts (in --#GetAnalysis command), and thus needs to be changed to the --#RunQuery command (see the examples page how each legacy analysis can be replaced). The OperationLog analysis is replaced by the OperationLog function and the Infcluencers analysis is replaced by the FindRootCauses function.

Following script can be run in the Expression Designer to show whether there are scripts that use the removed analyses (and thus require migration):

let removedAnalyses = [12, 14, 15, 16, 29];
OrderByDescending(Flatten(Projects.Scripts).Where({
  let scr = _;Sum(removedAnalyses.("'AnalysisType','" + _ + "')").{let num=_;(scr.code ?? "").Replace(" ", "").Replace("\t", "").Replace("\n", "").Replace("\r\n", "").Replace("\r", "").Contains(num)})>0;
}),LastRunStart).(Project.Name + ": " + name + " (id: " + id + ") (last run: " + (LastRunStart ?? "N/A") + ")");

By default, Snowflake ODBC driver generates quite much logging to files which might unnecessarily fill up the disk space. It's recommended to set the LogLevel parameter to value 0. The path where the logs are created can be seen in Windows registry (key LogPath). More information about configuring Snowflake ODBC parameters: https://docs.snowflake.com/en/developer-guide/odbc/odbc-parameters.

Features:

  • B-07971: Machine learning based Clustering analysis can be run in Snowflake.
  • B-07989: In dashboard designer the stacking order of charts can be changed with buttons Bring to front, Send to back, Bring forward and Send backward.
  • B-07977: For sankey diagram, added Start level and End level mappings to define custom start and end level for the sankey flows. Implemented also color mappings to define specific colors for specific values.
  • B-08010: To improve performance, charts are loaded and updated only when they are visible in the dashboard.
  • B-07975: Added following date related functions to Snowflake: DayOfYear, DayOfWeek, WeekOfYear, Quarter.
  • B-07908: When model is duplicated, also filters in the model are also duplicated.
  • B-07904: Filters and models API for expression language has been completed.
  • B-07991: In case and event type filter selectors, threshold whether the dropdown list or search dialog is shown can be defined using the Maximum Rows setting. Also the search dialog filters search results by other filter rules in the dashboard.
  • B-07999: Filters report has been changed to use the expression language API for filters.
  • B-07540: Added throw statement to expression language.
  • B-07813: UI components are updated. There are small visual improvements, such as in flowchart flows are routed a bit differently and in charts the hidden series is shown as strike-through in the legend.
  • B-07963: Following legacy analysis types have been removed: Operation log (analysis number: 12), Root causes (14), Correlations (15), Idea feed (16) and Duration influence (29) (see more information in the note above).

Fixed issues:

  • D-13777: Filters could not be created in charts when "Update Filter During Selection" setting was disabled.
  • D-13767: Automation per Event Types preset in in-memory incorrectly showed only one event type.
  • D-13756: Changing background color in KPI card didn't have any effect.
  • D-13812: "Exclude events" was incorrectly translated to "Exclure les cas" in French.
  • D-13815: Dashboard designer background grid was not visible in entire area in edit mode. Improved also the grid to match to snapping in move and resize.
  • D-13674: Business calendar dialog layout was incorrect when a model with a long name was selected to copy holidays.
  • D-13811: Table actions link to a new window didn't go to dashboard if there were other parameters in the link.
  • D-13601: Fixed issue where some presets may have given error when attribute value selection and the automatically selected attribute conflicted by the data type.
  • D-13753: While Snowflake model was selected, in Filters and User Rights reports the Columns list could not be opened.
  • D-13720: Now table column filter and sorting are preserved when resizing or zooming page.
  • D-13785: In tables increased number of rows to 20000 that are inspected to get available items shown in Excel-style column filter.
  • D-13759: Some statistical calculations had bad performance with large number of rows.
  • D-13787: Conformance statistics component didn't have scrollbars when text didn't fit to the visible area.
  • D-13788: In-memory "Nonconformance reason" selection caused error when two of them was selected in the same chart.
  • D-13783: When Analyzed objects was Generic analysis, column selection incorrectly caused "Analysis has not been selected" error.
  • D-13776: When measure name contained quotation mark, notification preview didn't work.
  • D-13747: Filtering with integer type of case id with case attribute value filter caused error in Snowflake.
  • D-13791: In Firefox, model selection in chart settings didn't show models in the first open.
  • D-11984: Recycle bin buttons didn't fit to the screen when screen width was small.
  • D-13780: Using CaseId case attribute in clustering analysis did not work with Snowflake 106 cases standard model.
  • D-13781: Clustering analysis produced Python error with a certain simple Snowflake model.
  • D-13730: Snowflake: Case attribute filtering didn't work when there are cases without row in cases table.
  • D-13803: There was chart configuration validation error in browser console when measures were moved into dimensions in Big data chart.
  • D-13758: There was performance issue with the Recent tasks system preset.
  • D-13793: Snowflake clustering failed when cluster count is larger than case count.
  • D-13763: SQL expression based filter rule with Where function to filter events didn't filter anything in Snowflake.
  • D-13804: Added missing Millisecond function to Snowflake.
  • D-13772: Expression EventLog.Cases.Events caused error "Value cannot be null".
  • D-13755: Model.CaseAttributes sometimes gave incorrectly Any datatype for all attributes.
  • D-13739: When switching between System reports there was error: "Uncaught Error: 2nd dimension not found. at y.getExpressionConfiguration".
  • D-12109: Sometimes flowcharts showed message "Error in querying event type measures. Input string was not in a correct format".
  • D-12473: Cost Savings by Automation preset gave sometimes error "Unable to cast object of type 'System.Double' to type 'System.String'".
  • D-13750: Snowflake model didn't work with the Case Duration vs. Manual Activities preset.
  • D-13657: There was error converting data type nvarchar to bigint.
  • D-13796: Some Snowflake operations didn't work with zero rows and columns.
  • D-12494: Now when chart size changes, the table column filters and sorting are preserved.
  • D-13736: In Performance benchmarking dialog, the Export result button exported wrong benchmark performance analysis result.
  • D-13609: Improved conformance analysis related filter names.
  • D-13594: Recycle bin buttons were not visible when opening recycle bin in a narrow screen.
  • D-13226: Tooltips in the model properties dialog are now translated.
  • D-12569: Table incorrectly showed ellipsis for narrow boolean type of columns showing checkboxes.
  • D-13391: Emptying date or datetime picker value was not registered and it didn't trigger functionality.
  • D-12621: Value search dialog didn't work with values containing backslashes.
  • D-13796: Some Snowflake operation didn't work with zero rows/columns.

QPR ProcessAnalyzer 2023.4 (build 2628) (released 2023-06-14)

Features:

  • B-07767: Added Gantt chart to visualize timeline of cases and events divided into swimlanes.
  • B-06383: Added Sankey chart to visualize flow from one set of values to another.
  • B-07941: Implemented many more presets running in Snowflake models for compliance and operational excellence use cases. There are also presets for the path analysis and process bottlenecks identification.
  • B-07864: Snowflake conformance analysis shows now reasons for conformance deviations, such as which event occurrences deviated from the design model.
  • B-07909: Snowflake conformance analysis visualizes undesired event types in table and flowchart.
  • B-07823: Flowchart Bottlenecks preset has been changed to show bottlenecks for event types. Also renewed the Tasks reports to use expression language based interface.
  • B-07891: User interface has been translated into Portuguese.
  • B-07873: Improved pivot table visual layout to highlight totals and aggregated rows. Also the row titles are now visible in the top left.
  • B-07905: Added Rank related functions to Snowflake for writing more versatile custom KPI's, e.g., FirstValue, LastValue, NthValue, Lead and Lag.
  • B-07912: Added more SQL expression array functions ArrayToString and ArrayOverlap to Snowflake.
  • B-06449: Added SQL expression functions ToTimestamp and TryToTimestamp for parsing timestamps from strings using provided format.
  • B-07959: Added new functions Base64Encode and Base64Decode to help using basic HTTP authentication when calling web services.
  • B-07206: SQL expressions support data clustering which is an unsupervised machine learning algorithm to group data based on similarities.
  • B-07848: Data can be extracted from SAP using the encrypted SNC connection.
  • B-07903: Added expression language API to create and modify filters and models.
  • B-03103: Task log (operation log) can be accessed in expression language.
  • B-07872: List aggregation with Distinct=true orders now items by their value.
  • B-07940: Removed "Count" aggregation from textual values in Big data chart (you can use the Case count, Event count, etc. selection instead).
  • B-07757: Backend support for datatables linking to user-definable Snowflake database, schema and table.
  • B-07825: Improved error message when trying to use non-existing attributes in Snowflake queries.
  • B-03101: To expression language, added try-catch-finally statement to handle thrown exceptions.
  • B-07861: Removed available and total virtual memory information from User settings dialog.
  • B-07902: Optimized sequences of joins in Snowflake queries to improve performance.
  • B-07837: Updated backend components.

Fixed issues:

  • D-13709: If image width-to-height ratio was lower than container's ratio, image was incorrectly stretched to fit the container.
  • D-13660: Disabling filter rules didn't work in Snowflake models.
  • D-13526: Passing dataframes from SQL scripts to expression scripts didn't work.
  • D-13661: Snowflake conformance analysis crashed when there was no access to conformance related Snowflake UDF's.
  • D-13693: Resolved major Snowflake conformance analysis performance issues in the BPMN model handling.
  • D-13716: Snowflake root causes analysis incorrectly bypassed Snowflake cache.
  • D-13707: In SQL Scripting, the datatable analysis (number 18) didn't always copy the data table contents to the target table correctly.
  • D-13653: Big data flowchart Root causes preset showed incorrect legend.
  • D-13626: Flowchart froze when converting into big data flowchart and vice versa by modifying chart json settings.
  • D-13656: Root causes for attribute gave error "Failed to compare two elements in the array" in some situations.
  • D-11563: Pivot table had a minimum height of 300px, which caused bottom part of it to be out of view.
  • D-13704: In CSV file import, parsing now allows spaces between column separator and text quotation mark.
  • D-13598: Chart gave unclear error message when events datatable was not defined.
  • D-13655: Improved error messages for BPMN editor and conformance statistics.
  • D-13528: Error message for certain erroneous SQL expressions was unclear.
  • D-13677: "Flow occurrences with specific case attribute value" selection didn't work for in-memory chart.
  • D-13663: Pivot table border line was slightly broken in the header area.
  • D-13608: There was incorrect alignment of items in the table paging controls.
  • D-13703: Importing CSV file with some special characters to Snowflake failed (due to incorrect escaping in Snowflake staging files).
  • D-13708: Duplicating datatable using user defined table, removed data the source table.
  • D-13717: Dependency wheel crashed when there were zero weights and showing data labels.
  • D-13348: There was an unclear error message when Snowflake query had a certain incorrect expression.
  • D-13732: Pivot table Excel export contained headers formatted incorrectly.
  • D-13729: There was a JavaScript error when limited user tried to access business calendar.
  • D-13662: Percentile function didn't always work with timespan types.
  • D-13646: Using incorrectly configured model without cases datatable caused null reference error.
  • D-13629: When tried to use chart with a non-existing model, there is now a proper translated error message.

QPR ProcessAnalyzer 2023.3 (build 1990) (released 2023-05-03)

Features:

  • B-07818: Conformance analysis is supported in Snowflake with following dashboard components: Big data chart, BPMN editor, Conformance statistics, and Design model selector.
  • B-07833: Root causes analysis for flowchart is available for Snowflake showing how the event and flow occurrences explain selected phenomena.
  • B-07786: Big data chart has more measure aggregations, such as median, percentile, standard deviation and variance. Also for textual items, unique values can be listed.
  • B-07795: Conditional formatting supports also columns with non-numerical contents.
  • B-07830: None and Any aggregations for Snowflake and user-friendly formatting for conformance violations.
  • B-06527: Error messages in CSV file import show also the column number to help working with CSV files with lot of columns.
  • B-07747: In-memory conformance checking accepts design models with multiple tasks having same name (same is followed by the Snowflake implementation).
  • B-07659: In-memory flowchart preset Case Conformance to visualize conformance checking violations.
  • B-07571: Added function IsConformant to backend to check whether cases are conformant.
  • B-07863: Added function ConformanceViolationsFlows to backend to return nonconformance reasons for violating cases.
  • B-07844: Support for "array" aggregation to return aggregated items as array.
  • B-07856: Support for creating and accessing arrays and objects in SQL expressions.
  • B-07860: Array handling functions and Tasks property for DesignModel entity.
  • B-07847: Added throttling for QPR ScriptLauncher client-side imports to limit memory usage.
  • B-07811: Snowflake query optimization to omit columns that are not used by the query.

Fixed issues:

  • D-13632: Going from variations to event types led to very poor performance with certain models.
  • D-13628: Statistical calculations were incorrectly not applied in chart CSV export.
  • D-13575: SQL script may have given error "Operand type clash: nvarchar(max) was incompatible with sql_variant".
  • D-13597: UI supports now datatable column type "ShortString" (previously datatable contents preview and CSV import didn't work).
  • D-13536: Using business calendar sometimes gave error "System.InvalidOperationException: Collection was modified".
  • D-13477: Chart types without y-axis mapping caused an error when series mapping was used.
  • D-13453: _model variable was not available for Snowflake expression filter rules.
  • D-13527: Checkbox height didn't increase when long label needed to span to multiple lines.
  • D-13363: Snowflake query with EvaluateAfterAggregations and IsHidden failed when dimensioning by case id column.
  • D-13383: Snowflake query gave error "Invalid column name 'FromCase Name'".
  • D-13523: Request id was incorrectly shown as zeros in error messages.
  • D-13541: In CSV import, error message for maximum number of columns exceeded is improved (maximum is 300 column for SQL Server).
  • D-13583: Objects count in header didn't work for empty Snowflake model.
  • D-13553: Larger pacm files can now be imported, as there isn't error "Request body too large. The max request body size is 30000000 bytes".
  • D-13306: Stack overflow error was given when using SqlDataFrames.
  • D-13487: When Flows root and there was filter in Values expression, some flows were lost.
  • D-13540: SqlDataFrame query with 300 columns failed to error "WithExpressionColumn: No name given for the new column".
  • D-13429: Ordering in List aggregation couldn't find columns in dataframe query.
  • D-13406: Dataframe query with root FlowOccurrences and get value from cases caused error.
  • D-13538: There was incorrect handling of escaping characters in column names used in dimensions.
  • D-13633: Fixed ordering in List aggregation with null and empty values.
  • D-13636: Query that dimensions by numeric case attribute with AggregateOthers true, caused error.
  • D-13589: Creating Snowflake datatable did not connect to Snowflake.
  • D-13623: Value expressions without aggregation didn't work with AggregateOthers setting.
  • D-13554: In in-memory chart, percentile function might have return both Int64 and Double type of objects which cannot be sorted.
  • D-13481: Improved error message when trying to use deleted model.
  • D-13621: Dynamic value search dialog had incorrect font in lists.
  • D-13610: Some invalid BPMN files crashed BPMN editor.
  • D-13614: Checkbox label texts overflowed to right.
  • D-13520: Removed excessive parameters from the Query Designer for generic context queries.
  • D-12998: QPR icon was incorrectly positioned in header in Safari.
  • D-13480: Import to duration data type is removed from Snowflake datatables, and for local datatables duration type maximum size is checked.
  • D-13517: In Highcharts-based visualizationsm conditional formatting didn't work for other than the first y-axis mapping.
  • D-13529: In some presets containing several on-screen settings, when chart showed in error message, on-screen settings showed invalid selection.
  • D-13530: Opening dropdown list caused JavaScript error when the list contents should be empty after it previously contained items.
  • D-13486: Removed unreachable error message in CSV import.
  • D-13524: Fixed in-memory chart flow occurrences root measures "Event attribute (text)" and "Event attribute (number)" that caused error.

QPR ProcessAnalyzer 2023.2 (build 1478) (released 2023-03-22)

Features:

  • B-07755: Business calendar for duration calculation is available for Snowflake models.
  • B-07719: In Snowflake dashboards, measures can be assigned to variables and use the variables in other measures to create combined measures.
  • B-07746: Changed in-memory conformance checking to not show invalid flow violations where starting or ending event type is invalid.
  • B-07743: Default datasource can be configured for datatables created by scripts, allowing to set Snowflake as default.
  • B-07740: System memory indicator moved from the header to User settings Version information dialog.
  • B-07776: New SQL expressions functions Unicode, Char and Regexp, as a basis for future rule-based process mining.
  • B-07741: Backend support for aggregation operations Median, Percentile, Stdev, Stdevp, Var and Varp to Snowflake.
  • B-07742: Backend support for aggregation operation to list unique items in Snowflake.
  • B-07770: Optimized Snowflake SQL generation by combining consecutive WithColumn function calls into one select.

Fixed issues:

  • D-13491: QPR ProcessAnalyzer server crashed now and then when sorting was in progress and the query was cancelled.
  • D-13380: Dimensioning integers in in-memory core calculation didn't work correctly as 0 and -1 were put to same bucket.
  • D-13385: In Workspace Bin, Delete Forever and Restore from Bin buttons were misaligned.
  • D-13332: Conformance checking didn't show in violations when there were multiple undesired events in same case.
  • D-13405: Images take now always all available space in image component area.
  • D-13417: KPI card without title was slightly misaligned vertically.
  • D-13438: Clicking selected event type or flow in flowchart didn't cancel the filter selection.
  • D-13350: Task log and Script log default filter end date is now empty by default.
  • D-13381: Disabled browser auto-complete from flowchart variation stepper and Workspace create/rename object dialog.
  • D-13347: Improved performance for in-memory business calendar calculation.
  • D-13335: In in-memory chart, filtering didn't work in "Flow occurrences" root "Flow occurrences with specific event attribute value" dimension.
  • D-13367: Percentage value wasn't displayed properly with German or Spanish language when event types were shown in object counts indicator.
  • D-13451: Exported filter file is now named based on selected filter name.
  • D-13378: In Big data chart, prevented error "Unable to aggregate from level RootCauses to level Custom".
  • D-13293: DataFrame query with root Flows and IncludeEvents and ExcludeEvents filter rules failed.
  • D-13370: Fixed issue where on-screen settings that didn't have any selectable items, showed a strange selection.
  • D-13392: Clustering analysis was incorrectly shown when originally in-memory chart was converted into big data chart by changing chart json settings.
  • D-12784: Some Snowflake queries incorrectly bypassed Snowflake caching because they used unique object names.
  • D-13456: Improved error messages for incorrectly configured on-screen settings.
  • D-13445: Conformance violations related translated terms have been fine-tuned for better translations into different languages.
  • D-13421: Improved error messages when trying to use model having some column mappings missing.
  • D-13485: Snowflake business calendar gave error when calendar contained Sunday.
  • D-13218: Windows event viewer incorrectly contained log entries that are not errors.
  • D-12634: Multiline text boxes width is set to non-changeable.
  • D-13034: Confirmation dialog to delete items permanently has been updated.
  • D-13288: In dialogs, the Create button didn't show the disabled state correctly.
  • D-13427: When dropdown lists didn't have any selectable items, the "N/A" text appeared and the list incorrectly took more space vertically.
  • D-13483: In Workspace, the new items menu was too narrow for Spanish texts.

Additional release for QPR ProcessAnalyzer 2023.1 (build 1449) (released 2023-02-24)

Features:

  • B-07690: System setting DatabaseId can be defined by administrator to get more simple table names in Snowflake.
  • B-07737: In flowchart Bottlenecks preset, originally used flow colors has been recovered.
  • B-07748: For Analyzed objects "Conformance checking findings" in charts, terminology has been revised and issue with the case count calculation fixed.
  • B-07663: In on-screen settings, when case/event attribute is selected, related attribute values list are reset.
  • B-07570: Backend support for business calendars in Snowflake.
  • B-07660: Backend support for conformance checking to show also the last event index and event type in NotCompleted reason.
  • B-07610: Memory counter related technical properties have been removed from expression language.

Fixed issues:

  • D-13349: Opening dashboard containing Root causes preset with default settings jammed the system by generating lot of calculations (for more information, see previous release notes).
  • D-13277: Stacked charts with date type of data as series did incorrectly show gaps in columns/bars.
  • D-13270: Flowchart conditional formatting didn't work with duration multi-unit format.
  • D-13358: Calculation results caching works also across different user sessions.
  • D-13250: Dashboard with two charts connected with linked settings using variables ended up to to a never ending loop.
  • D-13230: SAP import did not automatically create columns to use the correct column types.
  • D-12857: Deeply recursive functions caused a crash without any trace.
  • D-12994: In Workspace, some buttons were not clickable due to breadcrumb covering them.
  • D-13249: In Workspace, there was incorrect error message for duplicate datatable names when there were items with only letter capitalization was different.
  • D-13232: In-memory chart Top variations preset is now sorted secondarily by average duration descending.
  • D-13300: Setting DashboardFilter variable to empty value didn't have any effect in dashboard but old value was incorrectly used.
  • D-12834: Limited the maximum number of dimensions to 20, to avoid too demanding queries for SQL Server.
  • D-12917: Changed visual indication of missing items in dropdown lists (it's no longer showing "***").
  • D-13111: In Root causes preset, there is now error message when trying to use weighting related columns when weighting isn't in use.
  • D-13124: SQLDataFrame query containing filter rule EventTypes aggregating from cases failed.
  • D-13207: Dataframe query with AggregateOthers, AggregationFunctionForOthersRow and EvaluateAfterAggregations failed.
  • D-13292: Dataframe query with AggregateOthers, AggregationFunctionForOthersRow and EvaluateAfterAggregations failed (rev.2).
  • D-12991: Dropdown list texts had some translations missing.

QPR ProcessAnalyzer 2023.1 (build 1433) (released 2023-02-07)

This release contains a potentially severe issue, where some dashboards completely jam the system by generating lot of calculations. The issue may appear in dashboards that have been created in earlier releases and containing the Root causes preset with default settings. The issue will be fixed by the next release. The issue can be worked around by exporting the affected dashboard, modifying the dashboard file manually and importing the dashboard back. The required modification is to remove line(s) containing
"preset": "RootCauses"
and the comma from the preceding line.

Following legacy analyses have been removed: Cases (analysis number: 5), Events (6), and EventTypes (7). This functionality may be in use in SQL scripts (in --#GetAnalysis command), and thus needs to be changed to the --#RunQuery command (see the examples page how each legacy analysis can be replaced). Note that the legacy analyses removal don't affect the dashboarding functionality.

Following script can be run in the Expression Designer to show whether there are scripts that use the removed analyses (and thus require migration):

let removedAnalyses = [5, 6, 7];
OrderByDescending(Flatten(Projects.Scripts).Where({
  let scr = _;Sum(removedAnalyses.("'AnalysisType','" + _ + "')").{let num=_;(scr.code ?? "").Replace(" ", "").Replace("\t", "").Replace("\n", "").Replace("\r\n", "").Replace("\r", "").Contains(num)})>0;
}),LastRunStart).(Project.Name + ": " + name + " (id: " + id + ") (last run: " + (LastRunStart ?? "N/A") + ")");

Starting from QPR ProcessAnalyzer 2023.1, the .NET Desktop Runtime is not needed anymore for QPR ProcessAnalyzer Server, so it can be uninstalled. Also for QPR ScriptLauncher, .NET Desktop Runtime is not needed, but instead install the .NET Runtime (which is more lightweight). .NET Desktop Runtime contains the .NET Runtime, so the actions are not mandatory when updating to QPR ProcessAnalyzer 2023.1.

Features:

  • B-06997: Expression-based filter rules for Snowflake dashboards to allow versatile filtering and filtering from custom expressions.
  • B-07383: Improvements to linked settings to allow binding to variables, tags and filter rules (more information).
  • B-07508: Flowchart preset colors have been renewed to be more intuitive.
  • B-07184: Automation preset in flowchart has now options for selecting the Automation attribute and value.
  • B-07512: Changed datatable metadata can be refreshed from Snowflake, and all rows in the datatable can be deleted easily in Workspace (more information).
  • B-07440: Date when the release was made is now shown in User settings.
  • B-07595: WeekOfYear property for DateTime objects in expression language to get the week number of a year (between 1 and 53).
  • B-07623: In-memory expression language functions Random (to get random numbers) and Hash (to get hash value of string).
  • B-07612: Breadcrumb in Workspace has now a Home button to quickly navigate to the top level of the projects hierarchy.
  • B-07637: Language selector now shows the language options in local languages.
  • B-07228: Remove following deprecated analyses: Cases, Events, and EventTypes (see the release note above).
  • B-07538: Backend support: Snowflake root causes analysis can find event attribute related root causes.
  • B-07706: Backend support: Snowflake expression-based filter rules support for roots containing Where function.
  • B-07611: Removed following legacy filter rules: CaseAttributeTrend, EventAttributeTrend, EventTypeTrend, and Duration.
  • B-07598: Refactored client-side import for SQL scripting to use generic client-side task mechanism.
  • B-07716: ShortString columns are now properly detected in SQL Server queries.
  • B-07652: Now it's possible to pipe multiline expression strings to QPR ScriptLauncher.
  • B-07688: AddColumns function for Datatables to create multiple columns in one call.

Fixed issues:

  • D-13092: Table conditional formatting didn't work when color code was fetched from other column.
  • D-13105: Some charts created in earlier release referring to non-existing presets names appeared as empty after software update.
  • D-13107: Flowcharts crashed and showed loading animation forever when setting color or flow thickness to non-numerical measure.
  • D-13104: In BPMN model editor, context menus to edit elements didn't appear.
  • D-12939: Script editor tabs Close buttons didn't work.
  • D-13154: "Search by case ID" didn't work in in-memory chart.
  • D-12933: CSV columns with only empty values were incorrectly auto-detected as integers.
  • D-12929: In-memory chart Root causes for case duration and Root causes for case attributes (weighted) had Custom expression missing.
  • D-12928: Pivot table headers were empty when there were two column levels and two values.
  • D-12924: Pivot table columns with Count and Distinct Count aggregations are now numeric and aligned right.
  • D-13033: Changing colors in chart settings Color palette caused "Item already exists" error and prevented changing colors.
  • D-12996: Tags referring to dashboard variables didn't work in Additional root expression.
  • D-12877: UI gave error in some situations: Uncaught TypeError: Cannot read properties of undefined (reading 'min').
  • D-13071: Prevented selecting two or more of the Y-axis, X-axis and series mappings at the same time for the same measure or dimension.
  • D-12895: Big data chart crashed when on-screen setting contained event type selector and there were no event type filter set.
  • D-13231: Tooltips for dashboard name, model selector and filter selector in header show now the content text instead of generic instruction.
  • D-13139: There was an error when tried to create filter for a custom expression where selected data type didn't match with the actual type of data.
  • D-12988: Chart presets selection in chart settings showed unnecessary tooltip.
  • D-12901: When set sampling over 1 million, Snowflake models gave error: parameter value out of range: size of fixed sample. Must be between 0 and 1,000,000.
  • D-12904: Creating expression filter having lower/greater logic with root objects sampling failed.
  • D-12923: Chart schema didn't accept pivotAggregation in dimensions/columns.
  • D-12926: Root causes columns Selected weight, Compared weight and Total weight have now correct float data type.
  • D-12880: In out-of-the box dashboards, chart titles and subtitles were not translated.
  • D-12916: Improved filter rule description text in Filter rule editor dialog for expression filter rules.
  • D-12889: No clear error message was given when user tried to export corrupted model from .pacm file.
  • D-12869: Date selector in on-screen settings had inconsistent vertical alignment.
  • D-12938: When creating a filter with lasso and selecting a single data point only, "equals" kind of filter rule is now created.
  • D-12989: "Running tasks as specific time" system report may have ended up in loop causing following error: Maximum call stack size exceeded error.
  • D-13010: Pivot table sometimes ended up to never-ending resizing loop when browser zoom was more than 100%.
  • D-12790: Expression language: DataFrame.SetColumns: Initializing and using variables defined in closure of SetColumns function parameter didn't work
  • D-12927: All on-screen settings were not be visible in narrow charts having several on-screen settings.
  • D-12937: Added maximum value limitation to several number input fields in charts.
  • D-12947: Message dialog didn't show line breaks correctly (e.g., in CSV file import).
  • D-12948: Defining column setting caused error when Measure Expression was not defined.
  • D-12946: Filter rule text couldn't be seen entirely from tooltip.
  • D-12983: When range filtering using integer values in Highcharts chart, filter is now shown as integer value.
  • D-12984: When range filtering in Highcharts charts and there is category axis, filter rule is now based on individual (category) values.
  • D-12930: When creating filters from charts using date type of X-axis with lasso, "greater than or equal" and "less than or equal" filter rules are not created.
  • D-12920: "Where" function in DataFrame lost column data types of the original DataFrame.
  • D-13048: Model notifications failed with certain measures that define variables in root expression leading to error: Variable "sampleSize" already exists in this context.
  • D-13116: BPMN editor had some translations missing.
  • D-13019: Datatable and script selectors show now datatable/script name instead of id, when opening selector having existing selections.
  • D-12951: Changing additional root expression in flowchart didn't refresh the flowchart.
  • D-13147: Filter rule boxes in header had different widths, and Add filter rule button vertical alignment was incorrect.
  • D-12907: Sometimes case attribute selection showed incorrect attribute name for empty model.
  • D-13148: Filters and Datatables system reports loaded unnecessarily twice which could be seen as blinking.
  • D-12844: In dataframe query, FlowOccurrences in root and GetValueFrom Cases with filter gave null reference exception
  • D-12915: Repeating certain query twice with aggregations in Events root generated invalid SQL
  • D-12728: Was huge amount logs in server during client side import (manual testing required as identification)
  • D-13156: Persist function failed to snowflake: Invalid unicode escape sequence '\u0027ACCE'; should be at most '\u0010FFFF'.
  • D-12876: Flows/FlowOccurrences in root didn't work with SqlExpressionValue filtering.

Additional release for QPR ProcessAnalyzer 2022.8 (build 1397) (released 2023-01-11)

This release fixes an issue where extracting large datasets from SAP increases memory consumption considerably and may lead to out-of-memory error. This release contains packages for both QPR ScriptLauncher and QPR ProcessAnalyzer Server. If SAP extractions are done using QPR ScriptLauncher in client side mode (ExecuteInClientSide=1), it's enough to update QPR ScriptLauncher to fix this issue.

Fixed issues:

  • D-12941: Extracting data from SAP consumed unnecessary lot of memory and may have led to out-of-memory error (both when running using QPR ScriptLauncher and in server side).

QPR ProcessAnalyzer 2022.8 (build 1396) (released 2022-12-30)

Creating datatables with duplicate names in the same project is prevented, and possible existing duplicate names are automatically changed to unique names with a random suffix. If there are duplicate names, they can be renamed either before updating QPR ProcessAnalyzer (to avoid automatic renaming) or after the update (by changing suffixed names). If the renamed datatables are used by models, the linkage will break because it's based on the datatable name. Creating duplicate datatables has already been prevented in the UI, but the improved method works also in the API level.

Following SQL query can be used to list datatables (and project id) having duplicate names:

SELECT ITA_NAME, ITA_PROJECT_ID
FROM PA_INTEGRATION_TABLE
GROUP BY ITA_NAME, ITA_PROJECT_ID
HAVING Count(*) > 1

If trying to use business calendar for a model that doesn't have the business calendar defined, there will now be an error message instead of showing the chart. Either unselect the business calendar checkbox for the measure or dimension, or define a business calendar to the model. In this situation in earlier releases the business calendar was ignored and full time calculation used.

Features:

  • B-07498: Automation and Operational Excellence presets and Root causes analysis (for Snowflake), Weighted root causes analysis and Event scattering preset (for Snowflake and in-memory), Root causes for case duration (in-memory).
  • B-07177: Flexible mappings, user selectable aggregations and conditional formatting for Pivot table, and flexible mappings for KPI Card.
  • B-07518: New function named Query to run call /api/expression/query.
  • B-07294: In Workspace, the left side projects hierarchy can be collapsed and expanded to make more space to project contents.
  • B-06814: In SQL expressions, new function DurationBetweenDates to calculate duration between timestamps precisely.
  • B-07519: Replaced DateDiff function with the new DurationBetweenDates function in big data chart.
  • B-07531: In SQL expressions, new mathematical functions Abs, Log, Mod, Power, Rand, Sign and Sqrt.
  • B-07297: To optimize performance, Snowflake queries are automatically cancelled if they are not needed by UI.
  • B-07569: To optimize performance, TakeSample function implementation is improved for Snowflake.
  • B-07198: Several performance improvements to DataFrame queries (used in Snowflake).
  • B-07464: Added Lead and Lag functions to SqlDataFrames to support getting previous and next event.
  • B-07470: New ExtractSap function to fetch data from SAP using expression language.
  • B-07536: New Pivot function to SqlDataFrames to enable root causes analysis.
  • B-07488: Primary keys can be set to datatables to improve calculation performance (UI will follow later).
  • B-07515: Added RootCauseAnalysis function to SqlDataFrames.
  • B-07546: RootCauseAnalysis function support for complex weighting expressions.
  • B-03052: Support for user-defined variables in /api/expression/query.
  • B-07565: Support for NumberPrecision, DatetimeTruncation and TimespanPrecision properties for Values section in in-memory query.
  • B-07513: For product activation file handling, replaced mutex based implementation with exclusive file lock.
  • B-07480: Expression language support for DataFlows for data extraction.
  • B-07613: Removed support for SQL Server based R scripting.
  • B-07567: Take datatable primary keys into use in expression builder to improve performance (part 2).
  • B-07588: Remove total memory information from log writing and DateDiff function for in-memory.

Fixed issues:

  • D-12715: Snowflake calculated imprecisely some operations containing division and aggregation.
  • D-12761: Progress bar of the CSV import dialog didn't show any progress.
  • D-12799: Opening datatable contents dialog settings was slow when there were lot of rows in the datatable.
  • D-12089: Include conforming/nonconforming cases made BPMN editor no responding.
  • D-12496: Datagrid filter search keyword didn't work for rounded values, so the search was hidden for other than textual data.
  • D-12704: Durations as quarters was calculated incorrectly in charts.
  • D-12662: Fixed issue where some special literals in custom expressions didn't work.
  • D-12403: Setting Notifications on a model had some visual issues.
  • D-12859: Dependency wheel visualization crashed with nulls values in From and To mappings.
  • D-12660: Removed unnecessary float conversions in SQL expressions.
  • D-12653: In-memory datafram OrderByColumns function with mixed values failed.
  • D-12657: When trying to use milliseconds period in some presets, frontend frozed.
  • D-12706: Line breaks in data were shown in many places where it's undesired.
  • D-12719: Syncfusion dialog headers showed backslaces incorrectly.
  • D-12372: Refused to run the JavaScript URL because it violated the Content Security Policy directive.
  • D-12730: Logging out when filter selection is in progress, gave javascript error.
  • D-12705: Header object counts tooltip was sometimes messed after logout.
  • D-12384: Selected project was not highlighted for whole project name string.
  • D-12581: Prevented creating duplicate datatable names in same project in parallel execution.
  • D-12722: There was incorrect syntax near '<' when running SqlDataFrame expressions.
  • D-12736: Swedish and Finnish translation improvements for object counter tooltips.
  • D-12702: For BPMN Editor component "Something went wrong" error was given when switching from in-memory to Snowflake model.
  • D-12712: UI gave error: TypeError: Cannot read properties of undefined (reading 'id').
  • D-12738: Business calendar showed total business time when calendar configuration was invalid.
  • D-12776: Special character filter caused JavaScript SyntaxError.
  • D-12785: Unnecessary vertical scrollbar displayed for main header toolbar.
  • D-12164: There was unnecessary UnauthorizedAccess errors in logs.
  • D-12580: Case duration was not same when comparing Big data chart with in-memory chart for same data.
  • D-12768: Data grid links and variable change actions didn't work when grouping was used.
  • D-12735: FindRootCauses (in-memory) function filtered out cases with zero contribution.
  • D-12763: --#CallWebService didn't work from ScriptLauncher.
  • D-12789: There was timeout in SQL queries to scripting sandbox.

QPR ProcessAnalyzer 2022.7 (build 1331) (released 2022-11-15)

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(%'

Features:

  • B-07287: Process Discovery and most important presets for Snowflake.
  • B-07271: "Last Row Aggregates Over-limit Rows" setting for big data chart.
  • B-06431: Snowflake datatables support for database views in the datasource.
  • B-07266: Security: "limited mode" to prevent data modifications and external calls from dashboard expressions.
  • B-07097: Improved flowchart root causes color scales.
  • B-07363: SQL LIKE function support for escape character.
  • B-06877: Improved variation queries performance in Snowflake, part 1.
  • B-07444: Improved variation queries performance in Snowflake, part 2.
  • B-07382: Support for empty strings and nulls in event type names in dataframe processing.
  • B-07273: WithRowNumberColumn, WithRankColumn, WithDenseRankColumn support for descending sorting.
  • B-07303: FindRootCauses function support for weighting expression.
  • B-07327: Unpivot function for SqlDataFrames (for root cause analysis).
  • B-07385: Align token lifetime with SESSION_MAXIMUM_DURATION setting.
  • B-07500: ColumnMappings property for IDataFrame and DataTables.
  • B-07499: IDataFrame.ApplyFilter function to filter events data using a JSON-based filter.
  • B-07469: Translation updates for release 2022.7.

Fixed issues:

  • 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.
  • D-11382: Moving of flowchart was sometimes shaky.
  • D-12655: Filter rule tooltips in header were styled incorrectly.
  • D-12656: Large integer values in filter jsons were incorrectly presented as small integers.
  • D-12661: Some exported filters contained unnecessary "invert" property.
  • D-12500: Model with numeric case id's and filtering with the attribute mapped as case id: ERROR [22018] Numeric value '' is not recognized.
  • D-12509: Filtering null values didn't work in boolean attributes in Snowflake.
  • D-12571: In dataframe processing in SQL Server, dividing two integers should not make rounding to integer.
  • D-12610: Setting for global DropUnusedFiltersAfter was missing.
  • D-12613: Filtering with case/event attributes with null values didn't match in Snowflake models.
  • D-12617: Model didn't work when DropUnusedFiltersAfter is 00:00:00.
  • D-12618: If model ConfigurationJson is null, Configuration property didn't work.
  • D-12620: Filtering didn't work when there are backslaces in attribute names in Snowflake models.
  • D-12643: AttributeFunctionCallExpression did not always work properly in array context.
  • D-12647: SqlDataFrame with SQL Server: Comparing literals to variant column values failed.
  • D-12648: Models that have DropUnusedModelsAfter setting caused "The sliding expiration value must be positive" error.
  • D-11526: It was unable to translate Unicode character \uD83D at index 176 to specified code page.
  • D-12637: In application startup arised FATAL Application startup exception System.UnauthorizedAccessException: Access to the path 'Global\MutexQPRPAActivation' is denied.

Old Releases

See older releases in QPR ProcessAnalyzer Release Archive