Odoo 的文件編號真的可以按年、月或日重新開始嗎?讓我來找出答案
在企業管理系統中,文件編號往往不僅作為識別碼,也經常承擔流程管理、財務對帳及稽核追蹤等功能。
所以問題是:在 Odoo 中,我們可以讓文件編號每年、每月,甚至每天自動重新編號嗎?
許多初次接觸 Odoo 的人經常會問:
-
- 銷售訂單(SO)是否可以每年重新編號,從 SO/2025/001 開始?
- 發票號碼可以按月重設嗎?
- 有沒有辦法每天從 1 開始編號,以符合某些產業的序號要求?
- Odoo 17 實際上支援哪些模式?你還需要寫程式碼嗎?
這些問題在社群和論壇中反覆出現,因此我決定為 Odoo 17 整理一份全面的說明。
Odoo 可以按年/月/日重設編號嗎?
答案是是的!而且它完全內建,無需開發!
Odoo 中所有編號的核心機制是序列。
只需開啟開發者模式即可找到這些序列,而序列本身支援下列重設週期:
- 每年
- 每月
- 每日(按日)
- 不重置
換句話說,Odoo 原生即可實現:
-
- 編號每年從 1 重新開始
- 編號每月從 1 重新開始
- 編號每天從 1 重新開始
- 永不重置,持續累積成長
那麼,所有文件都能以這種方式操作嗎?
為什麼我在某些介面(例如發票)中看不到編號設定?
這裡許多人都感到困惑:
我似乎能找到銷售訂單的序號,但發票的序號在哪裡?為什麼它不在 UI 中?
其實,原因是:
- Odoo 不會將序號放置在文件介面上供您修改
- 但所有文件的編號仍然來自序列 (ir.sequence)
因此,雖然發票、帳單與會計分錄沒有前端輸入入口,底層系統仍由相同的序列機制控制。
換句話說:
找不到序列並不代表它不存在。
找不到 UI 入口並不代表無法修改。
只需進入開發者模式 → "設定 → 技術 → 序列" 即可找到所有文件的編號規則。
序列還能做什麼?
很多人不知道 Odoo 的序列其實非常強大;它們不僅可以重設,還能透過變數自訂編號格式。
例如,您可以將前綴設定為:
-
- SO/%(year)s/
- 發票/%(year)s/%(month)s/
- WH/%(year)s/%(month)s/%(day)s/
- %(company_id)s/%(year)s/%(month)s/N°
您甚至可以自訂號碼長度,例如:
-
- 001, 0001, 000001
這使得能夠建構嚴謹、符合稽核規範且可識別的編號系統。
幾個需要注意的陷阱
1. 修改順序不會影響歷史文件
如果企業希望「重整歷史數字」,幾乎總是不建議,甚至不被允許(尤其是在會計模組中)。
2. 在多公司環境中,每家公司的序列都是獨立的
你需要分別調整它們。
3. 某些模組的修改編號可能具有法律意涵
例如,在某些國家,嚴格的發票法規不允許任意更改編號格式。
那麼,Odoo 的文件編號應該如何規劃?
這是企業成立時最常見的疑問之一:
- 您想要每年重設嗎?
- 有必要包含月份嗎?
- 每種業務類型(例如:國內訂單與國際訂單)是否應該有各自的序列?
- 您需要新增公司代碼嗎?
這些必須根據業務情境、稽核規則和跨公司流程來決定。
結論:Odoo 的序列非常強大,但你需要正確使用它們
如果您正在規劃 Odoo 的編號系統,您可能會問自己:
- 我們的編號真的需要每年重設嗎?
- 是否有會計合規要求?
- 業務人員需要從數字推斷時間嗎?
- 在多間公司的情況下,是否有必要統一格式?
透過思考這些問題並善用 Odoo 序列的靈活性,您可以實作幾乎任何編號規則。
