8 Replies Latest reply: Jan 6, 2017 4:29 AM by Olivier d'Assier RSS

    Filtering by a calculated measure involving multiple fields

    Stefano Gurciullo

      Hi,

       

      I am trying to use a calculated measure as a way to filter my data, but it's looking more difficult than expected. Let me explain through an example.

       

      I have data of the following type, with two dimensions - one is a unique ID, the a category - and four measures.

       

       

      My first step is to rank each element by its score, where the ranking is evaluated within the same category.  I therefore create a new measure (found thanks to the help of another community member, see this question):

       

      =aggr(rank(sum(Score1)), Category, UniqueID)

       

      I do this for all three scores, resulting in three new calculated measures. My final calculated measure is the average of the three rankings. Below the example, the calculated measure of interest is the one in bold. Note that in my real world calculation I directly evaluate 'New Measure', without creating the intermediate columns 'RankingScore'.

       

       

      Note that this measure is tricky, as it changes according to previous selections. Say, for instance, that I select only entries with 'Amount' > 1000. The relative rankings will change and therefore also 'New Measure':

       

       

      In my actual App I need to filter my entries by 'New Measure', after I've done some previous selections on fields like 'Amount'. If it simply were a field, I would normally have created a filter pane, our used the qsVariable extension to have a slide range, to select only rows with 'New Measure' above a set threshold. Unfortunately it seems I cannot do that with my calculated measure.

       

      How would you approach the problem? I was wondering, for example, if it were possible to 'convert' my new measure to an actual field, after all previous selections have done, but perhaps this is nonsense.

       

      Thank you in advance, and apologies for the long post!