Skip to main content
cancel
Showing results for 
Search instead for 
Did you mean: 
Not applicable

Chart Aggregation Functions

Hi

I am using the expression COUNT(DISTINCT Invoice_Number) within a chart with customer name and month as a dimension to count the number of orders for each customer placed each month over a year.

I would like an expression that shows me the highest number of monthly orders  - something like MAX(TOTAL<Month> COUNT(DISTINCT Invoice_Number) ), but this doesn't work as I don't think you can use aggregation functions as the argument within another aggregation.

Any ideas?

1 Solution

Accepted Solutions
swuehl
MVP
MVP

Sorry, in my example of a table with dimension customer, I forgot to add customer to the aggr dimensions, too.

= max(aggr( count(Distinct Invoice_number),Month,Customer))

If you want to get the max monthly orders in a table with Month and Customer as dimension (e.g. for comparison by row), you could use something like:

=aggr(Nodistinct max(Aggr(count(distinct Invoice_number),Month,Customer)),Customer)

Regards,

Stefan

View solution in original post

8 Replies
swuehl
MVP
MVP

You are right with the limitation of aggregation within aggregation -  but you could use advanced aggregation to overcome this (please have a look at the aggr function in the help file).

Without trying, I think the expression in a chart with dimension Customer could look like:

= max(aggr( count(Distinct Invoice_number),Month))

to return the max number of monthly orders per customer.

Regards,

Stefan

SunilChauhan
Champion
Champion

usemay be this one

aggr(MAX(TOTAL<Month> COUNT(DISTINCT Invoice_Number),Month )

Sunil Chauhan
Not applicable
Author

Ich werde ab 05.09.2011 nicht im Büro sein. Ich kehre zurück am

23.09.2011.

Ich werde Ihre Nachrichten nach meiner Rückkehr beantworten.

Diese E-Mail kann Betriebs- oder Geschäftsgeheimnisse oder sonstige vertrauliche Informationen enthalten. Sollten Sie diese E-Mail irrtümlich erhalten haben, ist Ihnen eine Verwertung des Inhalts, eine Vervielfältigung oder Weitergabe der E-Mail ausdrücklich untersagt.

Bitte benachrichtigen Sie uns und vernichten Sie die empfangene E-Mail. Vielen Dank!

Not applicable
Author

Ich werde ab 05.09.2011 nicht im Büro sein. Ich kehre zurück am

23.09.2011.

Ich werde Ihre Nachrichten nach meiner Rückkehr beantworten.

Diese E-Mail kann Betriebs- oder Geschäftsgeheimnisse oder sonstige vertrauliche Informationen enthalten. Sollten Sie diese E-Mail irrtümlich erhalten haben, ist Ihnen eine Verwertung des Inhalts, eine Vervielfältigung oder Weitergabe der E-Mail ausdrücklich untersagt.

Bitte benachrichtigen Sie uns und vernichten Sie die empfangene E-Mail. Vielen Dank!

swuehl
MVP
MVP

Sorry, in my example of a table with dimension customer, I forgot to add customer to the aggr dimensions, too.

= max(aggr( count(Distinct Invoice_number),Month,Customer))

If you want to get the max monthly orders in a table with Month and Customer as dimension (e.g. for comparison by row), you could use something like:

=aggr(Nodistinct max(Aggr(count(distinct Invoice_number),Month,Customer)),Customer)

Regards,

Stefan

Not applicable
Author

That does the trick.

Many thanks Stefan.

IPS

Not applicable
Author

Ich werde ab 05.09.2011 nicht im Büro sein. Ich kehre zurück am

23.09.2011.

Ich werde Ihre Nachrichten nach meiner Rückkehr beantworten.

Diese E-Mail kann Betriebs- oder Geschäftsgeheimnisse oder sonstige vertrauliche Informationen enthalten. Sollten Sie diese E-Mail irrtümlich erhalten haben, ist Ihnen eine Verwertung des Inhalts, eine Vervielfältigung oder Weitergabe der E-Mail ausdrücklich untersagt.

Bitte benachrichtigen Sie uns und vernichten Sie die empfangene E-Mail. Vielen Dank!

Not applicable
Author

Ich werde ab 05.09.2011 nicht im Büro sein. Ich kehre zurück am

23.09.2011.

Ich werde Ihre Nachrichten nach meiner Rückkehr beantworten.

Diese E-Mail kann Betriebs- oder Geschäftsgeheimnisse oder sonstige vertrauliche Informationen enthalten. Sollten Sie diese E-Mail irrtümlich erhalten haben, ist Ihnen eine Verwertung des Inhalts, eine Vervielfältigung oder Weitergabe der E-Mail ausdrücklich untersagt.

Bitte benachrichtigen Sie uns und vernichten Sie die empfangene E-Mail. Vielen Dank!