昨天的 Day27,我們完成了:
✅ 用 AI 整理 Odoo Tag,建立產品規格字典
✅ 收到 Gmail 後,AI 能對照字典自動分類
✅ 產生唯一、精確的規格輸出
延續昨天的分類流程,我也在結尾埋下了一個伏筆:
👉 如果 Odoo 裡的 Tag 有新增或修改,難道還要人工去維護 Google Sheets 嗎?
這樣就違背了我們追求「全自動
」的初衷。
所以今天,我要帶大家做的就是:
🎯 讓 Odoo 與 Google Sheets 自動同步,完全免人工維護。
假設今天 Odoo 新增了一個 Tag:
如果 Google Sheets 還停留在舊資料,那 AI 就會判斷不出來 → 分類錯誤 → 商機帶錯標籤。
所以在這裡,我的想法是:
👉 每次有新詢價信件進來時,先檢查 Odoo 與 Sheets 的 Tag 是否同步。
這樣才能確保後續的分類結果是正確的。
既然問題出在「資料不同步」,那解法自然就是讓系統能自動比對。
為了解決這個問題,我的流程是這樣設計的:
1️⃣ 每次 Gmail 收到詢價單時 → 先到 Odoo product.tag 查詢數量。
2️⃣ 再從 Google Sheets 讀取目前的 Tag 數量。
3️⃣ 如果兩邊數量不一致 → 啟動「更新流程」。
4️⃣ 用 AI 幫我比對 哪一筆 Odoo 有、Sheets 沒有。
5️⃣ 把缺少的資料補進 Google Sheets。
有了這樣的邏輯,流程不會白白浪費效能,也能確保 分類前一定是最新資料。
首先,我們需要取得 Odoo 中最新的 Tag 資料。
新增一個 Odoo 的 Make an API Call,設定模型為 product.tag
,並讀取欄位 name
。
接下來要比對 Google Sheets 與 Odoo 的數量是否相同,所以要讀取 Google Sheets 的行數。
我這邊是先在 Google Sheets 的某一個儲存格設定 =COUNTA()
函數,然後在 Make 直接讀取這個儲存格。
所以新增一個 Google Sheets 的 Get a Cell,然後設定要讀取的儲存格。
讀取到 Odoo Tag 和 Google Sheets Tag 的數量後,接下來就可以來判斷:
若需要更新的話,我們要先判斷,要更新什麼?
這時候,我們就請出 AI 來幫忙比對差異。
新增一個 Gemini 模組,並設計 Prompt,讓 AI 回傳缺少的 Tag。
Prompt範例
你會收到兩份資料:
- A:物件陣列,每個物件有 id 與 name
- B:商品標籤清單,每筆有「名稱,分類,分類說明(中文)」三欄
請依下列步驟操作:
1. 找出所有在 A 但沒在 B 的 name。
2. 對於每個缺漏的 name,根據 B 的「分類」欄**自動分類**:
- 嚴格檢查 B 內是否有可對應的分類(可用前綴、關鍵詞比對)。
- 如果無法判斷才標示為「其他」。
3. 「分類說明(中文)」欄,若 B 有對應分類就填入,沒有就空白。
4. 每筆回傳一行,格式為:
`ID,name,分類,分類說明(中文)`
5. 若全部 name 都有出現在 B,請只回傳「全部皆有」。
6. **請勿輸出任何多餘說明、格式標題或換行,只輸出最終比對結果。**
預期回覆格式:
id,商品/產品TAG,分類,分類說明(中文)
A:{{11.body}}
B:{{9.body}}
根據我的 Prompt,AI 會回傳一個字串為:
1543,用途 – bibitest,用途,適用材料/用途
所以 AI 回傳的是用逗號分隔的字串,因此我們需要先將它拆解成變數。
在這裡可以使用 Tools 的 Set Variable 模組,搭配 split()
方法處理。
接下來就是更新 Google Sheets,將我們找到的資料更新至 Google Sheets。
所以新增一個 Google Sheets 的 Update a Row,並設定要更新的欄位以及資料。
這樣其實就完成自動根據 Odoo Tag 更新 Google Sheets 的自動化流程了。
實測流程 🚀:
1️⃣ 在 Odoo 新增一個 Tag:「用途 – IT用」
2️⃣ 系統收到 Gmail 詢價信
3️⃣ 系統比對 Odoo 與 Sheets → 發現缺少一筆
4️⃣ 啟動更新流程 → AI 判斷缺少的 Tag 為 用途 – IT用
5️⃣ 自動新增到 Google Sheets
今天我們完成了:
✅ Gmail → Odoo Tag 數量比對
✅ 缺少資料 → AI 自動找出來
✅ 新增至 Google Sheets → 保持同步
這樣一來,就不用人工去維護 Google Sheets,每一次的 Gmail 分類都能即時對應 Odoo 的最新狀態。
那麼,聰明的你應該已經發現:
「欸?這流程只會新增耶,那如果我在 Odoo 把某個 Tag 刪掉怎麼辦?」 🤔
沒錯,目前的流程只有補缺少的 Tag,不會處理刪除。
所以我把處理刪除的這個流程,留給你當作「回家作業
」。
👉 提示:其實做法很簡單,只要把 Odoo 和 Sheets 的差集算出來,然後呼叫 Google Sheets 的刪除 API 就行。
就當作是給你的一點小練習啦 😎。
在 Day27,我們已經能讓 AI 幫忙判斷「客戶需求屬於哪些 Tag」。
而在今天,我們解決了 Tag 自動同步 的問題。
接下來,就是要進一步:
👉 如何根據這些 Tag,自動比對 Odoo 裡哪些產品符合條件?
這樣一來,客戶寄一封詢價信,我們就能讓:
AI → Tag → 產品 → 商機 一路自動串起來。
我們明天見 👋