Best Of
Re: Avoid BeasMode Duplication in Bulk Switching cards
If your new dataset doesn't have any beast modes built off it, then there won't be any duplication because nothing is there to duplicate. If you do have a beast mode with the same name on both datasets, it will rename one by adding something like "from dataset...." to the end of the beast mode name. It will also alert you when you go into analyzer and tell you there are beast modes to rename.
I would encourage you to use the beast mode manager, which is in the data center in your instance and make use of some of the tools available in there. This can help with a lot of the cleanup. Here's a link to the KB article about it.
Best Practice: Filtering Favorites page (Participant Users)
In the January 2019 feature release notes Favorites page filtering was added. This was not available for Participant users. They could open the page filter pane, but could not add filters. Since coming back from Domopalooza I have been showing some of my users new features including the new "Interaction Filters" and Filter cards.
I was so proud today, a user made a connection with the new features and asked me, "couldn't you add a filter card for my district? I could then add that to my favorites, and then use the interaction filters to then filter my Favorites page?" WOW! Awesome! Below is a video I put together to make this available to Participant users in my company's instance of Domo.
Re: Timestamp Convention in JSON File from Command Line DataFlow Request
Hi @walker_page
These are unix timestamps. Typically they are jut a simple numerical representation of the seconds since Jan 1st, 1970 however in this case these are unix timestamps in milliseconds instead of seconds (just divid the number by 1000 to get the number of seconds). Language have tools to convert these easily just depends on the flavor of language you're using. There's also online tools to help you convert these to standard format like https://www.unixtimestamp.com
Re: Option to Remove the 10,000 Duplicate Error for ETL
The super secret workaround we all use...
Right outer join instead of left.
This keeps people who don't know what they are doing from breaking stuff, but enables the rest of us to go on blissfully joining.
It'll seem awkward at first, but in a bit, you won't even have to think about it.
You want to set it up to pull all records from the table on the right, and only those which match from the left. Simple reverse of what you're used to.
Option to Remove the 10,000 Duplicate Error for ETL
Because of how fast/easy ETL flows are, I prefer to use them for most flows. My problem is that sometimes I hit the following error, "Error joining data. The left input cannot include over 10,000 duplicates. Please switch your inputs, group your data, or remove duplicates before joining". The Dojo suggests that this error is only shown to stop users from accidentely making cartesian joins, but I know that's not what I'm doing. For example, if I want to join an item table onto a transaction table, then I have to do it in SQL because I'll get the error. This leads me to having multiple flows for the same end result.
I suggest you give admins the option to disable the error.
Re: Entering or Updating data into DOMO visuals Directly
The Domo Webform is a very quick way to enter in some data and test with it. You can find it when you go to the data center and click on cloud app and then enter in webform
Re: is it possible to add a constant in front of values in a column by using a beastmode calc?
Hi @user048760
What you're looking for is the CONCAT function. It allows you to add multiple columns together with constants to create a single value.
If you're looking for just the URL (which you won't be able to click on but would only be displayed)
CONCAT('https://xxxxxxxxxx.sugarondemand.com/#Calls/', `ID`)
Alternatively you can also utilize some HTML code to convert your URL to a clickable URL.
CONCAT('<A HREF="https://xxxxxxxxxx.sugarondemand.com/#Calls/', `ID`, '" target="_blank">', 'Clickable Text Here Or Use a Column Instead', '</A>')
The `target="_blank" ` tells the HTML to open your link in a new window. If you want it to open in the same window then just exclude that section.
The HTML link will only work in the table type card and doesn't work in other cards at this time.
Re: Error with size field on SQL
Hi @user025461
This is because MySQL 5.6 (version Domo is built off of) doesn't support column names longer than 64 characters. You have a few options to work around this issue.
1) Use a Dataset view (or a magic ETL) to rename your column to something less than 64 characters and then use that dataset inside your MySQL dataflow
2) (Better Option) Convert your dataflow to a MySQL Magic ETL 2.0 dataflow which will be much more performant and support the longer column names.
Re: CASE WHEN X IS NULL THEN Previous Value
@nicangelica this one is a brain teaser.
assume we are trying to capture the last time 'cost changed'
1) window function calculate the previous cost (lag, 1)
2) create a binary (isCostChanged) using a CASE statement.
3) take the cumulative sum of isCostChange using window function (sum). at this point you should basically have a counter. in the initial example, rows 1-4 would be group 1, rows 5 would be group 2, row 6-8 would be group 3, rows 9 would be group 4.
4) take the cumulative sum of cost partitioned by group. -- this will give you cost from the first row of each group.
you can do this in SQL or in Magic ETL.
Re: How to create a card with data from the calendar month before last
You've got two options.
1) You could use a beast mode to determine if a date is from 2 months ago
CASE WHEN LAST_DAY(CURDATE() - INTERVAL '2' MONTH) = LAST_DAY(`Date Field`) THEN 1 ELSE 0 END
and then just filter on that value being 1.
This method you're always stuck looking at 2 months ago according to the current month. The next option is better in that it will allow you to look at 2 months ago based on any date you have selected in your chart.
2) The more robust option would be to create a custom date dimension table where you have customized offsets (With a report date and a comparison date). You'd then use a Fusion / View to join that dataset to your main dataset based on your date field and the comparison date field. You then can filter for your offset type of 2 months ago. This has been outlined several times here on the dojo. See https://dojo.domo.com/t5/Card-Building/show-percent-on-period-over-period-graph/m-p/50540/highlight/true#M7313.
I highly recommend method 2 as it gives you much more flexibility when processing and displaying your data.
Also @jaeW_at_Onyx has a nice video he put out which outlines this process as well: