You can manually convert a QlikView document (QVW file) to a Qlik Sense app. If you have access to the Dev Hub, you can use the QlikView to Qlik Sense converter tool to simplify the process.
The QlikView to Qlik Sense converter is described on the Qlik Sense Developer site.
- You need to have Qlik Sense Desktop installed to be able to convert a QlikView document into a Qlik Sense app.
- Your computer must have sufficient memory, at least 32 GB, when converting a large QlikView document.
- If the QlikView document contains hidden script or uses section access, you need to have full access to the hidden script and section access of the document.
Before converting the document
The Always One Selected Value property for QlikView list boxes or multi boxes must be disabled in order to clear selections in the Qlik Sense app. If your QlikView document contains hidden script or uses section access, you need to adapt the document before you convert it.
When a QlikView document with hidden script is converted, the hidden script part will be disregarded and not included in the Qlik Sense script. If you want to convert the entire script, do the following before converting the document. This requires that you have access to the hidden script in the QlikView document.
Do the following:
- Open the document in QlikView Script Editor.
- Copy the code from the hidden script tabs and paste it into regular script tabs.
- Save the document.
A QlikView document with section access cannot be imported to Qlik Sense, as there are differences in format and supported functionality. You can still convert the document manually.
Do the following:
- Remove the section access code in QlikView Script Editor before converting the document. This requires that you have full access to the script of the document.
Convert the document into an app.
For more information, see Converting the document into an app.
Reapply section access in the Qlik Sense app. There are some differences that you may need to take account for:
- User authentication is changed. The USERID field is now used to authenticate all users, and the NTNAME and PASSWORD fields are not supported anymore.
- If you have access to the script, but not to the data, you can open the app without data and edit the script, including the section access.
- Section access is applied using strict exclusion in Qlik Sense. This means that you can only see data that you have been specifically granted access to.
For more information, see Managing data security with Section Access.
QlikView variables excluded from export
A number of variables are not exported from a QlikView document (QVW) as they are only relevant for QlikView or is handled differently in Qlik Sense.
The following variables are not exported from a QlikView document:
- All variables starting with CD
- All variables starting with FLOPPY
Do the following:
Copy the QlikView document (qvw format) to the directory where your apps are located.
This is usually <user>\Documents\Qlik\Sense\Apps, but the location of the Apps directory depends on where you installed Qlik Sense Desktop.
Start Qlik Sense Desktop.
You now see the QlikView document as an app in the hub, with the name ending with (qvw).
- Click on the app to open it.
The app is saved into the Qlik Sense format (qvf file) in the folder where your QlikView document (qvw file) was stored. Also, the QlikView document file (qvw) is removed from the folder and automatically converted into a backup file (qvw.backup) stored here: <user>\Documents\Qlik\Sense\AppsBackup.
You have now migrated a QlikView document into a Qlik Sense app. The app contains the data model, including the loaded data, and the data load script.
You can use the data model to build visualizations, copy it or import it into your server environment through the Qlik Management Console (QMC), but you need to adapt the load script before you can reload the data model.
For more information, see Managing a Qlik Sense site: Importing apps.
Qlik Sense and QlikView data load scripts are compatible in general, but there are some differences that you may need to take account for and adapt the script in the data load editor before you can reload data. You can adapt the script directly in Qlik Sense Desktop, or you can import the app into Qlik Sense and then adapt the script.
Change file path references to data connections
QlikView uses absolute or relative file paths which are not supported in Qlik Sense standard mode, so you need to use folder data connections to point to file locations instead.
Do the following:
Create folder data connections for all file paths that are used in the data load script.
For more information, see Connecting to data sources.
You need to check statements and functions that refer to files. LOAD statements are the most common ones, but there is a complete list available.
For more information, see File system access restriction.
Replace all references to absolute or relative file paths in the script with lib:// references to the data connections you created.
Examples Original script in QlikView Adapted Qlik Sense scriptLOAD * FROM [C:\data\Tutorials source\Sales rep.csv];LOAD * FROM [lib://Tutorials source/Sales rep.csv];
In this case, the Tutorials source folder data connection should be pointing to C:\data\Tutorials source\, or where the data is located if you have moved the app to another computer or a Qlik Sense server.FileSize('C:\data\Tutorials source\Sales rep.csv')FileSize('lib://Tutorials source/Sales rep.csv')for each Dir in dirlist ('C:\data\Tutorials source\*' )for each Dir in dirlist ('lib://Tutorials source/*' )
For more information, see For each..next.
There are some features in QlikView that are not supported or recommended in Qlik Sense, for example:
- Input fields
- Message boxes
- Bundle and Info load
- ALL qualifier
We recommend that you check your script code against these lists of statements and functions that are not supported or recommended, and adapt the code according to recommendations.
For more information, see QlikView functions and statements not supported in Qlik Sense and Functions and statements not recommended in Qlik Sense.
If your QlikView document uses custom connectors to access data, you should be able to use them to load data in Qlik Sense as well without changes in the script. This requires that the same connector is installed on the Qlik Sense computer.
If you want to make any changes in the data selection by the custom connector, you need to install a version of the custom connector adapted for Qlik Sense.