| WK | Site | Section | Task / Description | Status | Remark / Note |
|---|
| Section | Total | Done | In Progress | Pending | Completion % |
|---|
| Site | Done | In Progress | Pending | Assets | Working |
|---|
| WK | Site | Section | Task / Description | Status | Remark / Note |
|---|
| Section | Total | Done | In Progress | Pending | Completion % |
|---|
| Site | Done | In Progress | Pending | Assets Added |
|---|
| Week | Site / Location | Month | Section | Task / Description | Remark / Note | Status | Incident? |
|---|
| Week | Month | Open | InProg | Pend. | MRInfo | QuotePO | P.Local | P.Imp | Resolvd | Closed | Total |
|---|
Create Your Google Sheet
Go to sheets.google.com and create a new spreadsheet. Name it MES IT Operations.
The sheet needs two tabs — one for Tasks and one for Assets.
📋 Tab 1 — Tasks — columns in row 1:
📦 Tab 2 — Assets — columns in row 1:
💡 Your team fills in this sheet from any device — phone, laptop, anywhere with Gmail.
Publish the Sheet (one-time setup)
In Google Sheets: File → Share → Publish to web
2️⃣ Click Share (top-right green button)
3️⃣ At the bottom under "General access" → click the dropdown that says "Restricted"
4️⃣ Change it to "Anyone with the link" → role = Viewer → click Done
5️⃣ Copy the URL from your browser address bar → paste below
Paste Your Spreadsheet URL
Paste your Google Sheets URL below. The dashboard automatically reads all site tabs (✅ Lubumbashi, 📦 Kolwezi, 🎫 Tickets etc.) in one go.
No need to publish individual tabs separately.
Share the Google Sheet with Your Team
In Google Sheets: click Share (top right) → add your team's Gmail addresses.
Give them Editor access so they can fill in their site data.
Team members open the Google Sheet on their phone or laptop and add data row by row. The dashboard reads all site tabs automatically — ✅ Lubumbashi, 📦 Kolwezi etc. — in one sync. Enable auto-sync below so it refreshes every 5 minutes without any manual action.
💡 You can also set up auto-sync every 5 minutes below.
Recommended — Public Sync (no sign-in for viewers)
Anyone who opens this dashboard sees live data automatically — no Microsoft sign-in required. A small server-side piece (already included in this project as
functions/api/workbook.js) holds the Microsoft credentials and reads the file on everyone's behalf. Deploy once, then it's fully automatic.
2️⃣ Name:
MES IT Dashboard Server · Supported account types: this organizational directory only · no redirect URI needed3️⃣ API permissions → Add a permission → Microsoft Graph → Application permissions (not Delegated) → add
Files.Read.All → click Grant admin consent (requires an admin — this step cannot be skipped for app-only access)4️⃣ Certificates & secrets → New client secret → copy the secret value immediately (shown once)
5️⃣ Copy the Application (client) ID and Directory (tenant) ID from the Overview page
6️⃣ In Cloudflare Pages → your project → Settings → Environment variables, add:
MS_CLIENT_ID = <client id>
MS_CLIENT_SECRET = <client secret> ← mark as "Secret", never plain text
MS_SHARE_URL = <OneDrive "Copy link" URL to MES_IT_Operations.xlsx>
Files.Read.All (Application permission) lets this app read any file across your organization's OneDrive/SharePoint, not just this one — the secret is only ever held on Cloudflare's server, never sent to browsers, but it's still a broad grant. If that's a concern, ask IT about scoping it down to Sites.Selected for just this file's library instead.
Register an App in Azure AD (one-time setup)
This lets the dashboard sign in with a Microsoft work account and read the file — nobody's password is ever entered into the dashboard.
2️⃣ Go to App registrations → New registration
3️⃣ Name:
MES IT Dashboard4️⃣ Supported account types: Accounts in this organizational directory only
5️⃣ Redirect URI → platform = Single-page application (SPA) → URI =
https://itdeshboard.messarl.com/6️⃣ Click Register
7️⃣ Copy the Application (client) ID and Directory (tenant) ID shown on the Overview page — paste them in Step 2 below
8️⃣ Go to API permissions → Add a permission → Microsoft Graph → Delegated permissions → add
Files.Read.All → click Grant admin consent (if you have admin rights; otherwise ask IT to click this once)
Enter App Details & Sign In
Paste the File's Sharing Link
The workbook still needs the same tabs as before — ✅ SiteName for tasks, 📦 SiteName for assets, 🎫 Tickets.
Share the File with Your Team
Your team members open the OneDrive/SharePoint file link on their phone or laptop and edit it directly, same as before with Google Sheets.
Anyone who opens this dashboard and signs in with a work account that has access to the file will see live data. Enable auto-sync below so it refreshes every 5 minutes without any manual action.
Organisation Details
🏙️ Main Sites — for Tasks
These locations appear in the Task Editor site dropdown and on the main dashboard filter.
📍 Asset Sites — all locations
All physical locations where equipment exists — used in the Asset Summary site view.
KPI Targets
🔐 Admin PIN
Change the 4-digit PIN required to access Data Entry and Settings. Default PIN is 1234 — change it to keep your settings secure.
⚠️ PIN is stored in this browser only. Clearing browser data resets it to 1234.