Automated Weekly Project Cost Reports with MySQL and Outlook HTML Emails
Last edited 39 days ago
Automated Weekly Project Cost Reports with MySQL and Outlook HTML Emails
🧠 Use Case
Need to keep your finance or operations team updated on missing project costs?
This practical automated report workflow does the job without AI — and saves hours weekly.
- Runs on a weekly schedule
- Queries your MySQL database for projects missing cost data
- Filters by
budgeted_project_cost IS NULL
- Generates a clean HTML email report
- Sends it through Microsoft Outlook to relevant teams
🚀 How It Works
- Schedule Trigger – Runs every Monday at 8 AM
- MySQL Node – Connects and runs SQL to fetch project data missing
budgeted_project_cost
- Switch Node – Routes logic based on
cost_center
(e.g., Retail, Service, Projects) - Outlook Nodes – Sends formatted HTML emails; each node handles a specific group
- Dynamic Content – Inject values using mustache tags like
{{ $json.project_name }}
🔧 Setup Instructions
-
MySQL Setup:
- Ensure the MySQL node is connected using a valid credential set:
- Hostname/IP
- Port (default: 3306)
- Database name
- Username with SELECT permissions
- Password
- Query Example:
SELECT project_name, cost_center FROM tabProject WHERE status = 'Open' AND project_type = 'External' AND budgeted_project_cost IS NULL;
- Ensure the MySQL node is connected using a valid credential set:
-
Outlook Configuration:
- Connect your Microsoft Outlook node using OAuth2 credentials.
- Rename each Outlook node clearly (e.g.,
Send Email - Retail
,Send Email - Service
).
-
Switch Node:
- Modify cost center values as needed to match your organization (e.g.,
'Retail'
,'Service'
,'Projects'
).
- Modify cost center values as needed to match your organization (e.g.,
-
HTML Email Formatting:
- Customize the HTML message body using inline styles and mustache syntax.
- Sample:
<h3>Missing Budgeted Cost Report</h3> <ul> <li>Project: {{ $json.project_name }}</li> <li>Cost Center: {{ $json.cost_center }}</li> </ul>
-
Recipients:
- Replace
amjid@amjidali.com
with the actual email addresses of the concerned teams.
- Replace
📘 Read More
📺 Demo & Tutorial
🎥 Watch the video walkthrough:
https://youtube.com/@syncbricks
👤 About the Creator
Amjid Ali
🌐 amjidali.com
📘 n8n Book
🎓 Learn n8n
“Start simple, scale smart. Even basic workflows like this can save your team hours!” — Amjid Ali
You may also like
New to n8n?
Need help building new n8n workflows? Process automation for you or your company will save you time and money, and it's completely free!