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: 
mbespartochnyy
Creator III
Creator III

Do I need to create a trigger on NPrinting connection?

Hello,

I've been trying to understand NPrinting Connections and their role for years now. I read through the Reloading connection metadata documentation and I've been using NPrinting for few years, but I never fully understood when I should and when I shouldn't create a trigger to reload metadata for an app. To be safe, I always create one but that, obviously, eats up server resources potentially unnecessarily.

With that as the context, here is my question. If I:

  • Setup initial connection to a QlikView app, for example.
  • Built NPrinting filters and conditions
  • Built NPrinting reports
  • Setup users in NPrinting and applied filters to users
  • Built NPrinting publish tasks to conditionally distribute reports to different users who have different filters applied on them.

Let's say that nothing except for the data in the data model of the QlikView app is changing. There's no new objects, no new variables, no new dimensions, no new expressions in the QlikView app. On NPrinting side, there's also no new development or changes to filters, conditions, or reports. Literally the QlikView app has been built, published, a reload task created for that app to have it refresh with new data on a regular schedule, we've setup all the stuff I mentioned in NPrinting for it, and that's it. Nothing in NPrinting or QlikView app is touched after that.

Now's the question, in that scenario, do I need to setup a trigger in NPrinting for the Connection to the QlikView app? Why or why not?

If anyone can explain proper use of Connection triggers in NPrinting, how they were meant to be used in long-term, and different use cases for setting up and not setting up connection triggers I would highly appreciate it.

Thanks in advance!

Mikhail B.

Labels (2)
2 Solutions

Accepted Solutions
Lech_Miszkiewicz
Partner Ambassador/MVP
Partner Ambassador/MVP

.....and you have forgotten to mention the most important thing - type of connection to your qvw in NPrinting connections

  • If it is LOCAL - then you need to schedule metadata reload as NPrinting must close and re-open a qvw in order to obtain the latest version of it. 
  • If it is QVP/Server or Claster or Qlik Sense - you dont need to do it.

In reality metadata must be only reloaded if you changed something in the app objects and if you are using LOCAL qlikview connection with NPrinting so it gets a chance to close and open the most recent document.

Lech_Miszkiewicz_0-1661900240484.png

 

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

mbespartochnyy
Creator III
Creator III
Author

Thank you so much, sir! This helped me to better understand what those tasks are meant to do! I appreciate your time and quick replies!

It seems like it's really simple then. Metadata task needs to be run:

  • On initial connection to a Qlik document/app.
  • Whenever existing object/variable/dimension/measure in a Qlik document/app changes that NPrinting is dependent on.
  • Whenever a new object/variable/dimension/measure etc. is created in a Qlik document/app that needs to be brought into NPrinting for it to use.
  • Whenever a new value in a dimension in a Qlik document/app becomes available that I would like to see in a suggestions list when creating filters/conditions.
  • If NPrinting connection is of local type and a QlikView document was reloaded with new data.

Otherwise, if no non-data-related (object/variable/dimension/measure etc.) changes to Qlik document/app were made, for a Server type connection, and if a Qlik document/app simply reloaded with new data on a server, there's no need to run metadata reload tasks.

I had a hunch that that was the case, but never had a confirmation. Thanks again for explaining and confirming!

View solution in original post

4 Replies
Lech_Miszkiewicz
Partner Ambassador/MVP
Partner Ambassador/MVP

.....and you have forgotten to mention the most important thing - type of connection to your qvw in NPrinting connections

  • If it is LOCAL - then you need to schedule metadata reload as NPrinting must close and re-open a qvw in order to obtain the latest version of it. 
  • If it is QVP/Server or Claster or Qlik Sense - you dont need to do it.

In reality metadata must be only reloaded if you changed something in the app objects and if you are using LOCAL qlikview connection with NPrinting so it gets a chance to close and open the most recent document.

Lech_Miszkiewicz_0-1661900240484.png

 

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.
mbespartochnyy
Creator III
Creator III
Author

Interesting! I didn't realize that connection type played a role. Thanks for sharing the details on that!

In my case, I always use Server as the type of connection. To confirm I understood you correctly, when NPrinting publish task is run that is using an NPrinting report which connects to a QlikView app on a Server, NPrinting:

  1. Opens the report on the server.
  2. Pulls the data needed for the objects used in NPrinting report.
  3. Applies necessary filters.
  4. Distributes report.

So long as the objects and variables that are used in NPrinting report exist in the QlikView document and the values for the filters are also available in the QlikView document, there's no need to have a metadata reload task running before publish task is run. Is that right?

Lech_Miszkiewicz
Partner Ambassador/MVP
Partner Ambassador/MVP

Correct. 
i will also add that for filter values you dont need to reload metadata neither-you can just key them in. Nprinting will just not suggest values when you start typing but as long as field exists in model filters will be still applied. 

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.
mbespartochnyy
Creator III
Creator III
Author

Thank you so much, sir! This helped me to better understand what those tasks are meant to do! I appreciate your time and quick replies!

It seems like it's really simple then. Metadata task needs to be run:

  • On initial connection to a Qlik document/app.
  • Whenever existing object/variable/dimension/measure in a Qlik document/app changes that NPrinting is dependent on.
  • Whenever a new object/variable/dimension/measure etc. is created in a Qlik document/app that needs to be brought into NPrinting for it to use.
  • Whenever a new value in a dimension in a Qlik document/app becomes available that I would like to see in a suggestions list when creating filters/conditions.
  • If NPrinting connection is of local type and a QlikView document was reloaded with new data.

Otherwise, if no non-data-related (object/variable/dimension/measure etc.) changes to Qlik document/app were made, for a Server type connection, and if a Qlik document/app simply reloaded with new data on a server, there's no need to run metadata reload tasks.

I had a hunch that that was the case, but never had a confirmation. Thanks again for explaining and confirming!