The new Application Automation feature allows users to either update, change, or comment into source systems directly from a Qlik Sense app!
Static, read-only dashboards are a thing of the past compared to what's possible now in Qlik Cloud.
‘Write back’ solutions offer the ability to input data or update dimensions in source systems, such as databases or CRMs, all while staying within a Qlik Sense app.
The solution incorporates both Qlik Cloud and Application Automation to enable users to input data from a dashboard or application and run the appropriate data refresh across the source system as well as the analytics.
Example Use Cases:
Ticket/ Incident Creation
Create Ticket or Incident in JIRA or ServiceNow.
Data Changes
Update Deals/Accounts in a CRM like HubSpot or Salesforce.
Data Annotations
Add a comment to or more records in a source system.
This new feature is possible with all of the connectors located in Application Automation, including:
CRMs like HubSpot or Salesforce
Databases like Snowflake, Databricks, Google Bigquery
SharePoint
and more!
Below you can see technical diagram based around using Application Automation for a write back solution.
The ability to write back in Qlik Cloud is a game changer for customers who want to operationalize their existing Qlik Sense applications to enhance decision making right inside an app where the analytics live. This not only streamlines business processes across an ever-growing data landscape, but it also enables users to to act in the moment. With Application Automation powering the write back executions, customers can unlock more value across their data and analytics environment.
If you define an expression in the variable created in the UI, then on the automation side it will just run the expression so user input will be ignored.
If you want to have a user-inputted variable then best to give the variable with no definition/formula.
Could you please try removing the expression from the definition field in the variable and see if that takes the value that is being provided in the input box?
We are also working on updating the demo video to clarify how the variables should be configured on the app side to pass the user-inputted values to the automation.
Thanks @AfeefaTk , I managed to get it working by adding one more Edit button that set the variable values. My comments is, if we just follow the video step by step we wont be able to get it work.
I have a different approach mentioned below to get the user-inputted values passed over automation and also have the selected values auto-populated in the input box.
Ensure Include selections are selected in the Execute automation action in the button.
Clear the definitions of vPlatform and vName.
Create two new variables - vPlatform2 and vName2 with the definitions =Platform and =Name.
Set the input boxes to show vPlatform2 and vName2.
Add two set variable actions before executing the automation. The first one will set the variable vPlatform to =vPlatform2. The second one will set the variable vName to =vName2.
Click on the Copy input block from the Execute automation action in the button and paste this into the automation.
Use the Get expression value blocks to get the vPlatform and vName variables in the automation. Use the formulas =vPlatform and =vName.
My problem with this solution is that our tenant is limited in the number of automation per month.
We have a lot of requests to be able to input explanations to the data but I cannot build this with a 20K automation allowed per month. Just refreshing our apps every hour uses sooo many automations!
hi @AfeefaTk , i tried your second solution and it doesnt work like @Edy_Tan solution..your solution works well only once for manually inputting values.but after that it overrides that particular variable input box too..it means when you further select values from table it doesnt reflects on variable input box..it passes those selected values to variables but doesnt reflect on input box. So when you click on update button your data doesnt change in database..i hope you understand what i am trying to say.