Domo IDEAs Conference - Beast Modes - Add Business Days

GrantSmith
Coach

in Magic ETL
Greetings! This is another post highlighting a beast mode from my Domo IDEAs conference session. This one covers how to add a specific number of business days into the future.
Problem:
How do I add a specific number of business days?
Solution:
We convert the number of business days into the actual days. Convert the number of business days into full weeks and multiply by 7 to get the total days. Then add the remaining days and some extra days if we cross over a weekend.
-- Author: -- Created: -- Last Modified: -- Description: Add 6 business days to the specific date in the `dt` field. -- NOTE: This is a lazy calculation which doesn't take into account holidays or other days -- the business may be closed. -- ALSO - This assumes M-F as the work week. `dt` + -- Calculate the number of days. in this example replace 6 with the number of business days to add INTERVAL ( -- Calculate the number of weeks in the number of business days FLOOR(6/5) * 7 -- If the remaining number of days (MOD) would take us past Saturday then add 2 days to get over the weekend. + CASE WHEN MOD(6,5) + DAYOFWEEK(`dt`) >= 7 THEN 2 - -- This returns either 1 if the date is a Saturday otherwise 0 -- Does the date start on saturday? If so we only need to add 1 (2-1=1) days to get over the weekend instead of 2. FLOOR(DAYOFWEEK(`dt`)/7) ELSE 0 END -- Add the remaining number of work days after taking into account full weeks + MOD(6,5)) DAY
Notes:
This assumes any Monday-Friday is a business day and doesn't handle Holidays or days the business may be closed.
**Was this post helpful? Click Agree or Like below**
**Did this solve your problem? Accept it as a solution!**
**Did this solve your problem? Accept it as a solution!**
2
Comments
-
Here's a link to the video of my session outlining this beast mode: https://www.youtube.com/watch?v=gO8OLpsAk4M&index=6
**Was this post helpful? Click Agree or Like below**
**Did this solve your problem? Accept it as a solution!**1
Categories
- 10.6K All Categories
- 8 Connect
- 918 Connectors
- 250 Workbench
- 474 Transform
- 1.7K Magic ETL
- 69 SQL DataFlows
- 478 Datasets
- 214 Visualize
- 259 Beast Mode
- 2.1K Charting
- 12 Variables
- 19 Automate
- 356 APIs & Domo Developer
- 89 Apps
- 3 Workflows
- 20 Predict
- 5 Jupyter Workspaces
- 15 R & Python Tiles
- 249 Distribute
- 65 Domo Everywhere
- 243 Scheduled Reports
- 21 Manage
- 42 Governance & Security
- 191 Product Ideas
- 1.2K Ideas Exchange
- 11 Community Forums
- 27 Getting Started
- 14 Community Member Introductions
- 55 Community News
- 4.5K Archive