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: 
gdevarashettyhf
Contributor III
Contributor III

Nprinting - How to generate one HTML report per User Optimized way

I am relatively new to NPrinting. appreciate your time helping.

Requirement:

1. Document X.qvw

2. X.qvw Contains UserID and EmailID in the model for 1000 users.

3. Users are accessing dashboard with their Section Access permissions. Using Qlikview security to generate HTML report is taking 2-3 minutes per report which is 50 Hrs for 1000 reports (We only have 1 designer and 1 server production license)

4. Apparently there is a way to use filters (or something) to generate the output once but generate each report for each of the userID and send email to its corresponding email ID.

This seems to be a very common requirement, will really appreciate if someone can post details on how to achieve this.

Thank You,

Ganesh

1 Solution

Accepted Solutions
Daniel_Jenkins
Specialist III
Specialist III

Hi Ganesh,

I would:

1. Make a copy of your QlikView document (let's call it Y.qvw), remove section access from it, and use it as the Connection in your QlikView NPrinting project (NSQ)

2. Add a column to the User table in Y.qvw defining recipient filters to emulate the  section access removed in the previous step. I would also add columns for Full Name & Group. Filter syntax: Advanced Filters Syntax on Recipients Import

3. Create an Import Recipient entity and Task to populate your NSQ with the Users, their e-mail addresses, filters etc.

Other tutorials covering this are here: QlikView NPrinting Tutorials - Recipients & Users

4. Create the required HTML report, add it to a Report Task & add the recipients (or the Group) to the task. This tutorial shows you how to distribute user specific reports via e-mail: How to Distribute User Specific QlikView Reports by E-mail

Note that the report will be filtered for each user (Recipient) based on the Recipient Filter defined in step 2.

I suggest that you download and go through the Training Material that has examples of all these features and many more.

HTH - Daniel.

View solution in original post

2 Replies
Daniel_Jenkins
Specialist III
Specialist III

Hi Ganesh,

I would:

1. Make a copy of your QlikView document (let's call it Y.qvw), remove section access from it, and use it as the Connection in your QlikView NPrinting project (NSQ)

2. Add a column to the User table in Y.qvw defining recipient filters to emulate the  section access removed in the previous step. I would also add columns for Full Name & Group. Filter syntax: Advanced Filters Syntax on Recipients Import

3. Create an Import Recipient entity and Task to populate your NSQ with the Users, their e-mail addresses, filters etc.

Other tutorials covering this are here: QlikView NPrinting Tutorials - Recipients & Users

4. Create the required HTML report, add it to a Report Task & add the recipients (or the Group) to the task. This tutorial shows you how to distribute user specific reports via e-mail: How to Distribute User Specific QlikView Reports by E-mail

Note that the report will be filtered for each user (Recipient) based on the Recipient Filter defined in step 2.

I suggest that you download and go through the Training Material that has examples of all these features and many more.

HTH - Daniel.

gdevarashettyhf
Contributor III
Contributor III
Author

Hey Daniel. Thanks for taking time and replying. It works as suggested.

I do have a question not sure if you can answer - I will post it as another reply.

1. We have 1000 odd emails (each with its own slide of data) to be emailed to their respective users.

2. Thought the above process would help speed up the exercise as it will open the document once and use filter for each recipient and send email. This doesn't seem to be the case. Maximum time (2-3 mins.) is consumed between "Producing Report :HTMLReport..." and "Report Produced:HTML Report...". It seems to have minimum effect as compared to doing the Section access way.

3. 1000 reports = 4 per 10min = 40+Hrs.

4. Is there a faster way to achieve this. We are looking into see if we can fine tune the QVW for faster fetch into NP but other than that, is there a way to multitask or improve from NP side?

5. We have 3 Designer and 2 Server Licenses. Is it possible to utilize Designer and Server as 2 instances and run 2 different sets. This way we can have total 5 Sessions running parallel. That would still give a turnout of 40/5 = 8Hrs which is not so good.

Any Ideas, greatly appreciated.

Thank You,

Ganesh.