4 Replies Latest reply: Jan 19, 2018 11:56 AM by Andrew Tolbert RSS

    Can Qlik NPrinting be scalable across Qlik Sense Apps?

    Andrew Tolbert

      I've been building NPrinting reports for Qlik Sense Applications and would like to export them and re-use not only the template, but the formulas, levels, images, tables...etc without re-importing or-recreating them.


      In the qlik sense environment, I have 20 Apps in 20 Streams that contain the same data model, object IDs. It's a master application duplicated across streams. This is because the dataset is massive and a unified application with section access would likely not perform well in development.


      I'd like to similarly build one NPrinting report and export-import across 20 apps and connections, but this doesnt appear possible without much heavy lifting.


      Does anyone have any experience in making NPrinting Reports actually scalable?

        • Re: Can Qlik NPrinting be scalable across Qlik Sense Apps?
          Darrell Tobin

          Hi Andrew,

          Yes it can but takes some serious workarounds.

          I made 37 reports using 37 apps duplicated from two template sense apps.

          Key lessons learned:

          Objects in sense apps keep their object IDs so can be reused in nprinting

          Also add unique tags to all your measures in your template sense app eg //table01 this stops nprinting trying to rename measures when you add objects

          Now create a template report in nprinting excel

          You can now use this reports measures as a template for all reports as long as is same layout and fields etc

          Can send more detail tomorrow when online if you need more help.

            • Re: Can Qlik NPrinting be scalable across Qlik Sense Apps?
              Andrew Tolbert

              Thanks very much, Daniel


              Some more detail would be great.


              It seems like we'd still have to manually pull all the objects in the report in tables, images, levels...etc for when we scale. That's all well and good as the object ID's are preserved.


              What's not ideal is that the formulas or variables made in the nprinting App can't duplicate across connections, It would be great if there was a workaround or if this were possible.

            • Re: Can Qlik NPrinting be scalable across Qlik Sense Apps?
              Darrell Tobin

              Hi Andrew.


              Appologies was doing reply on phone before.


              I will tell you how I made 37 reports form several apps.


              I had to create 37 survey reports in two styles:

              - By Month last 6 months by hospital (6 month)

              - Last month by ward (Ward)



              1. I created one master Qliksense template to pull the data and set out the tables and charts.  If a field name or a measure is duplicated in the report then I give it an ID code behind a double slash such as '//Table1Q01'

                  i- This makes all fields in the app unique (Important when you get to nprinting)!

              2. I then duplicated this app and made a ward and 6 month template of the reports.

              3. Then I use these to make ALL 37 reports by duplicating and changing the data range to pull in in the data loader screen

                  i - now all of the apps have the same object ids and the same field names (this is important for when we use nprinting)!



              1. I then create the Nprinting app, connection and report template (use NPrinting excel) for the 1st report

              2. In the template editor I add the objects, then pull the objects across adding the formatted etc so as to make the report usable.

              3. Charts are added as images (is easier) and I pull the field out separately by column.

              See example below:


              Ward NameTotal Responses12
              <=WardName //STW05><Sum({    $_report_chart_sequence_number = {'5'}_  }[Response Count])><Sum({    $_report_chart_sequence_number = {'5'}_    *    _[Option Number] = {'1'}_  }[Response Count])><Sum({    $_report_chart_sequence_number = {'5'}_    *    _[Option Number] = {'1'}_  }[Response Count])/Sum({    $_report_chart_sequence_number = {'5'}_  }[Response Count])><Sum({    $_report_chart_sequence_number = {'5'}_    *    _[Option Number] = {'2'}_  }[Response Count])><Sum({    $_report_chart_sequence_number = {'5'}_    *    _[Option Number] = {'2'}_  }[Response Count])/Sum({    $_report_chart_sequence_number = {'5'}_  }[Response Count])>


              4. Once this template is working, I then take a copy of the tabs and paste into normal excel app and save this in a normal excel file called 'Template1'.



              So because all of the measures and header names are unique and all of the object ids in the sense apps are the same, we can now reuse the excel template you created for the first report.

              1. I create the connection and blank report template for the next report.  Then instead of having to drag across the fields I simply:

                  1a. Copy and paste the tabs from my Template1 into the Nprinting report.

                  1b. Add the objects in the left object window required.


              Rinse and repeat this for the last 18 report.


              Hope this is helpful

              Please mark if this was useful.