Bug with Qlik Sense after upgrading from November 2018 to April 2020
With each release, Qlik has been adding new product features as well as performance, stability and security additions.
Qlik Sense April 2020 was a release jam-packed full of new features, more of which you can learn about in our recent blog here.
After completing a recent upgrade for a customer we came across a bug that had an unusual root cause – read on to find out more.
The Issue
Hyperlinks from tables in the Qlik Application stopped working – This occurred after upgrading to Qlik Sense Enterprise April 2019 from Qlik Sense Enterprise Nov 2019.
We found that while the link in the underlying data, measure and even when viewed in the table was correct.
When we hover over the link (or selected it) we can see an extra ‘=’ sign had been added at the end of the link.
The Resolution
Removing the ‘?’ sign from the Hyperlink – When we removed ‘?’ sign all the Hyperlinks were working fine again. And no ‘=’ sign had been added.
https://abc.xyz.com/ReportServer/Pages/ReportViewer.aspx?/InsightHubReports_PROD/Drivers/TOH%20By%20Licence
As you can see in the example below the Hyperlink now behaves as expected and opens a new browser window when clicked.
So why was this happening?
The “?” in URLs acts as a separator, it indicates the end of the URL resource path and start of query parameters.
For GET request types, the query parameters are appended in the URL itself and hence to differentiate the URL path and parameters the “?” symbol is used.
When we use “?” in the URL, the string ? and = sign is considered as the parameter and the string after = sign is considered as the parameter value.
If there is only ? sign in the URL and no = sign, then the = sign is forcefully appended at the end of the URL causing the URL to break.
Conclusion
Use the ? sign in the URL only when passing query parameters. Do not use it unnecessarily.
For example:
https://example.com/path/to/page?name=ferret&color=purple
If you are thinking about upgrading your Qlik Products talk to us today about how we can support this to ensure it is a smooth transition with minimal if any down time for users.