Best Of
Re: SQL variables with spaces in them?
For MySQL use the backtick character ` (not apostrophe- that creates a string) surrounding your column names.
ie
SELECT
`trade show`
,`contact person`
FROM
my_data_flow
That should also turn the name of your column light blue so you can tell that it worked.
Re: How to solve this problem in Magic ETL - Link items to Header rows
Hi Skhatri, that certainly is a limited ad platform dataset. You can join header data to the daily ad rows even though they're only associated by row placement, but it's heavy on the assumption that these sort of daily rows repeat in this same fashion throughout the input.
Here is my start dataset and output dataset:
Here are the transform steps:
1 - set a constant of 1 (this is used in both the Row Number function and the join)
2 - use Rank & Window tile to get RowNum based on the constant 1.
3 - split the headers and daily rows into two opposing filters. Based on your sample I looked for the "-" character in the Campaign column.
4 - in the top header path, do a LEAD function on RowNum. Now you have the header's original RowNum as well as the RowNum associated with the next header.
5 - the HeaderLead of the last header will be null, so set it to something wildly high for your purpose (ex. 1,000,000). That way you have something to filter between later.
6 - join header and daily rows back together on the constant 1. This is a lazy/greedy join that puts all daily rows on all headers.
7 - in the last filter, include rows where the daily RowNum is greater than the Header Start Row number AND daily RowNum is less than HeaderLead value. That's saying, only keep daily rows that are between their header and the next header.
8 - any column cleanup, rearrange, you want in the last select tile. Might need to change your date from a string into a date too depending on how that came in from your input.
Couple key screenshots along with the whole transform layout -
Here's step 5, shows how you get a range on the header that can be used to filter down the day rows:
Step 6, showing the daily RowNum in between the header start (the header's original RowNum) and header lead values. You can see for the last ad/campaign header I set it's lead value to 1,000,000 to allow the filter to work.
Re: Formatting a single number card
@damen Under General chart properties, set Divide Value By to 'None'.
Re: Weeks one week different
Hi @AdamC do you know if you have a fiscal calendar enabled on your instance? If you don't, then Domo's native week groupings consider Week 1 as January 1 through the end of that calendar week. Since January 1, 2022 was a Saturday, Week 1 2022 is comprised of just one day by this logic, which may differ than your company's fiscal weeks. Domo's Fiscal Calendars give you the ability to customize how to group fiscal weeks, periods, quarters, and years.
https://domohelp.domo.com/hc/en-us/articles/360042924254-Using-a-Fiscal-Calendar
Re: Period Over Period Multi-Value cards zeroing out when user changes the date
@Joe_M I have experienced this as well so have decided to not use the native period over period controls. (Although they are very nice)
@GrantSmith has posted a solution for this that allows for much greater control and flexibility. https://dojo.domo.com/main/discussion/53481/a-more-flexible-way-to-do-period-over-period-comparisons#latest
The only downside is your dataset can become very large.
Good luck.
Re: Period Over Period Multi-Value cards zeroing out when user changes the date
When the page level filter is applied it is ignoring all of the old data and only filtering for those exact dates. The prior year or month data is filtered out which is why you're getting nothing for those card. This is why I will create my own date dimension table to better handle period over period type comparisons as @Jones01 mentioned.
Re: Syntax for null
It sounds like your data might actually not be null but an empty string. Try something like this to handle empty strings and strings with just spaces:
WHEN COALESCE(TRIM(`Building Status`), '') = '' THEN 'XYX'
coalesce returns the first non-null value in the parameters supplied. This forces null values to be an empty string.
TRIM strips all whitespace (spaces, newlines) from the start and end of a string. This simplifies the check for string values which are just 1 or more spaces.
Re: Data Flow Help
Every analysts favorite game... Spot the disparity!
Do you have any duplicate, or blank loan_ids?
Did you try Full Outer Join?
Have you confirmed that your input datasets are exactly identical as the inputs for your excel file?
Does your excel file possibly have manually entered data?
Lastly, identify exactly which loan_ids are in the output in Domo, compare that to your Excel sheet, then if your Excel sheet has loan_ids that exist but are not in the Domo output... query your Domo source tables for those loan_ids.
Re: How do I change the field type for a column on an existing table?
It turns out that I did not need to manually alter the table that I was importing into. I changed the SQL in my import for the table to pull from the new data source and tried putting the new UUID values directly into the existing integer field. The Domo importer was smart enough to detect that non-integer values were being added to the integer field. It automatically changed the data definition for the identifier column from an integer to a string to accommodate the UUID values I started passing in.
hanmari
Re: Gauge Series
I think what you are asking must be possible using a DDX brick at the very least.
There are a ton of radial gauge options, can you be a bit more specific about what you are trying to accomplish? Possibly sketch it out?
Are you looking for something like this?







