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

Qlik NPrinting On-demand with on-demand/flex table Qlik Sense

Hi!

Is there somebody out here with experience developing a on-demand/flex table with the option to export the output with the on-demand NPrinting option in Qlik Sense?

As we know there are some differences between exporting tables to MS Excel between Qlikview and Qlik Sense. I know Qlik's answer is that we are talking to different products here... but this is hard to explain to a finance department and I must say... I agree with them.

So I'm trying to make things possible with the use of on-demand NPrinting.  I've build a flex/on-demand straight table. (https://community.qlik.com/t5/Qlik-Design-Blog/Customizable-Straight-Table/ba-p/1464825 ) This is working just fine in the front-end. Exporting the table with the on-demand option is working.... as long as you don't need or want the totals of your table in your exported excel file. But guess what... in this case I need the totals.

It's not possible to rebuild the table in the nprinting template since all columns are conditional.

I'm running out of options here. I know there are some 3th party extensions that cover this subject. But maybe i'm overlooking something here. 

Thank you in advance!

Kind regards, Tamarah

 

Labels (2)
1 Solution

Accepted Solutions
Lech_Miszkiewicz
Partner Ambassador/MVP
Partner Ambassador/MVP

Hi @Tamarah 

Well - you will not be able to use the same table for NPrinting and the same for Users in Qlik Sense when you work with Flex/DIY/AdHoc tables. As you rightly said the individual columns are not visible because the have conditional hide/show option turned on. 

The only solution I can offer is:

  1. Recreate your table in Qlik Sense
  2. Do not use "hide/show column if", instead use expression which will either calculate column or put nothing in it. 
  3. In NPrinting you will then have all columns visible
  4. In your template you will have to bring all columns in 
  5. You will be able using formulas to provide header labels only for columns which should be visible
  6. You will be able to create subtotals for all columns (they will have to be conditional in NPrinting - either excel If() or NPrinting formulas used to calculate them)
  7. Remember that all controls in Qlik Sense will need to be based on field selections to be used with OnDemand as variable inputs are not part of OnDemand selection state

That's it.

It takes little bit of planning and little bit of work, but certainly it is possible.

cheers

 

 

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

6 Replies
Frank_S
Support
Support

@Tamarah

If I understand your requirement, this article should solve it.

Kind regards...

Please remember hit the 'Like' button and for helpful answers and resolutions, click on the 'Accept As Solution' button. Cheers!
Tamarah
Contributor III
Contributor III
Author

Hi Frank,

In this case it doesn't because my table has conditionally shown columns... in flex tables all columns are.

 

https://community.qlik.com/t5/Qlik-NPrinting-Discussions/Nprinting-Tables-Objects-Does-Not-Showing-C...

Grtz, Tamarah

Lech_Miszkiewicz
Partner Ambassador/MVP
Partner Ambassador/MVP

Hi @Tamarah 

Well - you will not be able to use the same table for NPrinting and the same for Users in Qlik Sense when you work with Flex/DIY/AdHoc tables. As you rightly said the individual columns are not visible because the have conditional hide/show option turned on. 

The only solution I can offer is:

  1. Recreate your table in Qlik Sense
  2. Do not use "hide/show column if", instead use expression which will either calculate column or put nothing in it. 
  3. In NPrinting you will then have all columns visible
  4. In your template you will have to bring all columns in 
  5. You will be able using formulas to provide header labels only for columns which should be visible
  6. You will be able to create subtotals for all columns (they will have to be conditional in NPrinting - either excel If() or NPrinting formulas used to calculate them)
  7. Remember that all controls in Qlik Sense will need to be based on field selections to be used with OnDemand as variable inputs are not part of OnDemand selection state

That's it.

It takes little bit of planning and little bit of work, but certainly it is possible.

cheers

 

 

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.
Tamarah
Contributor III
Contributor III
Author

Thank you for turning my thoughts about this issue around... Good thing to know it can be done! The second step makes sense to me and I will take it from there. 

"It takes little bit of planning and little bit of work, but certainly it is possible." .. well,  it pays off doesn't it?! 😉

Thank you ad I will follow up on this post when it's done.

Lech_Miszkiewicz
Partner Ambassador/MVP
Partner Ambassador/MVP

I tend to test those solutions usually on very small sample apps with few measures and few dimensions.

There is one more problem i forgot to mention - dimensions. With this solution you actually need to add dimensions twice (at least that is how I would deal with it):

  • 1st time as actual dimensions - so the granularity of the table can be maintained
  • 2nd time as a measure
    • why? because this is where it can be dynamic. Depending on user selections you may have 1,2,3....X dimensions etc... and therefore position of your first measure will also need to be dynamic.
    • So from NPrinting perspective you bring in to NPrinting template only measure columns which can show either dimension value or calculate measure. 

All that obviously may greatly affect performance if you are dealing with large data volume so there are considerations which have to be taken into account.

cheers

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.
Lech_Miszkiewicz
Partner Ambassador/MVP
Partner Ambassador/MVP

Again one more comment. What I meant by my original point 2 is that you would have 2 tables

  1. with hide show columns which users will utilize in Qlik Sense
  2. second table which will react to the same dimension/measure selections but will behave differently 

So effectively you will have user friendly table, and another (cumbersome one, potentially hidden on another sheet or in container) for the purpose of nprinting OnDemand.

I hope it makes sense.

cheers

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.