GrantSmith Coach

Comments

  • Hi @user057613 You can utilize a beast mode to calculate the % change. (SUM(`Current Value`) - SUM(`Prior Value`))/SUM(`Prior Value`) (Make sure to format this number as a percentage) If you want to combine that with the total amount you can utilize the CONCAT function and do some % formatting. CONCAT(SUM(`Current…
  • Hi @EM You can utilize DAYOFWEEK and some simple math to get the last day of the week. `Date` + INTERVAL (7 - DAYOFWEEK(`Date`)) DAY The DAYOFWEEK function returns a number between 1 (Sunday) and 7 (Saturday). Subtracting that from 7 gives us the number of days until the end of the week which we just add that number of…
  • Hi @tstimple There's two options you have. The first is to create 50 beast modes one for each state using a like statement which is not ideal and a nightmare to maintain. The better option is to preprocess your data and split out so you have one record for each state. You can utilize a split column tile to split each state…
  • Hi @user066906 , It's likely not your join. With the changes in Magic ETL 2.0 NULLs are handled differently than in ETL 1.0. With 2.0 they are now handled the same way as SQL, as a special value. ETL 1.0: NULL <> 'Delete' = TRUE ETL 2.0: NULL <> 'Delete' = FALSE This is because you must use an explicit NULL check instead…
  • Hi @HashBrowns Try this (I don't have your exact data set to test so may not exactly work): SUM(COUNT(DISTINCT `lte_donation_general.donation_id`)) over (partition by `lte_donation_general.collection_date`,`lte_tbl_calendar.location_name_tzw`) You're essentially trying to calculate the number of unique donations for each…
  • Hi @user056607 When subtracting two dates in MySQL it should return a single number representing the day difference. So you can try something like: `Cancellation Date` - `Publish Date` <= 90 Alternatively you can utilize UNIX_TIMESTAMP to calculate the number of seconds since 1970-01-01 and then calculate the second…
  • Hi @JPeG You could create a beast mode to extract only the date parts you're interested in. CONCAT(LEFT(MONTHNAME(`Date`), 3), ' ', DAY(`Date`)) Left is just making a 3-letter month abbreviation of the name since MONTHNAME returns the entire name. Because this is now a string it will sort alphabetically rather than by…
  • @nj-John-mirc Interestingly enough the formula STR_TO_DATE is using a different formatting character set than the Beast Mode does. Instead of %-b you want %e. For a reference on the formatting characters you can look at https://www.mysqltutorial.org/mysql-date_format/ STR_TO_DATE(`Date As String`, '%e %b')
  • Are you doing this in a beast mode or in a query on your database bringing the data in (if so which DB type)? Do your dates actually include / or is that just from the error output text? Utilizing STR_TO_DATE in a beast mode seems to work just fine for me.
  • @nj-John-mirc How does it not work for the double digits? What's the formula you're currently using? %-b should handle single and double digit day numbers.
  • Hi @Crisocir Domo does have an Activity Log you can try and reference. I utilize it for some governance cards I have to determine when a card was last viewed. I inner join (to get only card activity information) the Activity Log dataset to the Cards (Third Party Data Governance dataset - could use DomoStats datset variant…
  • Try using %-d instead of %d. %dDay of the month as a zero-padded decimal number.03%-dDay of the month as a decimal number. (Platform specific)3
  • Hi @nj-John-mirc Have you tried concatenating the appropriate year onto your string and then using STR_TO_DATE? STR_TO_DATE(CONCAT(`Date`, ' ', YEAR(CURRENT_DATE)), '%d %b %Y') How is the STR_TO_DATE function not working? Does using the format string '%d %b' work in STR_TO_DATE (without concatenating the year)?
  • Hi @MartinB @What you’re wanting is a windowing function with a partition because it sounds like you only want to calculate the information within each specific group. I'm not exactly clear on how you're wanting to process your data but it sounds like you're wanting to calculate the total quantity that item has of the…
  • Hi @user02700 You can add the number of hours to your date using an interval. This will make it a DateTime instead of a Date. `Date` + INTERVAL `Hour` HOUR
  • Hi @Steve-DOMOnoob Just remove the <br> HTML code in the CONCAT function
  • Hi @nj-John-mirc Depending on how many dashes you have and if that number will be consistent you can utilize the Split Column tile and split on a custom character '-' to get the different parts of your value.
  • In that case no, the quick filter is only available on the card detail level and not the page level.
  • Hi @user049145 , There's actually a beta out right now called Page Filters. You can configure filters for the entire page and have predefined filters saved as well. Talk to your CSM to get it turned on. It's not exactly filter cards but will allow you to do filters across the entire page.
  • A single beast mode won't work for how you're wanting to process your data. You're wanting to include a single record into multiple buckets which isn't possible as a single value is returned for each row from a beast mode. You could try and create separate beast modes for each bucket.
  • Hi @user056243 This is because the order in which your conditions are being evaluated. If you had 400,000 it compares to the first expression (>250) which is true so it returns '250k'. When doing a beast mode like this you need to start largest and go in descending order. CASE WHEN `employee` >= 350000then '350k'WHEN…
  • Hi @user039888 The Python SDK doesn't export the Card Management endpoint so you won't be able to delete the cards using that SDK. You could possibly utilize the Java CLI (https://knowledge.domo.com/Administer/Other_Administrative_Tools/Command_Line_Interface_(CLI)_Tool) to delete the cards using the 'delete-card' command.…
  • Hi @Sweep_The_Leg Have you tried looking at Graph Settings -> Show Scales -> On Bottom?
  • @MarkSnodgrass Alternatively you can utilize DATEDIFF but by default it includes the current date as a whole day so depending on how your business rules are you may want to -1 day from your date difference to not calculate today. Week: DATEDIFF(`EndDate`, `StartDate`) / 7 Days: MOD(DATEDIFF(`EndDate`, `StartDate`), 7)
  • Hi @user14900 , @user096813 , @user044663 , @Khan_Naziya It sounds like a systemic issue. I'd recommend reaching out to Support or your CSM.
  • Hey @MarkSnodgrass Any time I'm doing date differences I like to utilize unix_timestamp. It converts everything to an integer of the number of seconds since 1970-01-01. This makes working with the data easier. DATEDIFF is returning your difference in the whole unit you specified so you don't get the fractional aspect of…
  • TIMESTAMPDIFF(MINUTE, ...) calculates whole minutes that have passed between the two timestamps so it makes sense you're seeing 10 (essentially it's truncating instead of rounding) instead of 11. If you want to round to the nearest minute you can just utilize the ROUND(..., 0) function
  • Hi @Khan_Naziya I've found unix_timestamp function to be great in cases like this. If you convert two datetimes to unix timstamp it'll give you the number of seconds since 1970-01-01. Simple math would get you the number in unit of minutes. Here's a BeastMode function that will calculate time between timestamps in minutes…
  • Hi @hamza_123 You can utilize unix_timestamp function to calculate the number of seconds since 1970-01-01. With some simple math you can get the difference in seconds. (UNIX_TIMESTAMP(`EndTime`) - UNIX_TIMESTAMP(`StartTime`)) I wrote a more advanced summary of this you can read…
  • Hi @AttuAk What type of card are you utilizing? HTTP links are only usable within a table or HTML table card otherwise it'll treat it as filterable text. Your beast mode will also only ever take them to the same wikipedia page. You'd want to incorporate your URL dimension as part of the link. (this is assuming you're…