Sudden Beastmode error
Hi there!
I have a card, which uses a lot of beast mode calculations.
All of a sudden. I get this error:
"You have a divide by zero error in your Card´s Beast Mode / Link: Get help in Domo´s Knowledge Base"
So, I checked everything and I was told that I needed a case function to avoid 0 division, also checked DOJO topics, which stated the same.
My problem is that:
- I already use case functions to avoid problems like this one:
"(sum(case when `field1` is null then 0 else `field1` end)+
sum(case when `field2` is null then 0 else `field2` end))
/
(sum(case when `field3` is null then 0 else `field3` end)+
sum(case when `field4` is null then 0 else `field4` end))
-1"
- My card is YTD, in my understanding it is simply not understandable that the card worked yesterday, but not today, because new data is only added.
Does someone experienced a related problem?
Many thanks
Best Answer
-
Does your card have any granularity, like a table card with a dimension with lots of variety, where at least one of those combinations might have a divide by zero error? Like a new salesrep who doesn't have any sales yet and might not have the data used in the denominator.
I fixed a card like this for us yesterday with that same error, with logic somewhat like this :
CASE
WHEN
ifnull((sum(case when `field3` is null then 0 else `field3` end)+
sum(case when `field4` is null then 0 else `field4` end)),0) = 0THEN 0
ELSE
"(sum(case when `field1` is null then 0 else `field1` end)+
sum(case when `field2` is null then 0 else `field2` end))
/
(sum(case when `field3` is null then 0 else `field3` end)+
sum(case when `field4` is null then 0 else `field4` end))
-1"END
If the denominator is zero or null, then return zero instead of dividing by null or zero.
Beast modes with case statements having aggregations can be a tricky thing, so YMMV.
Aaron
MajorDomo @ Merit Medical
**Say "Thanks" by clicking the heart in the post that helped you.
**Please mark the post that solves your problem by clicking on "Accept as Solution"1
Answers
-
Does your card have any granularity, like a table card with a dimension with lots of variety, where at least one of those combinations might have a divide by zero error? Like a new salesrep who doesn't have any sales yet and might not have the data used in the denominator.
I fixed a card like this for us yesterday with that same error, with logic somewhat like this :
CASE
WHEN
ifnull((sum(case when `field3` is null then 0 else `field3` end)+
sum(case when `field4` is null then 0 else `field4` end)),0) = 0THEN 0
ELSE
"(sum(case when `field1` is null then 0 else `field1` end)+
sum(case when `field2` is null then 0 else `field2` end))
/
(sum(case when `field3` is null then 0 else `field3` end)+
sum(case when `field4` is null then 0 else `field4` end))
-1"END
If the denominator is zero or null, then return zero instead of dividing by null or zero.
Beast modes with case statements having aggregations can be a tricky thing, so YMMV.
Aaron
MajorDomo @ Merit Medical
**Say "Thanks" by clicking the heart in the post that helped you.
**Please mark the post that solves your problem by clicking on "Accept as Solution"1 -
Hi, thanks for you help!
You were right, one field was the trouble maker.
1
Categories
- 10.5K All Categories
- 4 Connect
- 914 Connectors
- 250 Workbench
- 458 Transform
- 1.7K Magic ETL
- 69 SQL DataFlows
- 476 Datasets
- 183 Visualize
- 249 Beast Mode
- 2.1K Charting
- 11 Variables
- 16 Automate
- 354 APIs & Domo Developer
- 88 Apps
- 3 Workflows
- 20 Predict
- 5 Jupyter Workspaces
- 15 R & Python Tiles
- 245 Distribute
- 62 Domo Everywhere
- 242 Scheduled Reports
- 20 Manage
- 41 Governance & Security
- 170 Product Ideas
- 1.2K Ideas Exchange
- 10 Community Forums
- 27 Getting Started
- 14 Community Member Introductions
- 55 Community News
- 4.5K Archive