Unlock a world of possibilities! Login now and discover the exclusive benefits awaiting you.
Hi,
We have on demand nprinting report that we are running from our inhouse tool. Report is setup with override filter values which business can change example. Client name, date range.
We have a requirement, where we will create a flag filter as below
Data Complete Flag: (if Umbrella name is mapped in data for Client, it should be considered as 'Complete' and report will run and generate output). If Umbrella is not mapped to Client that is null or empty field and Business runs the report with Default value as Complete. They report should succeed without output. This will show business that there is nothing wrong with report they have to check their data mapping.
Currently when we are running the report with Complete filter value. Nprinting is failing it with a generic error that "Qlik failed to run the report". when we run with Incomplete value in the flag it runs with empty report.
can you please guide how to achieve this.
Umbrellaname_Flag is the filter we will use as Data complete Flag. We are unchecked the Override box to run the report from nprinting designer.
Also, we have option in Nprinting report setup: Do not generate report. Report generation will fail until issue is resolved. How does that work ? When we have empty report in above scenario it should not generate.
Nprinting Version: Feb 2025 SR2
Hi @Fareeha123
I have read through couple of time this description and I have questions which should be answered before we can move any further?
Bottom line is - the best approach to have trouble free solution is to work around so you can always apply required selections in Qlik without having to do "override" or any other selection which can lead to unpredictable results.
cheers
Lech
Thanks Lech,
1. On demand reports we are not forcing any filters. as you can see in the image above user can change the values and are able to run the report as per requirement.
2. Do not generate report. Report generation will fail until issue is resolved. Thank you for clearing the concept.
3. We are creating a flag in load script if Umbrella is null or empty for Process ID then "Incomplete" else "complete". When we are using Complete Status on Nprinting filter the report is failing because for that Process ID Umbrella is not available. When we select Incomplete Report comes back without data. As per user requirement user wants to run the report with Complete status by default and report should succeed without output. Which will Indicate them that there is no issue with report, and they have to check their data in the source.
4. Have you custom-built some "tool" which likely uses API to operate NPrinting : Yes, we have built custom tool that uses API to Connect to Nprinting on demand reports. User is able to run the reports and change the parameters.
5. We cannot move filters to Set analysis as they will change according to report's needs.
We need a solution that shows us when Data is not complete in the source and user runs the reports with Complete Status report should succeed without output. Do we have the ability through Nprinting API or Nprinting Settings where we can succeed the report without report attachment/Output?
Hi @Fareeha123
So this is exactly where it is all confusing. On your screenshot you are showing NPrinting Filters which are used with Task Scheduler reports normally. Those should not be populated when using OnDemand functionality!!! That is where this is already an issue.
For OnDemand reporting there would be no NPrinting filters and users would apply selections directly in Qlik Sense app filter panes/objects and they would see directly in Qlik Sense app that certain selections are/(are not) possible simply by looking at available fields in Qlik Sense. (green/grey/white colours in filter pane). Those selections are then passed through to NPrinting via the OnDemand button. That is the standard functionality of OnDemand.
Now here we are not talking about standard functionality. You are using it in very unusual way and it is hard to advise you because your setup seems to be far from standard approach which would easily work. It actually seems like you are very much overcomplicating it. By putting filters like you are, you don't see relationships in data. Using those filters needs to be done in such way that there has to be possible combination of all applied filters in the app which unless you check directly in the app you cannot guarantee upfront, or you have to cross-join all fields you use in your app as filters and create required combinations which sometimes can be done if dataset is not too big. That way you would create dummy records but with no factual data associated with it. Then it can be selected/filtered but no results would be returned. I see this option really as a "last straw" as it can get very messy - very quickly.
Now you are saying that you cannot move filters to set analysis. I agree if we were talking about all of those filters, however in this case surely you could move the "Complete" one to set analysis so that data in data model would not be restricted to "impossible selection" and only chart would be restricted which would produce empty set as far as I understand your requirement that is exactly what you need?. All other filters could still be the way they are.
Again to make sure we are on the same page - the way you are currently putting filters (using actual NPrinting filters) is not the way OnDemand reporting is designed to work. Those are meant to be Tasks/Report/Users or Object filters which MUST have possible combination of values in Qlik data model. And again - OnDemand does not require NPrinting filters as users should filter data directly in Qlik Sense app which in turn does exactly the same thing i mentioned above - it makes selections possible!
cheers
Thank Lech,
Do we have the ability in Nprinting API to succeed report with file/output generation in the attachment ?
Hi @Fareeha123
The use of the term “attachment” suggests to me that you are referring to a report being sent via email. If that is the case, then this would no longer relate to the On-Demand functionality of NPrinting, as On-Demand does not use email as a delivery method. For clarity, please refer to the API documentation linked below.
https://help.qlik.com/en-US/nprinting/February2025/APIs/NP+API/index.html
This should help clarify what functionality is supported via the API.
Further comment:
I apologize, but I am having difficulty understanding the methods you have implemented, which makes it challenging to provide accurate guidance. To move forward, it would be helpful if you could explain the full process you are using—specifically, the API endpoints your tool calls at each stage of report generation. This would allow us to gain a clearer understanding of this rather unconventional approach.
Typically, I would approach a discussion like this by first defining the requirements. From there, I would outline the process needed to meet those requirements. In most cases, there are multiple ways to achieve the same result, and I generally favor solutions that are easier to maintain and troubleshoot. It is also important to explain the rationale behind each approach, particularly with regard to any licensing constraints that may apply.
Based on your description, it appears that you are relying on a custom-built tool, but the question is WHY?. I assume the motivation behind this approach is to provide users with live access to Qlik Sense data (through NPrinting report output) without requiring a Qlik Sense license. At the moment, I cannot identify another clear reason, especially since the solution you describe could be implemented more straightforwardly using Qlik Sense and a standard On-Demand app, so yeah - it would be helpful if you could clarify for us the reasons and use case you are trying to build.
cheers
Lech