Best Of
Re: Summary number for non-distinct rows
Don't JOIN Budget to Actuals. APPEND Budget to Actuals.
By Appending you'll avoid duplication and can avoid 'crazy math'.
Re: Is it possible to switch a data set to a different dataflow?
If the resulting dataset isn't massive, you could just pass the completed new SQL flow as an input set in the current ETL and keep the same output step that's powering your cards.

Re: How can I set default page filters for each of my dashboards?
Page filters is not the same as securing sensitive data.
Have a look at PDP policies, https://knowledge.domo.com/Connect/Personalized_Data_Permissions_(PDP) , for properly securing data.
Any other method is literally a case of WHEN someone accidentally gets shared the wrong content, because that's all that's stopping people from seeing everything.
Re: Trying to Split a Text Field with Time data (HH:MM:SS) into usable data
contact your CSM / Domo Account Representative or support@domo.com and ask them to push the Magic 2.0 beta. it's free and available if you ask for it.
Re: Can we change Legend name in cards for YOY views and normal views ?
Because of leap years and not every year being 365 days I'd recommend using a 1 year or 2 year interval instead.
case when date >=currentdate() - interval '1' year then 'this year' when date >= currentdate()- interval '2' year then 'two years ago' ... end
Re: How to get aggregated data without losing rows
@user094816 you can do this very easily in the ETL. See example in the image below.
Start with your dataset and then add a Group by tile and do a count of your column you want counted.
Add a join tile and connect it to your original dataset and your group by tile. Join on the appropriate key.
This will keep all your rows and show the total from the group by tile as well.
Re: Show x-series minutes with no data.
What you'd need to do is have a dimension table of all times within a given day on a minute by minute basis. You can then utilize a DataSet View (instantly updates when underlying data updates. Might still be in beta. Talk with your CSM) to left join your data to this time dimension table. Then you can graph by the time for the last 60 minutes which would have nulls for the times where you don't have any data and force Domo to display those times.
Re: Python
Domo spins up a local environment / container for you to execute python code in. The only thing that Domo really controls is the read_dataframe and write_dataframe.
If you take out the Domo aspect you can think of read_dataframe and write_dataframe similar to read_csv/write_csv or read_sql/write_sql. The only difference is the container will export the data from the Domo dataflow into a pandas dataframe instead of reading the dataframe from a CSV file or SQL query result.
Regarding your error it's explicitly complaining about how you're attempting to write a dataframe but aren't passing in a dataframe object. You're passing in a pandas Index object instead (which you got from the .index
property on your original dataframe). You need to convert your Index to a dataframe first. You can do this with the .to_frame()
method on your index:
write_dataframe(index_o.to_frame())
Re: Need to chart 2 timestamps for a status time and graph the whole day
Hi @jeremymcd
You can utilize some beast modes on the chart to calculate the number of seconds between the timestamps. I typically use the UNIX_TIMESTAMP and basic math to calculate the difference.
UNIX_TIMESTAMP(`status_start_at 1`) - UNIX_TIMESTAMP(`status_end_at 1`)
You can then group by the `user_name 1` field and the `status_label 1` field and then SUM this beast mode to get the total seconds for each. If you want to break it down by each day then you'd want to group based on the `status_start_at 1` field and use the Domo Date selection tool (upper right of your chart) to chart by day / week / month etc.
Alternatively yes, you could utilize an ETL to calculate this ahead of time if you prefer to go that route as well.
Re: Adobe API Connection
@Kumar619 , just to help out support. what do you mean by "the dimension name is not right."
when you submit your ticket to support, maybe include a screenshot of what you're expecting to see from Adobe.