Beast mode  Age buckets / grouping
Hello everyone,
I am having trouble with a beast mode grouping outstanding records by age bucket. I am looking to calculate the number of days a record has open and then place the record within a range. Below you will find my existing beast mode which is an "Invalid formula". If someone could assist with the formula validation or suggest enhancements it would be greatly appreciated! I have reviewed many support articles related to my issue and I cannot seem to find a solution.
(CASE
WHEN DATEDIFF (CURRENT_DATE(),`Value1`) > 1095 THEN 'Greater than 3 years'
WHEN DATEDIFF (CURRENT_DATE(),`Value1`) > 730 AND <1094 THEN '23 years '
WHEN DATEDIFF (CURRENT_DATE(),`Value1`) >365 AND <729 THEN '12 years'
WHEN DATEDIFF (CURRENT_DATE(),`Value1`) >181 AND <365 THEN 6 months  1 year'
WHEN DATEDIFF (CURRENT_DATE(),`Value1`) > 0 AND <180 THEN '06 Months'
WHEN `Value1` IS NULL THEN 'Unassigned'
END)
Best Answers

The issue is your AND statement in each sequence. You would need to restate the DATEDIFF formula after the AND again.
You might consider rewriting it in reverse order and it would eliminate the need to have the AND statement because CASE statements exit after finding a match to the condition.
(CASE WHEN DATEDIFF (CURRENT_DATE(),`Value1`) <180 THEN '06 Months' WHEN DATEDIFF (CURRENT_DATE(),`Value1`) <365 THEN '6 months  1 year' WHEN DATEDIFF (CURRENT_DATE(),`Value1`) <729 THEN '12 years' WHEN DATEDIFF (CURRENT_DATE(),`Value1`) <1094 THEN '23 years ' WHEN DATEDIFF (CURRENT_DATE(),`Value1`) > 1095 THEN 'Greater than 3 years' ELSE 'Unassigned' END)
Hope this helps.
**Check out my Domo Tips & Tricks Videos
**Make sure to any users posts that helped you.
**Please mark as accepted the ones who solved your issue.0 
I am now having trouble sorting the series using the above beast mode. I wrote the beast mode below and added the field to the sort section. The data is not sorting properly, I am set to no aggregation and I have also tried ascending and descending options. I do not see anything in properties that would be preventing the sort.
Does anyone have any thoughts as to how I can sort this data series?
CASE
WHEN `Value1` = '06 Months' THEN 1
WHEN `Value1` = '6 months  1 year' THEN 2
WHEN `Value1` = '12 years' THEN 3
WHEN `Value1` = '23 years' THEN 4
WHEN `Value1` = 'Greater than 3 years' THEN 5
ELSE 10
END0
Answers

The issue is your AND statement in each sequence. You would need to restate the DATEDIFF formula after the AND again.
You might consider rewriting it in reverse order and it would eliminate the need to have the AND statement because CASE statements exit after finding a match to the condition.
(CASE WHEN DATEDIFF (CURRENT_DATE(),`Value1`) <180 THEN '06 Months' WHEN DATEDIFF (CURRENT_DATE(),`Value1`) <365 THEN '6 months  1 year' WHEN DATEDIFF (CURRENT_DATE(),`Value1`) <729 THEN '12 years' WHEN DATEDIFF (CURRENT_DATE(),`Value1`) <1094 THEN '23 years ' WHEN DATEDIFF (CURRENT_DATE(),`Value1`) > 1095 THEN 'Greater than 3 years' ELSE 'Unassigned' END)
Hope this helps.
**Check out my Domo Tips & Tricks Videos
**Make sure to any users posts that helped you.
**Please mark as accepted the ones who solved your issue.0 
It looks like the suggested solution will solve my problem. Thank you for the suggestion.
0 
I am now having trouble sorting the series using the above beast mode. I wrote the beast mode below and added the field to the sort section. The data is not sorting properly, I am set to no aggregation and I have also tried ascending and descending options. I do not see anything in properties that would be preventing the sort.
Does anyone have any thoughts as to how I can sort this data series?
CASE
WHEN `Value1` = '06 Months' THEN 1
WHEN `Value1` = '6 months  1 year' THEN 2
WHEN `Value1` = '12 years' THEN 3
WHEN `Value1` = '23 years' THEN 4
WHEN `Value1` = 'Greater than 3 years' THEN 5
ELSE 10
END0 
You need to use your DATEDIFF evaluation in your case statement and not value1 since that is just a date. It would look like this:
(CASE WHEN DATEDIFF (CURRENT_DATE(),`Value1`) <180 THEN 1 WHEN DATEDIFF (CURRENT_DATE(),`Value1`) <365 THEN 2 WHEN DATEDIFF (CURRENT_DATE(),`Value1`) <729 THEN 3 WHEN DATEDIFF (CURRENT_DATE(),`Value1`) <1094 THEN 4 WHEN DATEDIFF (CURRENT_DATE(),`Value1`) > 1095 THEN 5 ELSE 6 END)
Drag this beast mode function into your sort and then you should see your card display correctly.
**Check out my Domo Tips & Tricks Videos
**Make sure to any users posts that helped you.
**Please mark as accepted the ones who solved your issue.0
Categories
 10.5K All Categories
 8 Connect
 918 Connectors
 250 Workbench
 470 Transform
 1.7K Magic ETL
 69 SQL DataFlows
 477 Datasets
 193 Visualize
 252 Beast Mode
 2.1K Charting
 11 Variables
 17 Automate
 354 APIs & Domo Developer
 89 Apps
 3 Workflows
 20 Predict
 5 Jupyter Workspaces
 15 R & Python Tiles
 247 Distribute
 63 Domo Everywhere
 243 Scheduled Reports
 21 Manage
 42 Governance & Security
 174 Product Ideas
 1.2K Ideas Exchange
 12 Community Forums
 27 Getting Started
 14 Community Member Introductions
 55 Community News
 4.5K Archive