QPR ProcessAnalyzer Release Notes: Difference between revisions
Line 3: | Line 3: | ||
== Next Release: QPR ProcessAnalyzer 2023.1 (planned release date 2023-02-07) == | == Next Release: QPR ProcessAnalyzer 2023.1 (planned release date 2023-02-07) == | ||
<div style="border:1px solid #dfdfdf;padding:0.5em 1em 0.5em 1em;background-color:#E7EAEC;margin:10px 0px 0px 10px;"> | <div style="border:1px solid #dfdfdf;padding:0.5em 1em 0.5em 1em;background-color:#E7EAEC;margin:10px 0px 0px 10px;"> | ||
Following legacy analyses have been removed: Cases (analysis number: 5), Events (6), and EventTypes (7). This functionality may be used by SQL scripts (in --#GetAnalysis | Following legacy analyses have been removed: Cases (analysis number: 5), Events (6), and EventTypes (7). This functionality may be used by SQL scripts (in --#GetAnalysis command), and needs to be changed to use the [[SQL_Scripting_Commands#--.23RunQuery|--#RunQuery]] command. Note that this change doesn't affect the functionality in the QPR ProcessAnalyzer web UI. | ||
Following script can be run in the [[Navigation_Menu#Expression_Designer|Expression Designer]] to show whether there are scripts that use the removed analyses (and thus require migration): | 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): |
Revision as of 11:51, 12 January 2023
This page contains new features and fixed issues for each QPR ProcessAnalyzer release.
Next Release: QPR ProcessAnalyzer 2023.1 (planned release date 2023-02-07)
Following legacy analyses have been removed: Cases (analysis number: 5), Events (6), and EventTypes (7). This functionality may be used by SQL scripts (in --#GetAnalysis command), and needs to be changed to use the --#RunQuery command. Note that this change doesn't affect the functionality in the QPR ProcessAnalyzer web UI.
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") + ")");
Features:
Fixed issues:
- D-12939: Script editor tabs Close buttons didn't work.
- 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-12877: UI gave error in some situations: Uncaught TypeError: Cannot read properties of undefined (reading 'min').
- D-12895: Big data chart crashed when on-screen setting contained event type selector and there were no event type filter set.
- 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.
Latest Release: 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.
Additional release for QPR ProcessAnalyzer 2022.6 (build 1262) (released 2022-10-19)
This release contains fixes to following major issues:
- Older QPR ScriptLauncher versions (<=2022.5) don't work with this release, when using the client side import. As a workaround, if updating to QPR ProcessAnalyzer 2022.6, also update QPR ScriptLauncher. Hotfix will be released to recover the backwards compatibility.
- When pressing the Add measure/Add dimension button in the chart settings, the chart settings dialog stop working. The workaround is to add the new measure/dimension to the bottom and use the Move up button to get the desired order of measures/dimensions. This issue will also be fixed in the hotfix.
- ETL scripts run using QPR ScriptLauncher in the client side import mode don't work if there is an import operation taking more than 10 minutes. This is because during the import, QPR ScriptLauncher erroneusly doesn't send the heartbeats to QPR ProcessAnalyzer Server, which then stops the script, believing QPR ScriptLauncher has stopped working. This issue occurs in all QPR ScriptLauncher versions. This issue will be fixed to QPR ProcessAnalyzer Server in the hotfix (i.e., no need to update ScriptLauncher).
Fixed issues:
- D-12586: Scripts using client-side import with older version of QPR ScriptLauncher didn't work.
- D-12597: QPR ScriptLauncher was not sending heartbeats during import, which might have stopped the script prematurely.
- D-12589: Pressing Add measure/Add dimension button crashed chart.
- D-12558: In chart settings, setting expression to "(none)" gave error.
QPR ProcessAnalyzer 2022.6 (build 1259) (released 2022-10-05)
QPR ProcessAnalyzer Server and QPR ScriptLauncher use now .NET 6 (instead of legacy .NET Framework). The hardware requirements are same, but the .NET 6 Runtime needs to be installed to machines running QPR ProcessAnalyzer Server and QPR ScriptLauncher. See more on the updating QPR ProcessAnalyzer instructions. Note that the IIS deployment script is not available anymore. QPR ScriptLauncher update is not mandatory (i.e., .Net Framework based QPR ScriptLauncher works with the .Net 6 based QPR ProcessAnalyzer Server), but update is recommended due to bug fixes made to the QPR ScriptLauncher.
Following legacy analyses have been removed: Flowchart (analysis number: 0), Variations (8), Duration (9), Profiling (10), and Flows (13). This functionality may have been used in the SQL scripts. Note that this change doesn't affect the functionality available in the QPR ProcessAnalyzer web UI.
Following script can be run in the Expression Designer to show whether there are scripts in the system that likely use the removed analyses:
let removedAnalyses = Flatten([0,8,9,10,13].(["'AnalysisType','" + _ + "')", "'AnalysisType', '" + _ + "')"])); OrderByDescending(Flatten(Projects.Scripts).Where({ let scr = _;Sum(removedAnalyses.{let num=_;scr.code?.Contains(num)})>0; }),LastRunStart).(Project.Name + ": " + name + " (last run: " + (LastRunStart ?? "N/A") + ")");
Features:
- B-06524: Search dialog for finding and selecting multi-select items.
- B-07173: CSV file importing supports date columns for row matching.
- B-07277: Query timeout for dashboards.
- B-06921: Expression language: For loop.
- B-07307: Expression language: DataTable.Synchronize().
- B-07288: SQL expression functions ToLower and ToUpper.
- B-07335: Expression language: Datatable.NameInDataSource-property.
- B-07336: ScriptLauncher client side import heartbeat.
- B-07176: Dataframe queries run in SQL Server are stopped when operation is cancelled.
- B-06986: Support for AggregateOthers setting in dataframe processing.
- B-07342: Improved validation for dashboard import.
- B-07267: Support for Comparison parameter in SQLExpression filter rule.
- B-06533: Timeout to /api/expression/query.
- B-07208: Remove deprecated analyses (part 2).
- B-07295: Frontend components update.
- B-07290: Translation updates for release 2022.6.
- B-07326: .NET 6 migration merge.
- B-07398: Improvements to PA service log writing during client-side import.
Fixed issues:
- D-12098: Attribute function worked incorrectly inside Switch statement.
- D-12491: Case filter was not shown in header if case id column is integer.
- D-12535: Variables disappeared when going to other dashboard.
- D-12480: ScriptLauncher client side import stucked without error.
- D-12501: Snowflake model gave error: ERROR [42P13] Invalid argument types for function 'SUM': (BOOLEAN).
- D-12112: Added validation for allowed values of standard context variables.
- D-12470: Truncating datatable made it unreadable.
- D-12383: Chart settings export options didn't change when visualization is changed.
- D-11424: Multiselect dropdown lists were shown partly out of screen in smaller screens.
- D-12270: Old version Big data chart didn't show correct error message.
- D-12471: Expression query windowing didn't take Criteria parameter into account.
- D-12461: Several datagrid column menus were incorrectly visible at the same time.
- D-12430: Dashboard gave error: Uncaught SyntaxError occurred: Invalid or unexpected token at new Function (<anonymous>).
- D-12436: When query specific mapping was used, variations indicate flow that didn't exist in flows query.
- D-12432: SqlExpressionValue filter rule using Datediff function didn't work.
- D-12393: Expression generated with "Show Expression" in query designer did not support column role mappings.
- D-11272: Measure/Dimension/Column settings icon was changed to be more understandable.
- D-12416: Some UI strings were not translated properly.
- D-12153: Removed logging when defining functions.
- D-12485: Business calendar performance issue - part 1.
- D-12537: Variables didn't work in PA opening url when SAML is in use.
- D-12506: Root Analysis gave error "Operations that change non-concurrent collections must have exclude access".
QPR ProcessAnalyzer 2022.5 (build 1179) (released 2022-08-24)
Datatables can be stored to a separate SQL Server database, i.e., the datatables are not anymore created to the QPR ProcessAnalyzer metadata database. This improves performance as data intensive operations are isolated from metadata operations. To take the feature into use, create a new database in SQL Server and set the SqlServerConnectionString setting in the configuration table to connect to that database. When the configuration has been made, all new datatables are created to the datatables database. Pre-existing datatables are still located in the metadata database. To get the pre-existing datatables to the new database, they need to be recreated, which can be done by creating a duplicate of the datatable. Support for the metadata database stored datatables is continued, but deprecating the support in future will be considered.
Following legacy analyses have been removed: Variations Chart (analysis number: 1), Event Types Chart (4), Models (17), Model Report (21), Project Report (22), Datatable Report (23), and Script Report (24). To replace these analyses, use the corresponding native functionality in the expression language.
Following script can be run in the Expression Designer to show whether there are scripts in the system that likely use the removed analyses:
let removedAnalyses = Flatten([1,4,17,21,22,23,24].(["'AnalysisType','" + _ + "')", "'AnalysisType', '" + _ + "')"])); OrderByDescending(Flatten(Projects.Scripts).Where({ let scr = _;Sum(removedAnalyses.{let num=_;scr.code?.Contains(num)})>0; }),LastRunStart).(Project.Name + ": " + name + " (last run: " + (LastRunStart ?? "N/A") + ")");
Security hardening instructions to set the Content-Security-Policy http header, has changed. In addition, the img-src directive includes also blob: urls (this allows to export Highcharts charts).
Features:
- B-06898: In Snowflake models, events can be filtered based on event attribute values.
- B-06996: In Snowflake models, event type mapping can be defined for each chart.
- B-07069: Datatables can be stored to separate SQL Server database to reduce load from metadata database.
- B-06525: In dashboard editor, the background alignment grid is now better visible with any background color.
- B-06844: In script editor, the script status is automatic refreshed.
- B-06643: Links in header changed, e.g., the eLearning library link.
- B-06981: Chart settings remember the last opened tab, and the settings are always for the active chart.
- B-06467: Added SelectDistinct function for dataframes for selecting distinct rows.
- B-06933: Added "Like" function to SQL expressions for string pattern matching.
- B-06543: Generic Eval function for evaluating an expression given in a string.
- B-06944: Truncate function to efficiently delete all rows from datatable.
- B-07207: Access to properties CreatedBy, LastModifiedBy and LastImportBy for datatables using expression language.
- B-06906: Added Configuration property to Model and Datatable objects to get configuration json as dictionary.
- B-07170: Added ScriptByName and ModelByName functions for project objects and changed behavior for DatatableByName function.
- B-06919: Expression language: Increment (++) and decrement (--) operators.
- B-06829: UI remembers the user's last selected model in next login.
- B-07000: Workspace Models and Scripts tab auto-refresh has been optimized for performance.
- B-06456: Changed icons in chart Visualization selection.
- B-07175: Removed deprecated analyses.
- B-07205: Replaced Scripts analysis (24) with expression language property.
- B-06813: Pacm file support case and event attribute data types.
- B-06907: Define start row for the returned data in dataframe processing.
- B-06879: NumberPrecision and DatetimeTruncation support for dataframe queries Values columns.
- B-06998: Implemented referrer policy HTTP header.
- B-06936: Prevented using outdated caches in dataframe processing.
- B-07066: Snowflake queries has been optimized by removing unnecessary metadata queries.
- B-06900: Backend support for expression filter rules to dataframe processing.
- B-06987: Add caching for Project objects.
- B-06910: Frontend components have been updated.
- B-07117: Translation updates for release 2022.5.
Fixed issues:
- D-12075: DashboardFilter variable rules were applied in incorrect order.
- D-12351: Pivot table columns headers had unnecessary prefix when there are multiple measures and no dimensions in columns.
- D-11946: Content security policy violation occurred when exporting Highcharts charts as images.
- D-12064: Chart pending query was incorrectly cancelled when going to and from Add component mode.
- D-11606: Scripts and Projects tab slightly covered the top borderline of workspace datagrid and entire grid was not visible.
- D-12389: When using AggregateFrom, filters were always applied on the completely unfiltered set of events even if a "top level" filter existed also.
- D-12324: The visibility stepper counter didn't follow changed variations.
- D-12373: CSV import may have failed when there are line breaks in strings.
- D-12045: Column filter was not cleared when user switched to other view in Recycle bin.
- D-11590: Two context menus were visible at the same time.
- D-11131: It was not possible to move data grid column Custom filter dialog.
- D-11401: For datatables filter popup menu was opened outside visible dialog and required more scrolling to be seen.
- D-11650: In Workspace, sub context menu for target projects to move items didn't open with latest Syncfusion.
- D-11651: Multiselect list lost some items when using search.
- D-11657: Combobox autofill was broken.
- D-11639: User's default model did not behave as it should.
- D-12085: Filter rules in header were lost when pressing F5.
- D-12142: KPI card value is now visible for non-numeric values.
- D-12105: Nullable object must have value error displayed when trying to open Enhanced BPMN dashboard.
- D-12157: Root causes analysis in the Conformance Root Causes Analysis didn't work.
- D-12067: Some tooltips, e.g., in BPMN button, didn't disappear at all.
- D-12069: User got querying variation error when first time created big data flowchart.
- D-12177: In models list, search and cancel icons were vertically misaligned.
- D-12116: Add and delete filter rule from Create Filter dialogue did not work.
- D-11445: When using very large value for border corner roundness, chart settings were not visible.
- D-12166: External content presentation object was broken due to too strict content security policy.
- D-12151: KPI card incorrectly showed error "Measure data type needs to be numeric" when numerical measure has null value.
- D-12150: Event data column named "Case ID" mapping to both Case ID and Event Type caused error "An item with the same key has already been added".
- D-12325: Workspace root level had too many New items in context menu.
- D-12326: Wrong menu displayed for sub projects if first click create new option for root level from project tree view.
- D-12000: Script log system report default time interval was too long making report very slow.
- D-12119: Uncaught (in promise) TypeError occured: Cannot set properties of undefined (setting 'isAnimate').
- D-12293: "Cannot read properties of undefined (reading 'id') at o.checkTabNames" error occured.
- D-12294: Term ID was incorrectly translated.
- D-12353: Dialogs broke when there are quotation marks in header.
- D-11978: Soft deleted project could incorrectly be queried by admins.
- D-11982: Null reference error when filter contained attribute value with null.
- D-11706: Deadlocks during tests in Concurrency test category.
- D-11893: User.Globalpermissions returned incorrectly Hashset for inactive users (should return array).
- D-11892: Project-specific user role could be assigned without project id (as global).
- D-12114: In-memory core gave now and then error: The given key was not present in the dictionary.
- D-12138: Timespan function incorrectly assumed 32-bit integers.
- D-11548: Removed setting of default model and view.
- D-12230: Column mappings didn't work for some dataframe processing operations.
- D-12100: Giving project name (possibly id too) for DataFrame.Persist did not work when persisting a SqlDataFrame.
- D-12099: Querying SqlDataFrame for an empty table returned an empty in-memory DataFrame.
- D-12301: Duplicating local datatable didn't create datatable in sqlserver.
- D-12097: Error "Unable to join two tables without specified binding columns", when dimensioning events by two case attributes.
- D-11862: Filter with integer stringifiedvalues raised an exception when running in in-memory.
- D-12087: Error: Ambiguous column name 'CaseId'. The column 'CaseId' was specified multiple times for 'df_5'.
- D-12297: The datediff function resulted in an overflow when using high precision in SQL Server.
- D-12288: Error in querying event type measures: An item with the same key has already been added.
- D-12329: Filters using boolean attributes didn't work in SQL Server/Snowflake.
- D-12054: Backslashes in string literals gave null reference error in dataframe processing.
- D-12065: Case attribute filtering with column mapped to case id didn't work in filters.
- D-12070: PA server incorrectly modified dashboard json.
- D-12046: Expression language DateTime.Ticks was always UTC time.
- D-12102: SQL Expression: Variable-function did not work if the variable has upper-case letters.
- D-11950: Using list aggregation with different orderings in a single select did not work.
- D-12345: Mapping columns and using Columns function caused error 'invalid identifier'.
- D-12082: SourceData definition to events effected case attributes.
- D-12348: DateDiff did not support milliseconds in-memory.
- D-12374: Overflow error occurred when calculating standard deviation for case durations in large model.
QPR ProcessAnalyzer 2022.4 (build 1001) (released 2022-05-31)
Expression language has new function CallWebService for extracting data from web API's and make generic http calls. This function replaces the ReadWebService function which was a pre-production version of the same functionality. The ReadWebService function is thus now deprecated and it will be removed in future.
Features:
- B-06864: New dashboard component: Big data flowchart that calculates in Snowflake.
- B-06434: Flowchart has been improved by adding e.g., presets, tabs and title (both in in-memory and big data flowchart).
- B-06515: New setting for chart to prevent applying chart filter to other charts (Apply chart filters to dashboard).
- B-06450: Log in screen visual layout has been renewed.
- B-06876: User management system reports including used license for each user.
- B-05981: Expression language function CallWebService for web api and http calls.
- B-06789: Datetime truncation function support for half-year and millisecond time units.
- B-06497: SqlExpression function for getting string length.
- B-06581: SqlExpression function for trimming white spaces from strings (Trim).
- B-06630: SqlExpression function to add duration to date (DateAdd).
- B-06631: SqlExpression function for getting a substring of a string (Substring).
- B-06860: SqlDataFrame function to remove columns (RemoveColumns).
- B-06832: When error occurs in script run in client side, error message is shown in script log.
- B-06818: Russian language has been removed from UI.
- B-06445: Datatable row counts are cached to avoid querying the information from Snowflake.
- B-06843: Backend support for filter rule to filter events by event attribute values.
- B-06871: Translation updates for 2022.4 release.
Fixed issues:
- D-11802: When closing fullscreen, sometimes main header stayed invisible.
- D-11947: Dynamic dropdown lists didn't open in first click in certain situations in Firefox.
- D-11783: Flowchart start/end flow measure label showed in incorrect place when there are only one starting/ending flow.
- D-11796: Data export in pivot table didn't work.
- D-11530: When model is moved to other project, linked datatables are now not moved.
- D-11714: Scripts list hover buttons didn't work in Firefox.
- D-11500: Duplicated name check for workspace items was missing.
- D-11782: Some in-memory chart expressions gave parse exception: token recognition error at: '\n'.
- D-11871: Importing large number of rows to Snowflake could be very slow, as it incorrectly used SQL insert.
- D-11781: Persisting more complicated SqlDataFrames did not work.
- D-11849: Script log was not generated when running tasks in parallel using AsParallel function.
- D-11789: Changing expression to "none" crashed UI, and line breaks were incorrectly removed in multiline text fields.
- D-11817: Error missing when trying to run --#CallWebService with ExecuteInClientSide=1 in web UI.
- D-11716: Deleted models were incorrectly listed in main header.
- D-11912: User management dialog showed global roles incorrectly after they have been changed.
- D-11940: Datatable rows column didn't show all when there is over 1 billion rows.
- D-11596: Event count calculated incorrectly using AggregateFrom events.
- D-11588: EventTypes root dimensioned by case count with AggregateFrom did not work.
- D-11778: Variations dimensioned by flow count gave error in SQLDataFrames.
- D-11788: User roles did not work in expression language.
- D-11815: Variation case count showed as too large when there was other value joining events.
- D-11818: Flow case count calculated incorrectly in dataframes.
- D-11794: Switch statement returned null reference exception when condition expression evaluates to null.
- D-11820: Variation duration calculation gave error in dataframes.
- D-11867: Variations were not deterministic if there were events with same timestamps.
- D-11891: Snowflake data import could fail in SQL insert mode due to too many statements.
- D-11848: Configuration needed to be defined as valid JSON 'null'.
- D-11784: Memorycache root gave errors when measures were used.
- D-11913: Root causes icon was missing on the header.
- D-11938: Design model was incorrectly not stored to the dashboard.
- D-11939: Filter rule dialog showed incorrectly case/event attribute datatype in eventlog mode.
- D-12004: Adjustment expression and Custom aggregation expression could not be emptied.
- D-12034: All filter rules were not visible in main header when there are lot of them.
- D-11821: Flow count of variation is incorrectly null for some variations.
- D-11834: Error when dimensioning flows by case count in dataframes.
QPR ProcessAnalyzer 2022.3 (build 925) (released 2022-04-20)
In Workspace, dashboards and scripts cannot be created anymore to the Workspace topmost level. All existing dashboards and scripts in the topmost level are moved to a new project named System, where administrators can access them. If dashboards and scripts are moved away from the Workspace level before the QPR ProcessAnalyzer 2022.3 update, the System project is not created.
In QPR ProcessAnalyzer 2022.3, the legacy SAP NetWeaver RFC library for SAP connections has been removed, and now SAP connections use the new SAP NetWeaver RFC library. Also the related SapProvider setting in the SAP import command is not anymore in use.
Features:
- B-06310: Big data chart to perform calculation in Snowflake.
- B-06654: Dashboards, models, datatables and scripts are removed from Workspace level.
- B-05763: Possibility to set SAML service provider signing certificate.
- B-06765: Remove legacy library for the SAP data connector.
- B-06812: Make it possible to overwrite existing SqlDataFrame columns.
- B-06554: Support for IN operator in SQL expressions.
- B-06779: SQLDataFrame IN function support for null values.
- B-06553: Round and TruncateDate functions for SQL expressions.
- B-06776: Support for NumberPrecision and DatetimeTruncation parameters in dataframe processing dimensions.
- B-06759: Migrate root level dashboards and scripts to new project.
- B-06569: Frontend components have been updated.
- B-06794: Translation updates for 2022.3 release.
Fixed issues:
- D-11642: Sometimes dashboard charts showed loading animation forever.
- D-11708: Text filters did not work correctly in dashboard tables.
- D-11565: Delete icon showed incorrectly in dashboard properties and session variables.
- D-11537: Script run failed to session expiration error when running in ScriptLauncher and try to perform client side operation after session expiration.
- D-11196: Table column filtering context menu didn't show when table was in full screen.
- D-11591: It was not possible to import csv file having numbers with exponential notation.
- D-11543: Sometimes it was not possible to scroll to last row for workspace tabs.
- D-11338: When filtering in the flowchart, the include/exclude selection didn't show when flowchart was in full screen.
- D-11605: Implemented datatables metadata caching, as opening models list was too slow in some environments.
- D-11564: "Given key was not present in the dictionary" when all mandatory but useless values were not defined in script launcher config file.
- D-11572: BPMN model tooltips was hidden behind the bpmn editor.
- D-11586: KPI Card crashed when showing string values.
- D-11599: KPI card could not display very large values properly.
- D-11496: UI didn't work well in situation where there were no models available for user.
- D-11575: Column/bars were not visible for exported polar charts.
- D-11593: When creating user, error message about exists username didn't remind about inactive users.
- D-11600: Settings button was not visible in Process Discovery when KPI Card was used.
- D-11570: Slice into dimension didn't work for Root causes for Attributes preset.
- D-11589: Context menu that was not related to the recycle bin was incorrectly shown in Workspace.
- D-11622: Expression filter rules with different periods (DateGranularity) were handled incorrectly.
- D-11465: Add tooltip to effective permission table in Manage users dialog.
- D-11623: Tabs in model properties dialog didn't show correctly in narrow screens.
- D-11638: Changing include/exclude state of existing filter rule showed incorrect filter rule parameter selections.
- D-11654: Two popup menus sometimes incorrectly shown for Design Model Selector.
- D-11517: In Workspace first column "Name" was not visible if window was not wide enough to show all columns.
- D-11619: Query Designer and chart multiline text boxes didn't accept non-breaking spaces.
- D-11645: Column data type was missing in the setting of Datatable view.
- D-11554: Dataframe expressions were incorrectly executed by default in-memory.
- D-11585: Error text was misleading when SAP dll missing during import in server.
- D-11583: Error about Maximum Rows message was not displayed in analysis result but instead {} was displayed.
- D-11610: Event count showed incorrectly when including cases based on event types (in dataframe processing).
- D-11549: Column mappings script did not work with specific model.
- D-11634: Dashboard Properties/Variables had the wrong checkbox icon.
QPR ProcessAnalyzer 2022.2 (build 854) (released 2022-03-09)
SAML 2.0 authentication has been renewed, changing related urls as follows: SAML authentication is initiated from path /saml2 (previously it was /api/saml). In addition, the redirect back url is now /saml2/acs (previously it was /api/samlsignin). These changes need to be made to the identity provider and taken into use during the QPR ProcessAnalyzer 2022.2 update. In addition, the redirection to the SAML authentication initialization path, that has possibly been set to IIS, need to be changed.
SAP connector has been changed to use the newer SAP NetWeaver RFC Library provided by SAP. Due to this change, additional installation steps for QPR ScriptLauncher and QPR ProcessAnalyzer Server need to be done. The changes only affect environments where the SAP connector is enabled.
The WCF API has been removed from QPR ProcessAnalyzer 2022.2. Before updating, all customized integrations and other solutions that use WCF API need to be converted to use Web API. Note that there may also exist scripts that contact the WCF API using the --#CallWebService command. The used API can be distinguished from the url: if it contains "/MainService.svc" the connection is to the WCF API and changes are required. Note also that if QPR ProcessAnalyzer Excel client has still been in use, from now on it will not work.
Due to the WCF removal, installing QPR ProcessAnalyzer Server is now easier, as there is only one web.config file (i.e., no separate web.config files for http and https). Note also that the contents of the web.config file is changed, so settings contained by the file need to be migrated manually.
Salesforce connector has been changed to use Salesforce REST API, and the API version is changed from 38 to 54. Due to the change, there might be slight differences in the Salesforce connector behavior.
Features:
- B-06441: Snowflake stored datatables and models can be managed in Workspace.
- B-06495: In the out-of-the box dashboards, chart and flowchart settings are now remembered during the user session.
- B-06314: In Workspace, Models and Scripts tabs refresh automatically to show the current models and scripts status.
- B-06551: New statistical calculations for charts and other statistical calculations improvements.
- B-06362: Expression language: switch-case-default-break statement.
- B-05802: Support for encrypted SAML 2.0 assertions.
- B-06259: SAML 2.0 authentication library has been changed.
- B-06428: Removed limitation from SAP connector to allow multiple SAP extractions simultaneously.
- B-05837: Root causes calculation is available in the expression language.
- B-06526: When ComparisonEventLog is used in an expression, it's initialized automatically.
- B-06303: WCF client has been dropped.
- B-06563: All WCF related functionalities has been removed.
- B-06558: Salesforce connector has been changed to use Salesforce REST API.
- B-06514: In Workspace, scripting and model permission restrictions are better reflected in the UI.
- B-05960: Distributed computing: All datatable columns are made available in dataframe processing method.
- B-06500: When empty, DatabaseId is generated automatically in PA_CONFIGURATION table on startup.
- B-06567: Translation updates for 2022.2 release.
Fixed issues:
- D-11484: Scripts incorrectly stayed in stopping state, when system was shut down while the script was running.
- D-11537: Script failed to session expiration error when running in ScriptLauncher and performed a client side operation after session idle timeout.
- D-11495: Model specific DropUnusedModelsAfter setting is removed in server side as it didn't work as intended.
- D-11507: Removed "Drop unused model after" setting from UI, as it didn't work as originally intended.
- D-11497: Running script in web UI having ExecuteInClientSide=1 never completed.
- D-11523: Chart tooltip showed incorrect series when some series was hidden.
- D-11489: Percentage character (%) was lost from file name when exporting a filter to a json file.
- D-11557: Highcharts based charts were not disposed correctly on redraw causing out-of-memory error.
- D-11490: Stored filter rules were lost from default public filter when setting "All cases" to default public.
- D-11498: Trying to import empty csv file caused JavaScript error.
- D-11499: Trying to import csv file with header line only, correctly suggests now strings as datatype (instead of integers).
- D-11494: Flow Duration Distribution report had JavaScript error in the Enhanced BPMN dashboard.
- D-11501: Hiding event type name from flowchart caused error.
- D-11502: Right click didn't work when user opened BPMN editor from measures settings.
- D-11506: BPMN editor could not be opened in the Notification rules editor when creating measure.
- D-11478: Model properties window stayed visible in login page after session expiration.
- D-11491: JPG format file export had incorrect black background color.
- D-11513: Multi-select list item removal using the X button didn't work.
- D-11505: Changed new wiki location to the Help buttons.
- D-11486: Untranslated strings and translation inconsistencies for Finnish language fixed.
- D-11479: Selection list for new task could not display properly in BPMN editor.
- D-11508: Console error occurred when selecting Case conformance level in Notification rules editor.
- D-11510: Adjusting Object sample size caused error for Top violations chart.
- D-11144: Workspace scripts grid permissions was not checked when showing items context menu.
- D-11234: Creating new model option was incorrectly enabled when user had only view or analyst role for project.
- D-11520: In workspace, changing project with drag-and-drop takes now user permissions better into account.
- D-11521: Title could not display properly for datatable properties when using Finnish UI.
- D-11536: Translation support was missing for "Running" in Script Editor.
- D-11450: Export filter button was enabled in not possible state.
- D-11444: All duplicated dashboards had same identifier.
- D-11483: Unnecessary scrollbar was sometimes displayed in System reports dialog.
- D-11402: Rename icon was using wrong graphic.
- D-11558: Icons in UI had small vertical alignment problem.
- D-11559: UI used incorrect icon for Export functionality.
- D-11544: Datatable column names starting with lower case showed incorrectly in upper case.
- D-11482: Importing table to itself using SqlDataFrame caused the SQL Server to get partially stuck.
- D-11458: There was null reference error when ProcessingMethod is dataframe, ContextType is generic, and root is Cases.
- D-11487: ScriptById function did not return Access denied error if script didn't exist.
- D-11461: Filtering didn't work in dataframe mode when StringifiedValues was used.
- D-11540: Column mappings didn't work with WithRowNumberColumn function in SqlDataFrames.
- D-11231: In the Enhanced BPMN editor screen, import/open icon was wrong.
QPR ProcessAnalyzer 2022.1 (build 774) (released 2022-01-24)
Known issue: If the "Drop Unused Model After" setting is specified for a model, the model may incorrectly be dropped from the memory when the memory consumption is high. As a workaround, set this setting to empty, so that the model is not dropped by itself. This incorrectly behaving setting will be removed from the software in the next release (D-11507).
Features:
- B-06334: New dashboard component: textual labels can be added to dashboards.
- B-06324: Chart settings icon can be hidden in preview mode, and also icons visual layout has been improved.
- B-06494: Expression language: break and continue statements.
- B-06435: Web UI web page title in browser header simplified.
- B-06535: Copyright year updated to 2022.
- B-06466: Updated to Angular 13.
- B-06521: Frontend components have been updated.
- B-06448: Optimized Snowflake data import using Put command.
- B-06481: Added support for project description field to expression language and Web API.
- B-06491: Improvements for taking into use new SAP library.
- B-03053: Backend support for expression scripts permissions.
- B-06501: Translation updates for release 2022.1.
Fixed issues:
- D-11462: Model notifications were not visible if there was notification containing dimensions.
- D-11435: Links in model description showed "&" characters incorrectly.
- D-11447: Linked settings and variable mappings didn't work with flowchart.
- D-11454: ScriptLauncher didn't work when only hostname was specified in ServiceURL.
- D-11419: In CSV import, row number showed incorrectly in column count mismatch error message when file size was over 10MB.
- D-11425: In chart, Statistical calculation "Show change from previous" didn't show empty for first row.
- D-11307: Transparent color was not working for chart layout setting.
- D-11439: Date format was changed in workspace when changing only the language.
- D-11423: Dropdown lists were shown partly out of screen in smaller screens.
- D-11477: Maximum rows in Root causes didn't have maximum limitation.
- D-11167: Removed unnecessary "_." structures from chart expressions.
- D-11470: Catch function failed with a constant expression and non-constant resultIfException expression.
- D-11429: There existed Undefined % and NaN value in Root Causes Analysis result.
- D-11343: Script log was written to wrong script when expression script calls SQL script.
- D-11377: Stdevp function incorrectly returned zero for array of one element.
- D-11255: Train function didn't work with only one case in training set.
- D-11413: Color picker cancel button didn't work.
- D-11414: Clicking context menu icon in projects hierarchy tree in Workspace to open sub menu, didn't do anything.
- D-11245: Removed not needed fonts.
- D-11453: Wrong font used for System reports.
- D-11455: Red color error message didn't use Open Sans font.
- D-11180: Workspace contextual menu icons vertical alignment was incorrect.
- D-11475: BPMN context menu hidden behind other frame when webpage zoom setting was bigger than 110%.
- D-11416: Context menu in projects hierarchy didn't open in Cypress tests.
- D-11115: Title of event type filter didn't display "&" character properly.
- D-11097: When clicking data grid input validation message, JS error appeared: TypeError: Cannot read property 'data' of null at Gs.getRowInfo at Gs.mouseClickHandler.
- D-11267: Unable to use datatables with columns names having square brackets.
- D-11243: Project LastModifiedDate and LastModifiedBy are now updated when project properties are changed.
- D-11457: There was useless error message when HTML error is get via Web API.
Old Releases
See older releases in QPR ProcessAnalyzer Release Archive