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.
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

It looks like the suggested solution will solve my problem. Thank you for the suggestion.
0 
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.
0
Categories
 10.6K All Categories
 APAC User Group
 12 Welcome
 36 Domo News
 9.6K Using Domo
 1.9K Dataflows
 2.4K Card Building
 2.2K Ideas Exchange
 1.2K Connectors
 337 Workbench
 250 Domo Best Practices
 11 Domo Certification
 460 Domo Developer
 47 Domo Everywhere
 100 Apps
 703 New to Domo
 83 Dojo
 Domopalooza
 1.1K 日本支部
 4 道場日本支部へようこそ
 22 お知らせ
 62 Kowaza
 295 仲間に相談
 649 ひらめき共有