Unlock a world of possibilities! Login now and discover the exclusive benefits awaiting you.
Hi everyone, I'm a newbie at Qlik and I'm facing some difficulties into counting cumulative number of registers by month during a year.
I have a table like this below that was imported from EXCEL:
DATE_CREATION | UNIQUE_PROCESS_NUMBER |
06/06/2013 | 1136.302 |
09/06/2013 | 1064.972 |
19/07/2013 | 1125.427 |
20/07/2013 | 1105.555 |
27/07/2013 | 1168.205 |
10/09/2013 | 1078.854 |
23/09/2013 | 1049.557 |
15/10/2013 | 1099.077 |
25/10/2013 | 1211.117 |
08/12/2013 | 1070.155 |
22/12/2013 | 1185.186 |
27/12/2013 | 1182.244 |
30/12/2013 | 1237.056 |
19/01/2014 | 1231.838 |
27/03/2014 | 1155.935 |
30/03/2014 | 1019.095 |
I need just to calculate the number of process cumulative through the year for each.
Something like this:
Month | Cumulative Counting |
jun/2013 | 2 |
jul/2013 | 5 |
aug/2013 | 5 |
sep/2013 | 7 |
oct/2013 | 9 |
nov/2013 | 9 |
dec/2013 | 13 |
jan/2014 | 1 |
feb/2014 | 1 |
mar/2014 | 3 |
apr/2014 | 3 |
may/2014 | 3 |
jun/2014 | 3 |
I used for the dimension the following expression:
=[DATE_CREATION.autoCalendar.YearMonth]
For the measure I used the following expression:
=count(IF(InYearToDate([DATE_CREATION],monthEnd([DATE_CREATION]),0), [UNIQUE_PROCESS_NUMBER]))
However, the result it's just the number of [UNIQUE_PROCESS_NUMBER] by month like below:
Month | Cumulative Counting |
jun/2013 | 2 |
jul/2013 | 3 |
aug/2013 | 0 |
sep/2013 | 2 |
oct/2013 | 2 |
nov/2013 | 0 |
dec/2013 | 4 |
jan/2014 | 1 |
feb/2014 | 0 |
mar/2014 | 2 |
apr/2014 | 0 |
may/2014 | 0 |
jun/2014 | 0 |
Hi everyone,
just to don't let this thread without answer, I found the solution using the code below as a master item and adding to the straight table:
Aggr(RangeSum(Above(Count({1}[UNIQUE_PROCESS_NUMBER]), 0, RowNo())), ([DATE_CREATION.autoCalendar.Year], NUMERIC, ASCENDING),([DATE_CREATION.autoCalendar.Month], NUMERIC, ASCENDING))
If you're willing to do some script editing, this is a great solution: The As-Of Table
You can also try this
RangeSum(Above(
Count(If(InYearToDate([DATE_CREATION], MonthEnd([DATE_CREATION]), 0), [UNIQUE_PROCESS_NUMBER]))
, 0, RowNo()))
Thanks williamfuu but I'm trying to do this as an expression on a straight table at the graphics panel.
Thanks stalwar1, but seems that your proposal could implies into a infinite sum while the row number grows, other issue it's when the year change in which the counting need to be reset. I tried to solve this replacing RowNo() by Month(Min([DATE_CREATION])), however when the table were not sorted by months, the calculating returned stranger values.
Have you created a field in the script for Month and Year?
When I loaded the data from EXCEL the Qlik created the [autoCalendar] fields, including month,year among others.
Hi everyone,
just to don't let this thread without answer, I found the solution using the code below as a master item and adding to the straight table:
Aggr(RangeSum(Above(Count({1}[UNIQUE_PROCESS_NUMBER]), 0, RowNo())), ([DATE_CREATION.autoCalendar.Year], NUMERIC, ASCENDING),([DATE_CREATION.autoCalendar.Month], NUMERIC, ASCENDING))
Hi,
I just found your question and answer, thank you for providing them! Works great, allthough I don't know why. Couldn't build it by myself (a real newbie).