Skip to main content

Tableau newbie here, using Tableau Desktop 2019.4.2.  Packaged workbook attached below.

 

I have a data source built on a custom mySQL query. To that data source, I have added a calculated field that checks the last date an employee was visited on site for supervision, and sets the "Supervision Status."  The calculated field is formula is:

IF  max([Visit Start]) >= TODAY() THEN "1-Scheduled"

ELSEIF max([Visit Start]) >= DATEADD('day', -90, TODAY()) THEN "2-Current"

ELSE "3-Overdue"

END

 

The results display as expected in a table. I am posting on Feb 5, and you can see that the aides with visits in the future as marked "1-Scheduled" while those with visits in the recent past are "2-Current," while the top row is "3-Overdue" because the last supervision is more than 90 days in the past.

Problem with Calculated field in filter

The field also displays the expected results when used as a filter on this initial worksheet.

pastedImage_3.png

 

However, even though I have selected to "Apply to Worksheets .../ All using this data source," when I use this filter on other worksheets, I have only 1 option in the filter "1-Scheduled." 

pastedImage_4.png

 

pastedImage_5.png

 

The options for "2-Current" and "3-Overdue" have disappeared. The result is that the totals in all three status are the same - they represent the total of all employees at that office, not those at that office and in that category.

 

pastedImage_8.png

The goal is to have that filter appear on each worksheet with all three options, and for the CNTD(Aide ID) returns a total for each status at each office. Currently the total is all aides at that office in all categories.

 

Many thanks in advance for any help.

답변 2개
  1. 2020년 2월 6일 오전 3:49

    Hi Jim,

    create a calculated field last visit as a fixed LOD.

    { FIXED [Aide ID]: MAX([Visit Start])}

     

    Then change the supervision status field to include this new field

     

    IF  ([last visit]) >= TODAY() THEN "1-Scheduled"

    ELSEIF ([last visit]) >= DATEADD('day', -90, TODAY()) THEN "2-Current"

    ELSE "3-Overdue"

    END

     

    USe the updated supervision status field as the filter

0/9000