Skip to main content
Announcements
Jan 15, Trends 2025! Get expert guidance to thrive post-AI with After AI: REGISTER NOW
cancel
Showing results for 
Search instead for 
Did you mean: 
Asuod_
Creator
Creator

How to Enable Bulk Updates to a Column in Qlik Sense?

Hi everyone,

I need some help with enabling bulk updates to a column in my dataset. Specifically, I want the end user to be able to update the skills of multiple employees at once. Here's an example of my dataset:

Employee ID Physical Skills
EID001 Welding
EID002 Carpentry; Electrical Work
EID003 Roofing; Electrical Work
EID004 Painting; Roofing; Landscaping; Mechanics; Masonry
EID005 HVAC; Roofing; Mechanics; Plumbing; Painting
EID006 Landscaping; Plumbing
EID007 Roofing; HVAC; Mechanics; Electrical Work; Carpentry
EID008 Roofing
EID009 Roofing; Painting; Mechanics; Electrical Work
EID010 Electrical Work; Carpentry; HVAC

 

For example, if the end user wants to update the skills of employees with IDs from EID003 to EID009 to include "Bricklaying". Ideally, they would select all the IDs they want to change and then in an input variable put "Bricklaying" and then run a partial reload to update the table to add this skill to the current skills column for the specified employees.

Final Table would look something like this:

Employee ID Physical Skills
EID001 Welding
EID002 Carpentry; Electrical Work
EID003 Roofing; Electrical Work; Bricklaying
EID004 Painting; Roofing; Landscaping; Mechanics; Masonry; Bricklaying
EID005 HVAC; Roofing; Mechanics; Plumbing; Painting; Bricklaying
EID006 Landscaping; Plumbing; Bricklaying
EID007 Roofing; HVAC; Mechanics; Electrical Work; Carpentry; Bricklaying
EID008 Roofing; Bricklaying
EID009 Roofing; Painting; Mechanics; Electrical Work; Bricklaying
EID010 Electrical Work; Carpentry; HVAC

Any help or suggestions would be greatly appreciated!

Thanks in advance!

1 Reply
diegozecchini
Creator III
Creator III

Hi,
you’ll need to work around its limitations since Qlik Sense does not allow direct editing or updates to the source data. You can achieve the desired result using input variables, a partial reload script, and some data transformations.

First of all verify your dataset is loaded in Qlik Sense, ideally with the "Employee ID" as a unique identifier.

Then go to Variables Editor in the Qlik Sense app and create a new variable (e.g., vNewSkill) where the end user can input the new skill they want to add (e.g., "Bricklaying").

Add a filter pane to the app and select the field "Employee ID".
This allows the end user to select the employees whose skills need updating.

To support bulk updates, you’ll need to modify your script to accommodate the changes dynamically during a Partial Reload.

Load Script Example:

// Main Load Script
Employees:
LOAD
[Employee ID],
[Physical Skills]
FROM [YourDataSource]
WHERE NOT Exists([Employee ID], TempUpdates.[Employee ID]);

// Temporary Table for Updates - Filters the data to include only the selected Employee IDs (vSelectedIDs)
TempUpdates:
LOAD
[Employee ID],
[Physical Skills]
RESIDENT Employees
WHERE Exists([Employee ID], '$(vSelectedIDs)');

// Append New Skill - Appends the new skill to the existing skills of the filtered employees.
UpdatedSkills:
LOAD
[Employee ID],
[Physical Skills] & IF(Len([Physical Skills]) > 0, '; ', '') & '$(vNewSkill)' AS [Physical Skills]
RESIDENT TempUpdates;

// Replace with Updated Data - Adds the updated records back into the main dataset (Employees).
CONCATENATE (Employees)
LOAD
*
RESIDENT UpdatedSkills;

// Drop Temporary Tables
DROP TABLE TempUpdates;
DROP TABLE UpdatedSkills;


Add a button to your app with the label "Update Skills".
Configure the button to perform a Partial Reload when clicked.

This method should provides a dynamic and scalable way to enable bulk updates in Qlik Sense without directly modifying the source data.