Forum Discussion

Anonymous's avatar
Anonymous
Not applicable
2 years ago

Counting unique values - formula adjustment

I have some tables set up like this: 

 

 

I need to see whether meter reads are being submitted on time. Linking _site to _meter to _reading was too much for my tiny brain to comprehend so I merged the queries via site id. 

 

This formula that I first thought was genius is now fast becoming the bane of my life:

b2c_site_active = CALCULATE(DISTINCTCOUNT('psa FIT_B2C_meter'[SiteID]),
('psa FIT_B2C_meter'[site.ContractTerminationDate] > now() || 'psa FIT_B2C_meter'[site.ContractTerminationDate] = BLANK()) &&
('psa FIT_B2C_meter'[site.ClosedDate] > now() ||'psa FIT_B2C_meter'[site.ClosedDate] = BLANK()),'psa FIT_B2C_meter'[b2c_meter_active] > 0)

 

The last filter about b2c meter >0 is a recent addition to try to solve the issue. 

 

It is doing what it says on the tin but it is placing a '1' in each occurence of the site (sites indeed have multiple active meters):

 

My end goal is to see what percentage of customers submit 1,2,3 or 4 times a year but the first step is getting some baseline numbers about number of active/inactive sites and meters. 

 

Thanks in advance.

1 Reply

  • Does this work:

     

    b2c_site_active = 
    CALCULATE(
        DISTINCTCOUNT('psa FIT_B2C_meter'[SiteID]),
        ('psa FIT_B2C_meter'[site.ContractTerminationDate] > NOW() || ISBLANK('psa FIT_B2C_meter'[site.ContractTerminationDate])) &&
        ('psa FIT_B2C_meter'[site.ClosedDate] > NOW() || ISBLANK('psa FIT_B2C_meter'[site.ClosedDate])),
        'psa FIT_B2C_meter'[b2c_meter_active] > 0
    )

     

    Best regards,

    Johannes