Best Of
Re: Export data from DOMO to Google Sheets on Schedule
You can reach out to your CSM to enable the Google Sheets Writeback connector. There is a cost associated. If you are on the consumption model of Domo then it is free to use but you'll still need to reach out to your CSM.
Re: Converting Decimal Format to Days, Hour, minute format
Hi @austinisenhart,
You can convert 3.36 into separate columns for Days, Hours, and Minutes (e.g., "3 days, 8 hours, 38 minutes"). However, representing the three numbers (3, 8, 38) in a single column without using a string doesn't make any sense. Consider averaging the DATEDIFF as the initial value (3.36) and then presenting the results in a table or chart, including the formatted breakdown ("3 days, 8 hours, 38 minutes") as a Tooltip for clarity.
Here are the Beast Modes I've created:
DATE_DIFF:
ROUND(((UNIX_TIMESTAMP(DATE_2) - UNIX_TIMESTAMP(DATE_1)) / 60 / 60 / 24) - 0.5, 2)
Days:
FLOOR(DATE_DIFF)
Hours:
FLOOR(MOD(DATE_DIFF * 24, 24))
Minutes:
FLOOR(MOD(DATE_DIFF * 1440, 60))
Now if you need to average for ID 'A', average the 191.78 and 223.43 first, and then extract Days, Hours, and Minutes.
DATE_DIFF_AVG:
AVG(DATE_DIFF) FIXED (BY ID)
You can present this info as a Tooltip for the graph:
TOOLTIP
CONCAT(FLOOR(DATE_DIFF), ' Days, ', FLOOR(MOD(DATE_DIFF * 24, 24)), ' Hours, ', FLOOR(MOD(DATE_DIFF * 1440, 60)), ' Minutes, ')
Re: How to import date/time values in workbench exactly as 8/26/2024 9:00:49 AM, without any transform?
When a date is imported into Domo it's assumed that it's UTC. If you want to treat it as a date then you'll need to import it as a date. If the date doesn't align with what you're expecting due to the time zones then you'll need to use a Timezone transform and import it with the timezone your source system is set with. This will allow it to be imported with the correct time in relation to UTC. Once you have the data and it's displayed on a card the Company Settings will take effect and translate your timestamp stored in UTC as whatever your timezone is set to.
Re: understanding null vs blank or empty string values
CASE WHEN COALESCE(TRIM(`field`), '') = '' THEN 'Blank' ELSE 'Not Blank' END
COALESCE will return the first non-null value it finds, used in this case it's saying if the field is null return an empty string. I've wrapped the field in a trim to remove any leading or trailing whitespaces in case someone has a value of all spaces to ignore. Then it is compared to an empty string after it's been converted.
A more verbose way would be:
CASE WHEN `field` IS NULL or TRIM(`field`) = '' THEN 'Blank' ELSE 'Not Blank' END
NULL is a very specific value. The only way to check for null is to use IS NULL or a COALESCE / IFNULL function to default it to a specific value and compare that value.
Most functions you use on NULL or comparison will result in a NULL value back because NULL represents the absence of data.
Re: YouTube Connectors Using YouTube Account Username and Password
@GrantSmith I've been trying to figure this out for at least two months and after rereading this post I looked into your solution of verifying that I was using the channel email address rather than the Gmail address of the content owner and that worked! It took me a while to find that email address, though.
YouTube Settings → In Account tab went to "Add or remove manager(s)" → View general account info → In Google Account went to "Personal Info" tab → And found the email address in the Contact info section
Re: YouTube Connectors Using YouTube Account Username and Password
Each individual channel will have their own "username" which you need to use to login to YouTube to authenticate and pull your data, not the admin username.





