Changelog
What is new in KPImailer.
Recent releases across all editions. Subscribe to release alerts to get an email when a new version ships.
v3.15.0
KPImailer for Qlik Sense
New features
- A folder per day or per value when saving to a destination. A report’s subfolder can now include tags such as the date or the cycle value. See A folder per day or per value.
Improvements
- Searchable app list when moving a report to another application. Type part of an app or stream name to find it.
Fixes
- Delivery folders imported from KPImailer 1 that contain tags now import correctly.
v3.14.0
KPImailer for Qlik Sense
Improvements
- The Cycle panel stops a count you no longer need. Changing the cycle field while the panel is counting emails now stops the earlier count.
v3.13.0
KPImailer for Qlik Sense
New features
- Different data in each attachment. Each file attached to a report can now have its own period and its own filter values, so one email can carry, for example, last year’s charts in a PDF and this month’s tables in Excel. A file’s own filters replace the report’s period and the report’s filter on the same fields, for that file only; the report’s other filters, and the value each email is sent for, still apply. If a file’s own filters match no data, that file is left out and the rest of the email is sent. See Giving a file its own data.
Improvements
- Find each table of a template in Qlik Sense. In the Excel add-in’s Bindings tab, every table and pivot table now shows the Qlik sheet it comes from, its object ID and its title, or “No title in Qlik Sense” when it has none.
- Missing files are named as you named them. When a file could not be attached to an email, the run history now names it by the file name you gave it.
- Pick burst values among those that send. With Selected values in the Cycle panel, the list offers only the values with data within the report’s filters.
- The Cycle panel says when it cannot count. When the number of emails cannot be checked, the panel says so and offers Check again, instead of showing the field’s total number of values.
Fixes
- The v3.12.0 update left the web interface on its previous version. All v3.12.0 screen improvements, such as the Cycle panel’s email count, now appear.
- The Excel add-in’s “Open inside Excel” notice is readable in dark mode.
v3.12.0
KPImailer for Qlik Sense
Improvements
- The report editor shows how many emails a burst sends. The Cycle panel now counts the values that have data within the report’s filters, updates as you change them, and warns when the filters match no data.
- A scheduled run that starts too late is recorded. When a scheduled run is dropped because it could no longer start in time, the execution history now shows it as missed at the time it was due, instead of leaving no trace.
- Qlik sessions are released when KPImailer restarts. Restarting the service no longer leaves its Qlik sessions open until Qlik closes them on its own.
Fixes
- Bursting sends only for values with data within the report’s filters. A bursting report no longer sends an email for every value of its cycle field, including values its filters exclude.
- A report whose filters match no data sends nothing. A date range with no data, a filter value that no longer exists or two filters that exclude each other no longer send the report without its filters.
- Sheet and slide repeaters follow the report’s filters. Excel and PowerPoint templates create sheets and slides only for values with data within the filters, and keep those filters for the rest of the attachment.
- Bursting with dynamic recipients no longer mixes up similar values. Values that differ only in upper and lower case each go to their own recipients.
- SQL data exports handle columns that mix numbers and text. A measure column with a “-” or an empty cell among its numbers no longer fails the whole export.
- SQL data exports never write into a KPImailer v1 database being moved. An export that targets a KPImailer v1 database registered for migration is refused, whatever name the database is reached by.
- Uninstalling or upgrading keeps your data when it should. An uninstall that keeps data, including a silent one, and an upgrade from a preview build to the final version of the same release no longer delete the installation’s data.
v3.11.0
KPImailer for Qlik Sense
New features
- Reload task list for integrations. Tools connected to KPImailer with an API key, such as RLV Scribe, can now list the reload tasks of a Qlik app. They can offer you a list to pick from instead of asking you to paste a task ID.
- Status of a specific reload. An integration that starts a reload can now follow exactly that reload until it finishes, even if the same task is started again in the meantime.
Fixes
- “Already running” is reported correctly. Asking KPImailer to reload a Qlik task that is already running now answers that the task is already running, and since when. Before, the request was reported as started even though Qlik ignored it, and waiting for it could end in a time-out.
- Each API key has its own request limit. Two API keys with the same name no longer share one limit on how many requests they can make per minute.
v3.10.0
KPImailer for Qlik Sense
New features
- Custom sheet styling in reports. Visuals from Qlik sheets that use custom CSS styling now appear in emails and PDF attachments with that styling, exactly as they look in Qlik.
Fixes
- The Reports list remembers where you were. Going back from a report returns you to the same page of the list, with your search, filters and sorting as you left them.
- Tall sheets are exported in full. Sheets that extend below the screen now appear complete in PDF attachments.
v3.9.4
KPImailer for Qlik Sense
Fixes
- Templates uploaded directly open bound to their app. A template whose file was uploaded rather than designed from the starter now opens in the Excel and PowerPoint add-in already linked to its Qlik app and bindings.
v3.9.3
KPImailer for Qlik Sense
Fixes
- Choosing an install folder no longer creates a second copy inside your
existing one. When installing, browsing to a folder that already held
KPImailer added another
KPImailerfolder inside it and installed there, so the new installation started with an empty database while the real one sat one level above. Browsing to the folder the installation is already in now keeps it.
- Choosing an install folder no longer creates a second copy inside your
existing one. When installing, browsing to a folder that already held
KPImailer added another
v3.9.2
KPImailer for Qlik Sense
Fixes
- Updating no longer moves an installation that was installed to a custom folder. An installation kept somewhere other than the default location was moved to the default one when it was updated, and its database, keys and files were left behind at the original path - the installation came up empty beside the real data. Updates now stay where the installation already is.
:::caution[If an update already moved your installation] Nothing was deleted. The database, keys and files are still in the
Datafolder at the original location. Reinstall this version, choosing that original folder as the install location, and it will reconnect to the existing database rather than create a new one. Take a copy of theDatafolder first. :::v3.9.0
KPImailer for Qlik Sense
Improvements
- Importing from the previous version recognises apps that have moved to another Qlik server. An app that was brought into a different server answers to a new identifier, and the import used to be unable to place any report built on it. It now identifies the app by what it contains, shows which app it matched and how much the two have in common, and lets you point a report at a different app instead. When more than one app could be the right one, it asks you to choose rather than guessing.
- The app list when creating a template is searchable. Starting a new Excel or PowerPoint template now offers a search box over the apps, grouped by stream, instead of one long list.
- A template can be started on an app that has not been read yet. Creating the template reads the app first, showing its progress, so the template always opens with the app’s sheets and fields available to it.
v1.1.0
KPImailer Portal
Everything needed to move from the old KPImailer Portal, one server at a time, and a new report editor where a file of the email can have its own choices.
New features
- Give a file its own choices. When a report’s author allows it, each file in the email can use its own values, for example last year for the Excel file while the rest of the email shows last month. Every file starts as “Same as the report”; switch it to “Own choices” to pick its values. Sending a report once uses them too.
- Bring your old Portal over. Administrators can connect the old KPImailer Portal and import its people with their current passwords, their roles and access, their servers and their address books. You review a plan of every item, with what happens to it and why, before anything is imported, and nothing is ever changed in the old Portal.
- Move scheduled reports over, one server at a time. Administrators can plan the move of every scheduled report from the old Portal and its KPImailer server. The plan shows each report, what will happen to it and why, and how many emails a month the moved reports will send. You decide the few that need a choice. Moved reports are prepared switched off, so nothing is sent twice while the old server still runs, and nothing is changed on the old systems.
- Switch the moved reports on, and back if needed. Once the old servers are stopped, administrators ask the KPImailer server to switch the moved reports on. The Portal first shows whether it can, and which old servers still need to be stopped. The KPImailer administrator reviews every report and approves the switch. Reports with a problem wait for their owner instead of sending. Within 30 days the switch can be undone, with a report of everything changed since.
- The Migration fleet. One page shows every server being moved from the old Portal: how far each one has come, its numbers, and the step that comes next. From there administrators mark a server live, which opens it to its users and emails each of them once: owners get their moved reports and what happened to each, and people who have not signed in for 90 days get a link to set a new password. A server can be recorded as rolled back or decommissioned from the same page, and once the last server is done the old Portal’s connection is removed by itself.
- Watch each server after the switch-over. Every server that has switched over shows whether its reports have been sent exactly as scheduled since then, with no send missed or sent twice and nothing sent by the old server, and when it has run cleanly for 14 days. A server that needs a look stands out in red.
Improvements
- A new report editor. Creating, changing or fixing a report now happens on one page: the name and email subject, your choices, the recipients and the schedule are all in view, each with a short summary and what still needs you. There are no more steps to click through. Your report is checked as you go and any problem shows right where it is. On phones, lists open from the bottom of the screen and the editor works in landscape too.
- Search in every list. Every drop-down list in the Portal now has a search box, and long lists scroll, so you can type a day, a value or a name instead of hunting for it.
- See your reports before they move over. Reports being moved from the old Portal show in My reports as migrating, with what happens to each at the switch-over: it starts sending, arrives paused, or waits for you to check it, and why.
- Clear reasons on a moved report that needs you. When a moved report waits for you, My reports says exactly why, for example that its old schedule ran too often or that it was rebuilt from the old Portal alone.
- Plan the move again after late changes. When a prepared report changes on the old server or in the old Portal before the switch, a new plan updates the prepared report, asks before replacing one that was changed since, and offers to remove one whose original is gone.
- Clear guidance when a report’s author changes its choices. My reports now tells you when a change to a report affects one of yours, and the editor shows which of your choices no longer fit, which of your earlier values were kept aside, and what to do to get the report sending again. A value that belonged to one file says which file.
Fixes
- Saving a new report, sending a report once and copying a report no longer fail with a message about a missing key.
- A report that its author publishes again can be opened and set up straight away, instead of showing “not found” for up to a minute.
- When a report’s author changes its choices while you are saving, the Portal now says so and tells you to open the report again, instead of showing a general conflict message.
- The installer no longer accepts an install folder given without its full path.
v1.0.0
KPImailer Portal
The first release of KPImailer Portal: one place where people get their own KPImailer reports, across every KPImailer server of the organization.
New features
- My reports. Every report you set up, on every instance you can reach, on one page, with its schedule in words, its next run and its last result. Run a report now, send yourself a test, pause, resume, copy, delete, and see its history.
- Catalog. Browse and search the self-service reports published on your instances, by instance, stream and app.
- Create your own report in four steps. Choose the values (lists only offer what fits your other choices), the recipients, the schedule in the instance’s time zone with your own time beside it, then save it or just send it once.
- Address book. Keep your own contacts and groups, pick them as recipients, and save a typed address to your contacts when you want to. Administrators can share contacts and groups with everyone.
- Access groups. Administrators decide which people reach which instances, with a matrix of groups and instances.
- Secure connection to each instance. Instances are paired with a one-time code and a certificate check; every request the Portal makes is signed with a key that never leaves its server.
- Windows installer. Installs beside KPImailer on the same server if you like, upgrades in place and keeps your data. The Help link can point at your own guide.
- Optional two-factor authentication for every account.
v1.10.1
KPImailer for Power BI
Fixes
-
A run can no longer stay “Running” forever. If the KPImailer service was stopped or the server rebooted while a report was running - a Windows Update restart was enough - the run stayed marked Running indefinitely. Because KPImailer never starts a second run of a report while one is in progress, every later scheduled run of that report was silently skipped, a manual run was refused with “Another execution is already running”, and the run could not be cancelled from the UI either. Three things now guarantee this cannot happen:
- When the service starts, any run left over from before the restart is closed as failed with the reason “The service stopped while this run was in progress”, and the report is free to run again at once. A scheduled run that was interrupted is run again after the restart.
- When the service is stopped normally, a run in progress records itself as interrupted instead of being cut off mid-render.
- A watchdog closes any run that has stayed open for an hour beyond the maximum execution duration without producing a result, so even a run stuck on something outside KPImailer is cleared.
Each closure is written to the run’s event log and triggers the report’s on-failure alerts, so nobody has to discover it by noticing the silence.
-
Cancel from the run’s own page. The execution details page now has a Cancel Execution button for anyone who can manage executions. It stops a run that is in progress, and it also closes a run that shows Running but has no worker behind it. Cancellations are recorded in the audit log with who asked for them.
-
A cancelled run stays cancelled. A run that was cancelled or closed while its worker was still rendering can no longer overwrite that verdict and deliver its email anyway.
Improvements
- Duration counts from when the run actually started, not from when it was queued, so a run that waited behind others no longer looks slower than it was.
- Long bursting runs are safe from being started twice. A run that took longer than thirty minutes could, in rare cases, be picked up a second time by the background job system while the first was still going. That can no longer happen.
- The service is given time to stop cleanly. Stopping the KPImailer service now allows a run in progress to record itself as interrupted before the process is ended.
-
v1.10.0
KPImailer for Power BI
Improvements
- A hidden section no longer leaves a blank gap. When a section condition evaluates false, the email used to keep an empty band exactly where the hidden content had been. The body now closes that space: the content below the section moves up, rows that held only hidden content are removed, and the email gets shorter by exactly that amount. Blank spacing you deliberately left on the canvas is respected - only the space a hidden section vacates is reclaimed. The Attach body as PDF attachment and the editor’s preview reflow the same way, since all three render from the same layout.
Fixes
- PowerPoint attachments on Pro / shared workspaces. A
.pptxattachment needed Power BI’s native export API, so on a workspace without dedicated capacity the run failed with an export error while CSV, Excel and PDF kept working. The browser render now produces PowerPoint too: each report page is captured at full size and becomes one 16:9 slide, matching what Power BI’s own PowerPoint export produces by default. The same fallback also steps in on dedicated capacity when Power BI rejects a native PowerPoint export at run time.
v1.9.0
KPImailer for Power BI
Improvements
-
A lapsed license no longer locks the app. When a trial or licence runs out, KPImailer now behaves like its Qlik sibling: the app stays fully usable, a banner explains that report sending is paused, and sending resumes by itself once the licence is renewed on Administration → License. Only a never-registered installation is taken to the licence setup screen.
-
Test send now rehearses the real run. On a bursting report, test send fans out exactly as the scheduled run will - one copy per cycle value, each filtered to its value with
{{burst.value}}resolved in the subject, body and file names - but every copy goes to the one address you typed, never to the report’s recipients. Test sends also honour Attach body as PDF, so what lands in your inbox is precisely what a recipient would get. -
Failures now tell you what failed. Preview and test send used to answer every problem with the same sentence (“Failed to render the preview email”). They now name the actual cause - which filter clause was rejected and why, or which attachment could not be produced - in the preview panel, the run’s history and the alert email.
-
A skipped run is presented as a skip, not an error. When a report’s condition decides there is nothing worth sending, Preview now says “Nothing to send” with the condition’s result, instead of reporting a failure.
-
Not In works everywhere. The Not In filter operator is now applied to the email body, the attachments and the exported files alike.
-
Filters on date columns. A discrete-value filter can now target a date or date/time column directly.
Fixes
-
Filters on number columns work. A discrete-value filter on a whole-number, decimal or true/false column failed every run with “The report filter set is invalid”. Filters of every column type now validate and apply correctly - to the email body, the attachments and the exports.
-
PDF and PowerPoint attachments on Premium Per User workspaces. Power BI’s export API refuses Premium-Per-User workspaces even though they report as dedicated capacity. KPImailer now recognises this: PDF attachments fall back to the browser render and still arrive, and a PowerPoint attachment explains the capacity requirement instead of failing cryptically.
-
File-name templates are kept. A typed attachment file name is no longer discarded when you later change the attachment’s scope, table or format.
-
Alert rule edits stick. Editing an alert rule while the page refreshed in the background could silently revert some of the fields you had typed - a renamed rule kept firing under its old name. Edits are now kept exactly as typed, and alert history records a delivery as sent only when it was actually handed to the email provider.
-
v1.8.0
KPImailer for Power BI
New features
- Manage Power BI behaviour from the admin UI. Everything that used to live in configuration files is now on the Power BI tab of System settings, seeded with sensible defaults you can edit in place. That includes the browser-fallback render controls used on Pro / shared capacity (page and inline sizes, capture scale factors, and page-load / target-resolution / stabilization timeouts), the delegated OAuth sign-in state lifetime, and the validation timeout. No more editing files to tune Power BI - change a value, save, and it takes effect.
Improvements
-
Schedules can’t be activated until they’re ready. A schedule now only activates once its report and the Power BI connection behind it are both validated. This stops a schedule going live against a report that can’t actually be exported. The two checks are on by default and can be relaxed under System settings → Power BI → Validation. See Schedules and activation.
-
Run limits are now enforced. The per-run recipient cap and the maximum execution duration (both on System settings → Execution) are enforced during a run: a run that would exceed the recipient cap fails with a clear message instead of sending a partial batch, and a run that overruns its time limit is cancelled cleanly rather than hanging.
-
Power BI validation respects a timeout. Connection and report validation now honour the configured validation timeout, so a slow or unreachable Power BI tenant fails fast with a clear result instead of stalling.
Fixes
-
Artifact retention cleanup no longer fails. Cleaning up old report artifacts could previously fail when an artifact was still linked to a sent email. Retention now removes the linked records correctly, so scheduled cleanup runs to completion.
-
Email links use your configured address everywhere. Password-reset, invitation, email-verification, and Microsoft sign-in links now all use the public frontend address you set under System settings → Email, so links work correctly behind a reverse proxy or on a custom host.
-
Delegated Power BI sign-in returns to the right place. The delegated OAuth redirect is now built from your configured frontend origin, so browser sign-in completes correctly across different deployment hosts.
-
Installer upgrades are safer. Upgrades reuse the ports you chose during the original install, and a rolled-back upgrade no longer wipes the database.
-
Additional reliability fixes to report render timeouts, execution cancellation, and the license-setup status display.