Skip to main content
Announcements
Defect acknowledgement with Nprinting Engine May 2022 SR2, please READ HERE
cancel
Showing results for 
Search instead for 
Did you mean: 
waterscg
Creator
Creator

Need suggestions for recipients having multiple filters

I have three NPrinting reports connecting to one QlikView document:

  • Applicant Report
  • Finance Report
  • Responsible Person Report

I have three publish tasks corresponding to the three reports:

  • Publish Applicant Report
  • Publish Finance Report
  • Publish Responsible Person Report

Each task sends its corresponding report to a unique group:

  • Applicant Group
  • Finance Group
  • Responsible Person Group

I have about a thousand recipients/users. Users belong to one, two, or all three groups. Simplified examples:

  • Bob: Belongs to all three groups
  • Joe: Belongs to the Applicant and Finance Groups
  • Jennifer: Belongs to the Applicant and Responsible Person Groups
  • Mike: Belongs to only the Applicant Group
  • Sue: Belongs to only the Finance Group
  • Steve: Belongs to only the Responsible Person Group

For each group a user belongs to, a corresponding, distinct dimensional filter is also defined; each group filter utilizes the same dimension. Simplified examples:

  • User: Bob
    Appl_Bob filter: "ApplicantUserID = Bob"
    Fin_Bob filter: "FinanceUserID = Bob"
    RP_Bob filter: "ResponsiblePersonUserID = Bob"
  • User: Joe
    Appl_Joe filter: "ApplicantUserID = Joe"
    Fin_Joe filter: "FinanceUserID = Joe"
  • User: Jennifer
    Appl_Jennifer filter: "ApplicantUserID = Jennifer"
    RP_Jennifer filter: "ResponsiblePersonUserID = Jennifer"
  • User: Mike
    Appl_Mike filter: "ApplicantUserID = Mike"
  • User: Sue
    Fi_Sue filter: "FinanceUserID = Sue"
  • User: Steve
    RP_Steve filter: "ResponsiblePersonUserID = Steve"

Here are the results:

  • For the Applicant task/report, each user belonging to the Applicant Group is to receive an email and the data in the report is to based on the user's ApplicantUserID filter. Only Bob, Joe, Jennifer, and Mike are in the Applicant Group; however, only Mike is receiving the email. On the plus side, the data in his email is sensitive to his ApplicantUserID filter.
  • For the Finance task/report, each user belonging to the Finance Group is to receive an email and the data in the report is to be based on the user's FinanceUserID filter. Only Bob, Joe, and Sue are in the Finance Group so they are they only recipients who are to receive the email; however, only Sue is receiving the email. On the plus side, the data in her email is sensitive to her FinanceUserID filter.
  • For the Responsible Person task/report, each user belonging to the Responsible Person Group is to receive an email and the data in the report is to be based on the user's ResponsiblePersonUserID filter. Only Bob, Jennifer, and Steve are in the Responsible Person Group so they are the only recipients who are to receive the email; however, only Steve is receiving the email. On the plus side, the data in his email is sensitive to his ResponsiblePersonUserID filter.

So when a user has one or more filters, they're not receiving the email--presumably because the additional filter(s) is filtering out the data.

IMO, the ideal solution would be to define a report- or task-level filter to override the filters that need to be ignored for that report/task; however, I'm unsure how to accomplish that.

Labels (1)
1 Solution

Accepted Solutions
Lech_Miszkiewicz
Partner Ambassador/MVP
Partner Ambassador/MVP

This was discussed many times.

essentialy you need to create 3 connections:

  • Applicant connection
  • Finance connection
  • Responsible Person connection

to the same document ....

then each of those reports needs to be built of those dedicated connections:

  • Publish Applicant Report based on Applicant connection
  • Publish Finance Repor based on Finance connection
  • Publish Responsible Person Report based on Responsible Person connection

and then create connection based filters

For each group a user belongs to, a corresponding, distinct dimensional filter is also defined; each group filter utilizes the same dimension. Simplified examples:

  • User: Bob
    Appl_Bob filter based on Applicant connection: "ApplicantUserID = Bob"
    Fin_Bob filter based on Finance connection : "FinanceUserID = Bob"
    RP_Bob filter based on Responsible Person connection: "ResponsiblePersonUserID = Bob"
  • User: Joe
    Appl_Joe filter: "ApplicantUserID = Joe"
    Fin_Joe filter: "FinanceUserID = Joe"

more here:

https://community.qlik.com/t5/Qlik-NPrinting-Discussions/Nprinting-17-Multiple-filters-on-user-level...

https://community.qlik.com/t5/Qlik-NPrinting-Discussions/Hard-time-understanding-user-filters-Nprint...

 

cheers

Lech

cheers Lech, When applicable please mark the correct/appropriate replies as "solution" (you can mark up to 3 "solutions". Please LIKE threads if the provided solution is helpful to the problem.

View solution in original post

2 Replies
Frank_S
Support
Support

Hi @waterscg 

I would first suggest checking the NPrinting Engine and or the NP scheduler logs for a phrase containing "empty set". If found, then at least one of the filter rules has been violated:

This may occur with

  • the use of 'cycles' or
  • when the same dimension is used twice in a single distribution where for example if you have a report filter city=seattle and a task or user filter city=paris within a single publish task.

Information about filter rules are mentioned in the link below if you wish to gain additional perspective on the use of filters/cycles in NPrinting reporting.

Supporting Source Reference:

Kind regards...

Please remember hit the 'Like' button and for helpful answers and resolutions, click on the 'Accept As Solution' button. Cheers!
Lech_Miszkiewicz
Partner Ambassador/MVP
Partner Ambassador/MVP

This was discussed many times.

essentialy you need to create 3 connections:

  • Applicant connection
  • Finance connection
  • Responsible Person connection

to the same document ....

then each of those reports needs to be built of those dedicated connections:

  • Publish Applicant Report based on Applicant connection
  • Publish Finance Repor based on Finance connection
  • Publish Responsible Person Report based on Responsible Person connection

and then create connection based filters

For each group a user belongs to, a corresponding, distinct dimensional filter is also defined; each group filter utilizes the same dimension. Simplified examples:

  • User: Bob
    Appl_Bob filter based on Applicant connection: "ApplicantUserID = Bob"
    Fin_Bob filter based on Finance connection : "FinanceUserID = Bob"
    RP_Bob filter based on Responsible Person connection: "ResponsiblePersonUserID = Bob"
  • User: Joe
    Appl_Joe filter: "ApplicantUserID = Joe"
    Fin_Joe filter: "FinanceUserID = Joe"

more here:

https://community.qlik.com/t5/Qlik-NPrinting-Discussions/Nprinting-17-Multiple-filters-on-user-level...

https://community.qlik.com/t5/Qlik-NPrinting-Discussions/Hard-time-understanding-user-filters-Nprint...

 

cheers

Lech

cheers Lech, When applicable please mark the correct/appropriate replies as "solution" (you can mark up to 3 "solutions". Please LIKE threads if the provided solution is helpful to the problem.