Skip to content

How Butler Sheet Icons Works

Butler Sheet Icons automates the human workflow of creating sheet thumbnails by driving a browser for screenshots and using Qlik Sense APIs for fast discovery and assignment.

End-to-end workflow

What happens at each step

  1. Initialize & sign in — Launches a clean browser session (headless by default). See Browser management. Auth: API key + web login (QS Cloud) or certificates + web login (QSEoW). Store secrets via Environment variables.

  2. Discover apps — Lists target apps via APIs (single app, by tag on QSEoW, or by collection on QS Cloud). Platform specifics: QS Cloud config and QSEoW config.

  3. Select sheets — Reads sheet metadata via Engine APIs and applies rules to skip or blur certain sheets. See Sheet exclusion and Sheet blurring.

  4. Capture screenshots — Navigates each sheet in the browser, waits for rendering, and captures the requested area (content only, with title, with selections, or full page). See Sheet parts and Browser management.

  5. Process images — Resizes to thumbnail and optionally produces a blurred variant for sensitive content. Details in Sheet blurring.

  6. Upload and assign — Uploads images (QSEoW via QRS content libraries, QS Cloud via cloud APIs) and assigns them to sheets. Options are covered in the platform-specific configuration pages. If any image fails to upload, the app is left alone rather than being pointed at images that are not there — see Failed to upload N of M thumbnail image(s).

  7. Save the app — Once every sheet has been dealt with, the app is saved once. See below.

When the app is saved

Requires BSI 4.0.0 or later

Earlier versions saved the app once per sheet.

Butler Sheet Icons saves each app a single time, at the end of processing it, and only if at least one sheet actually changed.

This matters in two ways:

  • App version history. An app with forty sheets used to gain forty versions in Qlik Sense on every run. It now gains one. An app where nothing needed changing gains none at all.
  • Failed runs change nothing. Because the save happens after every sheet has been handled, a run that fails before it — a published app, or one the account running Butler Sheet Icons cannot write to — leaves the app completely untouched, with its sheets keeping the icons they had. Previously the sheets processed before the failure had already been written, leaving the app with a mix of old and new icons.

Re-running after a failure is therefore a clean retry rather than a resume. See Run failures and exit codes.

Tips and pointers

Released under the MIT License.