{ "meta": { "instanceId": "workflow-87b13df4", "versionId": "1.0.0", "createdAt": "2025-09-29T07:07:50.947796", "updatedAt": "2025-09-29T07:07:50.947811", "owner": "n8n-user", "license": "MIT", "category": "automation", "status": "active", "priority": "high", "environment": "production" }, "nodes": [ { "id": "59b786fe-8e45-4616-aa45-9748df144c3a", "name": "MySQL", "type": "n8n-nodes-base.mySql", "position": [ -80, 220 ], "parameters": { "query": "SELECT \n company,\n cost_center AS default_cost_center,\n COUNT(*) AS project_count\nFROM \n tabProject\nWHERE \n status = 'Open' \n AND project_type = 'External'\n AND is_active = 'Yes'\n AND budgeted_project_cost = 0\n \nGROUP BY \n company, cost_center\nORDER BY \n company, project_count DESC;\n", "options": {}, "operation": "executeQuery" }, "typeVersion": 2.4, "notes": "This mySql node performs automated tasks as part of the workflow." }, { "id": "48c20822-9f2e-4108-8bfb-b300689a9724", "name": "Schedule Trigger", "type": "n8n-nodes-base.scheduleTrigger", "position": [ -360, 220 ], "parameters": { "rule": { "interval": [ { "field": "weeks", "triggerAtHour": 8 } ] } }, "typeVersion": 1.2, "notes": "This scheduleTrigger node performs automated tasks as part of the workflow." }, { "id": "3757860b-b7a0-4617-a398-37ac42f1acea", "name": "Switch", "type": "n8n-nodes-base.switch", "position": [ 180, 200 ], "parameters": { "rules": { "values": [ { "outputKey": "YOUR_CREDENTIAL_HERE", "conditions": { "options": { "version": 2, "leftValue": "", "caseSensitive": true, "typeValidation": "strict" }, "combinator": "and", "conditions": [ { "id": "423062ba-e116-4e22-aa00-29107e8c24ce", "operator": { "type": "string", "operation": "equals" }, "leftValue": "={{ $json.default_cost_center }}", "rightValue": "Cost Center A" } ] }, "renameOutput": true }, { "outputKey": "YOUR_CREDENTIAL_HERE", "conditions": { "options": { "version": 2, "leftValue": "", "caseSensitive": true, "typeValidation": "strict" }, "combinator": "and", "conditions": [ { "id": "e065ab84-61fd-4e6c-8835-92d08be3e359", "operator": { "name": "filter.operator.equals", "type": "string", "operation": "equals" }, "leftValue": "={{ $json.default_cost_center }}", "rightValue": "Cost Center B" } ] }, "renameOutput": true }, { "outputKey": "YOUR_CREDENTIAL_HERE", "conditions": { "options": { "version": 2, "leftValue": "", "caseSensitive": true, "typeValidation": "strict" }, "combinator": "and", "conditions": [ { "id": "0ef8ce35-2507-4ff4-8dea-11380262098e", "operator": { "name": "filter.operator.equals", "type": "string", "operation": "equals" }, "leftValue": "={{ $json.default_cost_center }}", "rightValue": "=COST CENTER C" } ] }, "renameOutput": true }, { "outputKey": "YOUR_CREDENTIAL_HERE", "conditions": { "options": { "version": 2, "leftValue": "", "caseSensitive": true, "typeValidation": "strict" }, "combinator": "and", "conditions": [ { "id": "9152e548-cca9-441c-b4b6-8903f449dc2b", "operator": { "name": "filter.operator.equals", "type": "string", "operation": "equals" }, "leftValue": "={{ $json.default_cost_center }}", "rightValue": "Cost Center D" } ] }, "renameOutput": true } ] }, "options": {} }, "typeVersion": 3.2, "notes": "This switch node performs automated tasks as part of the workflow." }, { "id": "bf8fd5f4-e107-44e8-af1a-be32596d664e", "name": "Microsoft Outlook6", "type": "n8n-nodes-base.microsoftOutlook", "position": [ 560, -20 ], "webhookId": "dce42873-919a-4dac-9f9d-792b0a39b7f7", "parameters": { "subject": "Project Cost Missing", "bodyContent": "==\n\n\n \n Missing Budgeted Cost Notification\n \n\n\n
\n
\n {{ $json.default_cost_center }} - Project Data Missing\n
\n
\n Dear {{ $json.default_cost_center }} Team,

\n There are {{ $json.project_count }} active projects with missing Budgeted Cost.
\n Kindly coordinate with the Accounts Team to update the missing values for accurate tracking.

\n Your timely attention is appreciated.

\n Regards,\n
\n
\n Amjid Ali
\n Automation Demo – n8n\n
\n
\n\n\n", "toRecipients": "amjid@amjidali.com", "additionalFields": { "bodyContentType": "html" } }, "typeVersion": 2, "notes": "This microsoftOutlook node performs automated tasks as part of the workflow." }, { "id": "e4ffe557-0862-401e-9f65-7195a72db1d9", "name": "Microsoft Outlook1", "type": "n8n-nodes-base.microsoftOutlook", "position": [ 560, 160 ], "webhookId": "ea8b2720-cbb6-4712-b9ff-4b443958d0d0", "parameters": { "subject": "Projects Cost Missing", "bodyContent": "==\n\n\n \n Missing Budgeted Cost Notification\n \n\n\n
\n
\n {{ $json.default_cost_center }} - Project Data Missing\n
\n
\n Dear {{ $json.default_cost_center }} Team,

\n There are {{ $json.project_count }} active projects with missing Budgeted Cost.
\n Kindly coordinate with the Accounts Team to update the missing values for accurate tracking.

\n Your timely attention is appreciated.

\n Regards,\n
\n
\n Amjid Ali
\n Automation Demo – n8n\n
\n
\n\n\n", "toRecipients": "amjid@amjidali.com", "additionalFields": { "bodyContentType": "html" } }, "typeVersion": 2, "notes": "This microsoftOutlook node performs automated tasks as part of the workflow." }, { "id": "e0722ebd-1e05-4efe-a27a-e4db193dec80", "name": "Microsoft Outlook7", "type": "n8n-nodes-base.microsoftOutlook", "position": [ 560, 380 ], "webhookId": "46e6a678-d922-4dfc-b51d-864477e6b01e", "parameters": { "subject": "Projects Cost Missing", "bodyContent": "==\n\n\n \n Missing Budgeted Cost Notification\n \n\n\n
\n
\n {{ $json.default_cost_center }} - Project Data Missing\n
\n
\n Dear {{ $json.default_cost_center }} Team,

\n There are {{ $json.project_count }} active projects with missing Budgeted Cost.
\n Kindly coordinate with the Accounts Team to update the missing values for accurate tracking.

\n Your timely attention is appreciated.

\n Regards,\n
\n
\n Amjid Ali
\n Automation Demo – n8n\n
\n
\n\n\n", "toRecipients": "amjid@amjidali.com", "additionalFields": { "bodyContentType": "html" } }, "typeVersion": 2, "notes": "This microsoftOutlook node performs automated tasks as part of the workflow." }, { "id": "error-26a091c3", "name": "Error Handler", "type": "n8n-nodes-base.stopAndError", "typeVersion": 1, "position": [ 1000, 400 ], "parameters": { "message": "Workflow execution error", "options": {} } } ], "pinData": {}, "connections": {}, "name": "Mysql Workflow", "description": "Automated workflow: Mysql Workflow. This workflow processes data and performs automated tasks.", "settings": { "executionOrder": "v1", "saveManualExecutions": true, "callerPolicy": "workflowsFromSameOwner", "errorWorkflow": null, "timezone": "UTC", "executionTimeout": 3600, "maxExecutions": 1000, "retryOnFail": true, "retryCount": 3, "retryDelay": 1000 }, "tags": [ "automation", "n8n", "production-ready", "excellent", "optimized" ], "notes": "Excellent quality workflow: Mysql Workflow. This workflow has been optimized for production use with comprehensive error handling, security, and documentation." }