Lets start with what output template you will be using. Do you need to send to a PDF or Excel Spreadsheet?
Are there multiple charts and tables or just one in your output?
Importing recipients is pretty straightforward, but you need to decide if each person will get their own task or if you can just cycle through salesperson name dimension with one task.
Is this a process you are going to schedule or can you allow each person to go in and run it on demand from the application?
How often do you generate the reports?
NPrinting has many paths to creating your output based on the answers to these questions.
Hope that gave you some things to think about.
I'm still trying to get my head around how NPrinting works, but to start we just are going to send the same Excel report, which is based on one QVW, to each Sales Rep.
We will be scheduling these reports to run every evening.
When you say that each person could get their own task, what is that referring to? My initial thought was to have a single report that is "called" by a single task that had all the recipients attached to it. Each recipient would have a filter of himself that would reduce the data when creating their report.
I'm not sure if this is the best way, but I don't see another way to accomplish it. Again, I've only been playing with NPrinting for a couple of days and from what I can tell there is a lot to learn!
Aran did a great job of explaining it. I did have a specific project where I needed to use individual tasks rather than group recipients in a task. See this thread if you have some idle time to kill.
You don't have to emulate Loop and Reduce.
You can use a field as a CYCLE which is equivalent to looping over a variable. The cycle should be on the report as such.
Cycles can be created various places inside reports too - so for your purpose the report is the place to do the cycling.
Make sure that the field sales rep you CYCLE over will select the data and only the data for the particular sales rep.
Then the report will be created as if a reduction was performed because of the associate logic.
It is very simple and straightforward.
If your objective is to build a standard report which is distributed to many people and you want each person to receive the report with data is specific to them then your original idea is best practice.
Here's a concrete example:
You have many sales people, each of whom covers a single territory. Each sales person should receive a report, but the data in the report should be specific to their sales territory.
This is how to achieve that result
You import the sales people through a recipients import task (or build a table in your QVW with all the information - see the "recipients export" tab in the attached). Be sure to put them into a recipients "group" as part of that import.
Create a recipients import task so that you can schedule regular updates
Create a report task and add the "group" as one of the recipients. Add the report(s) to the task.
When you execute the report task, each recipient will receive the report(s) but their reports will only have the data that they are "allowed" to see as determined by the filters created during the recipient import.
NPrinting can import recipients from files (txt, excel, xml...), databases (oracle, sql server...), QVWs.
The following tutorials will probably be helpful:
For more on import syntax there's a list of tutorials here:
Setting up the Task:
More on distribution here:
SalesDemo.qvw 1.2 MB