Forum Discussion

CPaceFOTL's avatar
CPaceFOTL
Frequent Visitor
9 years ago
Solved

Count Records Based off of Date Calculation

I have written a measure to determine the next upcoming Friday's date based off of today's date.  I'm sure there is a better way, but basically I used a combination of CALCULATE, IF and WEEKDAY to determine how many days needed to be added to TODAY to get the upcoming Friday, if not Friday already.

 

Now I am wanting to use this calculation in another measure to determine how many items are due by the upcoming Friday; however, I get the error that a calculation can not be used as  a filter.  Is there a way around this?

 

My data has a "Due By" date, so I want to count the number of rows that are not in a CLOSED or REJECTED status (another column in the rows) that are "due by" the upcoming Firday.

 

The masure I was trying is below.

 

Due_By_FRI = CALCULATE(COUNT([defect_id],[defect_status]<>"Closed",[defect_status]<>"Rejected",[ECT]<=[FRI_DTE]

 

I get the below error

 

A function 'CALCULATE' has been used in a True/False expression that is used as a table filter expression. This is not allowed.

 

If I change [FRI_DAE] to TODAY(), then it will count the number today by TODAY or if I do TODAY()+/- n it will give me the number due by today +/- the number.  However, I want it to due this automatically.

 

Any suggestions would be greatly appreciated.

 

Thanks,

 

C Pace

  • You should use FILTER function as a filter argument in the CALCULATE. Something like below...

     

    Due_By_FRI = CALCULATE(COUNT([defect_id],[defect_status]<>"Closed",[defect_status]<>"Rejected",FILTER('defectstable,[ECT]<=[FRI_DTE]))

     

    Is [ECT] a measure or column?

     

2 Replies

  • You should use FILTER function as a filter argument in the CALCULATE. Something like below...

     

    Due_By_FRI = CALCULATE(COUNT([defect_id],[defect_status]<>"Closed",[defect_status]<>"Rejected",FILTER('defectstable,[ECT]<=[FRI_DTE]))

     

    Is [ECT] a measure or column?

     

    • CPaceFOTL's avatar
      CPaceFOTL
      Frequent Visitor

      Thank you very much Bhavesh!  This worked great and gave me the results just like I wanted.  To answer your question, ECT is a column in the table data.

       

      Thanks,

       

      Craig