Skip to main content
Announcements
Qlik Connect 2024! Seize endless possibilities! LEARN MORE
cancel
Showing results for 
Search instead for 
Did you mean: 
Anonymous
Not applicable

pivot table use different dimension for total

Hello,

I'm trying to implement a pivot table which has the same appearance as this table:

Two dimensions: ship week and Time2Fail

     

Time2Fail12345678
ship weekship countAccu ship count
14411 1
259 11 1
3211 1
4617 11 1
52191   
611301 2 11
332011

expression1: The ship count is how many units shipped in a ship week.

expression2: The Accu Ship count is the accumulate ship count along the the ship week.

e.g. accu ship count for ship week 1 is 4, for ship week 2 is 4+5=9 and for ship week 3 is 9+2= 11 and so on

expression3: The last row is the sub total of the column Time2Fail, but only count up to the ship week.

e.g. for the Time2Fail = 1 column, sub total = 1+1+1 = 3 (to ship week = 6)

for the Time2Fail = 2 column, sub total = 1+1+1 = 3 (to ship week = 5)

for the Time2Fail = 3 column, sub total = 1 +1=2 (to ship week = 4)

for the Time2Fail = 4 column, sub total = 0 (to ship week = 3)

for the Time2Fail = 5 column, sub total = 1 (to ship week = 2)

for the Time2Fail = 6 column, sub total = 1 (to ship week = 1)

based on the data:   

ship weekIDTime2Fail
110001
110012
11002
110036
219543
21958
219592
21967
219885
328451
32846
413233
41325
414274
41377
41388
413996
567781
56779
667701
68912
613454
64523
64524
69923
699247
69925
699264
69927
69928

8

Thanks,

Josh

12 Replies
Anonymous
Not applicable
Author

Now I know how to attach.

Here are the files.

sunny_talwar

Here is the script

Table:

LOAD *

from LifeData.qvd (qvd);

FinalTable:

LOAD *,

  AutoNumber([Ship Date]) as RowNo

Resident Table

Order By [Ship Date];

DROP Table Table;

Dimensions

Ship Date

=Aggr(Count(ID), [Ship Date])

=Aggr(RangeSum(Above(Count(ID), 0, RowNo())), RowNo)

Time2FWeek

Expression

=If(Dimensionality() = 0,

Sum(Aggr(If(Max(TOTAL [Ship Date]) - Time2FWeek + 1 >= [Ship Date], Count(ID)), [Ship Date], Time2FWeek)),

Count(ID))

Anonymous
Not applicable
Author

Sunny T,

Hooray!! you are really a genius.

I made a change to use Ship Week instead of Ship Date to fix the subtotal problem.

Now I want to create a chart based on this table.

The chart has ship week as dimension and the expression will be (Time2Week total) / (Accu. Ship Count)

For example,

When x=Time2FWeek=1, the total of Time2FWeek=1 is 6, and the Accu, Ship Count is 24847 (Ship Week = 52)

So, the y-axis value = 6/24847 = 0.024%

When x=Time2FWeek=2, the total of Time2FWeek=2 is 7, and the Accu, Ship Count is 22898 (Ship Week = 51)

So, the y-axis value = 7/22898 = 0.030%

...

When x=Time2FWeek=52, the total of Time2FWeek=52 is Null, and the Accu, Ship Count is 163 (Ship Week = 1)

So, the y-axis value = NA/22898 = Null

The is expression I try and it seems not correct.

Sum(Aggr(If(Max(TOTAL [Ship Week]) - Time2FWeek + 1 >= [Ship Week],Count({<Time2FWeek-={'NA'}>} ID)), [Ship Week], Time2FWeek))/ RangeSum(Above(Count(ID), 0,Time2FWeek))

The qvw is attached.

Josh