You are viewing the RapidMiner Server documentation for version 9.7 - Check here for latest version
Call web service from Qlik Sense
See also: Call web service from QlikView
This guide will walk you through the process of configuring and calling a RapidMiner AI Hub web service from your Qlik Sense environment:
- Open Qlik Sense and click on Create new app. On the popup window set the name and click on Create, the app will be created.
- Click the Open App button in the popup window.
- Click on the Navigation button on the left side and select Data load editor menu.
- On the Data load editor, click the Create new connection and select Web file. Set the URL and the name.
Note: If the web service requires authentication, the URL has to be modified to include user credentials as follows: http://username:password@web-service-url
Example: http://admin:pass123@dev.rapidminer.com:8080/api/rest/process/QlikSenseService?
- On the right side select the dataset by clicking on it. It will analyze the connection and give a preview of it. Select Html as File type and (based on your data) choose appropriate Field names and Character set. You can select and unselect attributes. Field names tell Qlik Sense where to look for column names. If the first record contains the names of columns then the Embedded field names setting should be selected. If the data does not contain column names, No field names should be selected. RapidMiner always sends column names as first record so Embedded Labels is the setting to use.
- Press the Insert script and it will put the script to the main data management page. Qlik Sense will automatically create a data loading script.
- When the Data load button is clicked on the right side, Qlik Sense will call the RapidMiner web service and RapidMiner AI Hub will execute the process behind the web service. Depending on the complexity of your process and the amount of data, this step can take some time. Once RapidMiner AI Hub has executed the process and all data is received by Qlik Sense, a new window will open.
- The data is now in Qlik Sense and ready to use. Click Navigation button again and select App overview. Here you can add new sheet and create a dashboard.
- Now that the two tools have been connected and data is pulled from RapidMiner AI Hub to Qlik Sense, data can be used to build dashboards. Data can also be refreshed on demand by going to the Navigation button on the left side and select Data load editor menu. Once the editor is opened click Load Data on the top right corner. On data reload, the script will call the RapidMiner web service again and receive fresh data back.
Call Parameterized Web Service
It is possible to configure a RapidMiner AI Hub web service to accept URL query parameters. Qlik Sense offers two ways by which a parameterized web service can be called:
- Statically using a data loading script
- Dynamically using Qlik Sense variables
Before being able to exploit these features Qlik Sense requires some initial configuration.
Qlik Sense Configuration
To be able to call an external web service with dynamic parameters, Qlik Sense must be configured to allow the data loading script lib reference to be replaced by the actual URL as well as two specific extensions need to be installed.
Using URL references
By default Qlik Sense replaces the URL with which a data connection was setup with a lib reference in the data loading script To change this behavior the Settings.ini file needs to be changed to enable Legacy Mode. This is done by setting the StandardReload variable value to 0 The Settings.ini file can be usually found in two locations:
- C:\Users\{user-name}\Documents\Qlik\Sense
- C:\Users\{user-name}\AppData\Local\Programs\Qlik\Sense\
If the file is present in both locations then you need to update it twice, once for each location.
Qlik Sense Extensions
Qlik Sense Extensions can be added to Qlik Sense by copying them to the C:\Users\{user-name}\Documents\Qlik\Sense\Extensions folder. For this guide the necessary extensions that need to be installed are the following:
- Variable extension: https://github.com/erikwett/qsVariable
- Sense Navigation: https://github.com/stefanwalther/sense-navigation
- Reload Button (Optional): https://github.com/mhamano/Qlik-Sense-Reload-Button
Using Data Loading Script
Parameters are passed through the URL of the web service. To be able to pass parameters, the data loading script has to be modified.
- Open Data load editor page from Navigation menu.
- Locate the URL of web service and add parameters to URL, by clicking on the Edit Connection option or by copying the URL directly to the script replacing the “lib://“ statement and edit the script.
Be sure to add the URL within the square brackets, if you remove them the data loading script will fail
Parameters are added to the end of the web services URL preceded by a question mark (?).
Syntax: http://username:password@web-service-url?param-name=valueExample: http://admin:pass123@dev.rapidminer.com:8080/api/rest/process/QlikService?p0=1
- Save the script by pressing CTRL + S or going to File > Save.
- Reload the script by pressing the Load Data.
Using Qlik Sense Variables
To be able to pass Qlik Sense variables as parameters to a RapidMiner web service, variables have to be defined in Qlik Sense and a data load script modified to use them.
- To create Qlik Sense Variable go to Edit on the dashboard sheet and select the Variables button on the left bottom. The following window will pop up.
- Click on Create new button, fill it and click on the save button at the top right corner.
- The new variable will appear on Variables window.
- Create new Variable object on Qlik Sense dashboard (or use existing). Such objects can be created once the Variable extension has been installed to Qlik Sense.
- Select the object and on the right side there is the Appearance panel.
- Setup the variable name, style and other settings in the Variable menu.
- To add values click on Add Alternative and add the desired value and the label that you would like to use.
- Create a Sheet Navigation & Action object on the dashboard. Such objects can be created once the Sense Navigation extension has been installed to Qlik Sense.
- In Actions menu in the properties window on the right enable the Actions before Navigation option.
- Select Set Variable Value from the First Action dropdown list and add the Variable Name.
- Click on the Navigation button on the left side and select Data load editor menu
- Locate the URL of the web service and add parameters to the URL.
Parameters are added to the end of the web services URL preceded by ? (question mark).
Parameters are appended to the end of a web service URL string, preceded by a question mark (?).
URL syntax: http://username:password@web-service-url?param-name=value
Qlik Sense variables can be referenced with the following syntax: $(variable-name)Example: http://admin:pass123@dev.rapidminer.com:8080/api/rest/process/QlikSenseService?p0=$(Variable1)
- Save the script by pressing CTRL + S or the Save button.
- Reload the script by pressing the Load Data button.
- Data will be reloaded with parameter value equal to variable value.
- You can also add a Reload button to the dashboard directly allowing users to load data easier.
- After adding the Qlik Sense Reload Button extension to the appropriate directory (Documents/Qlik/Sense/Extensions) add the Reload Btn object to the dashboard.