Unlock a world of possibilities! Login now and discover the exclusive benefits awaiting you.
Hi everyone. I have found a strange glitch.
I have two identical dashboards. One loads data from Excel source files. The other loads identical data from QVD files. All tables in the data model are identical in length and format etc.
The QVD dashboard has an error on a Table chart: 'Error The request exceeds the memory limit'. Why would this error occur for the QVD source version and not the Excel source version? Does anyone know anything about QVD loading and how it impacts the data model that could cause this?
The table has several calculated dimensions. First it filters down to absences in the period we are interested in. Then it filters other tables to those relevant to that absence. Other data from these tables is added in other columns.
=if ([Absence Start] <= '$(Selection End Date)', [Absence Start])
=if ([Absence End] >= '$(Selection Start Date)', [Absence End])
=if( [Action Start Date] <= [Absence Start]
and [Action End Date] >= [Absence Start],[Personnel Number])
=if ( [Position Start Date] <= [Absence Start]
and [Position End Date] >= [Absence Start], [Personnel Area])
=if ( [Hours Start Date] <= [Absence Start]
and [Hours End Date] >= [Absence Start], [Empl. %])
Removing any one of these If statements (e.g. just using [Personnel Number] as a dimension) stops the error. So the error is caused by the multiple If statements.
This error only occurs on the QVD version of the dashboard, even though the data model appears to be identical. Has anyone ever seen anything like this?
Thanks for your help!
The source of the data is rather irrelevant if you get a memory-error or not. But the number of records may quite different and also how the data are stored within the source and how they were loaded into Qlik. Also the other parts of the script could have an impact on the data-model.
Beside this calculated dimensions should be rather avoided especially if there are any performance issues. In your case it means you should move the conditions into the expressions.
- Marcus
Thanks for the response. I have checked that the number of rows in every table is the same.
I have a QVD Loader dashboard that loads the Excel files, runs some complex transformations and then Stores all tables to file as .QVD. The QVD Loader dashboard displays a Table Chart with the above calcd dimensions, this works correctly. So this is the version with an Excel source.
My problem dashboard loads from the saved QVDs. The problem dashboard Table Chart is configured identically (built from a copy of the QVD Loader).
So the data model in both dashboards should be identical (and appears to be when looking at it). The problem version simply loads the QVDs stored from the QVD Loader version.
Does anyone have any other clues about why the memory error would only occur on the version loaded from QVDs, or any other tips about how I could investigate? It feels at this point like a software bug that I should notify Qlik about, so any tips about how to do that would also be appreciated! Thanks.
... should be identical ... I'm quite sure that the data-model and/or the data aren't completely identically. Looking on the tables is only the first step - now you need to look on the data, too - especially from the key-fields and those which were used within this chart.
Very helpful is often to put all relevant data into a table-box and to check the associations and the values there - anywhere will be a difference.
- Marcus
I have verified the data is identical:
Thanks for the investigation tips!
If really all data are identically then there are any differences within the application - this might be different settings for a section access, the use of prj-folder, different shared-files and/or that dimension/expression-groups and/or variables are applied and different or in any kind invalide. Probably there are further possible reasons ...
I would start with the shared-files - just backup it and remove it and try the chart again. The next look would go to any possible invalide stuff within the dimension/expression/variables.
- Marcus