👋 Please meet Ctrl-Q!

…a new open source tool for Qlik Sense admins and developers

Ctrl-Q logo

❓ Have you ever had to manually create dozens or even hundreds of master items in a Sense app? 😓
Only to later having to delete half of them? 🤯

❓ Or needed a detailed list of all bookmarks in an app?

❓ Or wondered how you could scramble data in certain fields in an app? 🕵️

Ctrl-Q tries to make life a bit easier for anyone involved in administering a client-managed #Qlik Sense environment, or developing apps for that platform.
The idea is simply to automate otherwise repetitive and error-prone tasks.

The tool lives purely on the command line. 
True, that means a bit more work to run it, but it also means you can script it and reuse those scripts again and again.

Available for Windows, Linux and macOS.
Free to use with a permissive MIT open source license.

Available at Github: https://github.com/ptarmiganlabs/ctrl-q


A no-compromise Qlik Sense backup solution, part 2

close up shot of keyboard buttons
Photo by Miguel Á. Padriñán on Pexels.com

The previous post focused on how to do a high level backup of all information in a client-managed Qlik Sense Enterprise on Windows (QSEoW) cluster.

Let’s dig into details a bit and take a look at how we can do more granular backups of various parts of QSEoW.
Specifically, this article looks at how to back up

  • all data connections to JSON. Useful to verify that a set of data connections has the needed settings or to just keep track of what data connections exist. Or as a reference if a change in data connection settings doesn’t work as intended.
  • all security rules to JSON and structured text files. Separate files are created for readonly, default and custom security rules, making it super simple to see what rules have been changed and which ones are still in their default state.
  • all tags and custom properties to JSON and structured text files. Large Sense environments tend to have lots of tags and/or custom properties, with associated difficulty to get an overview of things. Being able to have all tags/custom properties in a single text file can be useful both in daily operations and as backup.

You could argue that exporting these things should be a standard feature of the Qlik Management Console (QMC)…

But they are not.

The good news is that the Sense APIs make it reasonably easy to use PowerShell scripts to extract the information of interest.

A great use case for the scripts in this blog post is to do automated daily/weekly/monthly backups of these Sense resources.
Having easy access to past versions of security rules or data connection settings can for example be extremely useful if you happen to make a config change that doesn’t work out as planned..

Continue reading “A no-compromise Qlik Sense backup solution, part 2”

A no-compromise Qlik Sense backup solution, part 1

Photo by benjamin lehman on Unsplash

Over the years there has been numerous discussion in the Qlik community about how to best back up a client-managed Qlik Sense Enterprise on Windows system (QSEoW).

The backup and data security policies of different organisations of course differs, but if we focus on the Qlik Sense side of things there is a relatively well defined set of data that should be backed up.

This article is an attempt to pull together 10 years of experience doing various backup solutions for Qlik Sense into a single PowerShell script that can do unattended, automatic backups of QSEoW.

A second part of this article will focus on backing up apps from Qlik Sense.


Continue reading “A no-compromise Qlik Sense backup solution, part 1”

Can’t find that Qlik Sense log file from last week?

Photo by wu yi on Unsplash

Butler 7.2 to the rescue!

Yep, a new version of your friendly Qlik Sense helper has been released.
Buter 7.2 adds a few really nice features:

  • Standalone, pre-built binaries for Windows, macOS and Linux. No more installing Node.js first – just download Butler and run. It’s now easier to get started with Butler than ever before!
  • Config file location and log level configurable via command line options. No more finding the config file, change log level, debug, change log level back. Time saver!
  • Save script logs of failed reload tasks in an easy to access location. Simplifies investigations around what caused reloads to fail!

If you are looking for getting-started instructions, reference docs, examples and more – that’s all available at Butler’s dedicated documentation site butler.ptarmiganlabs.com.

All releases are available on GitHub, there you also find forums for bug reports, discussion new features and more.

Continue reading “Can’t find that Qlik Sense log file from last week?”

Butler Sheet Icons v2.1 is out

Happy unicorns! Free cake! 🦄🍰

…and a new version of everyone’s favourite tool for creating #Qlik Sense sheet icons.

Following up on last week’s release, version 2.1 is now out.

Largely based on feedback from the v2.0, the new version adds:

1️⃣ Exclude some sheets from getting new sheet thumbnail icons. An intro sheet in all apps that shouldn’t be touched? No problem!
2️⃣ New command to remove all sheet icons from one or many Sense apps. Can come in handy when you deal with large number of Sense apps in automated CI/CD pipelines etc.
3️⃣ Bug fixes and updated documentation.

Pre-built binaries for Windows and macOS available on GitHub: https://github.com/ptarmiganlabs/butler-sheet-icons/releases

Docker images on Docker Hub: https://hub.docker.com/r/ptarmiganlabs/butler-sheet-icons/tags

How I learned to stop doing manual screen shots and love SenseOps automation

😖Let’s be honest now.

Does your 🧠 really enjoy the manual process of taking screenshots and processing 15 sheets each in 50 different apps?
And then keeping those sheet icons updated as the sheets are modified…?

Didn’t think so.
No-one likes that and the result is usually outdated sheet icons in your Sense apps.

⁉️You know what? There is a better solution.

Continue reading “How I learned to stop doing manual screen shots and love SenseOps automation”

Qlik Sense sheet icons made easy

If you develop Qlik Sense applications you’ve been there: Manually creating screen shots and then manually uploading them to a content library, and finally manually assigning them as sheet icons.

Fun? Not really. But it makes the lives of our end users easier, so we do it.

I’ve had this idea for years, but only got around to work on it recently.
Better late then never, the Butler family of open source tools for Qlik Sense has a new member:

Butler Sheet Icons


It’s an open source tool that will take screen shots of all sheets in a Qlik Sense Enterprise on Windows app, upload the images to a content library and finally set the sheet icons of each sheet. Automatically.

The tool is cross platform (Windows, MacOS, Linux, Docker).
A single command will update all sheets in an app. Add a few lines of PowerShell script and you can automatically update all sheets in all apps…
Or run it as a Docker container as part of your CI/CD workflow.
Or manually when you have made UI changes to your Sense app.

Feel free to try it out, feedback, report bugs or contribute with new features!

Butler 5.0 is out – Extra mega super deluxe reload alerts for Qlik Sense

…and yes – Butler is still open source.

The step from 4.x to 5.0 indicates this is a major release.

Very much so in fact.
The main focus of the new version is on reload alerts. Rich email alerts were introduced in Butler 4.2, but that was really just the testing ground for what’s now available in 5.0.

Here’s the short version of what’s new:

  • Alerts for failed or aborted reloads can be sent to Slack, MS Teams, outgoing webhooks, MQTT or as email.
  • Alerts sent as email, Slack and MS Teams can all make use of all the rich formatting and layout options available on those platforms.
  • Alert emails can be sent to the owner of the Sense app that failed reloading.
  • A new API for doing partial (and full) app reloads was added. This means it’s now possible and even easy to do partial app reloads in Qlik Sense. One of the epic QlikView features finally become usable in Qlik Sense!

Interested in more details?

Curious what the alerts look like in reality? Check out this video for a hands-on demo: