程式資訊
- 程式 ID:
TOTHER - 所屬子系統:P.發票管理
- 狀態:stable
申報書備註¶
功能簡介¶
「申報書備註」用來手動維護無法從發票傳票自動歸集、卻必須填入營業稅 401 申報書的補充金額。系統的進、銷項發票檔可以自動彙整出大部分的 401 欄位,但有幾項金額沒有對應的發票傳票來源——例如以普通收據(非統一發票)取得的進項、進口免稅貨物、購買國外勞務的稅額,以及人工裁定的本期實際申報留抵稅額。這些金額由會計人員每期在本表單依「公司代碼 + 所屬年月(稅期)」各填一筆。
本表單本身不做任何計算,它只是一張「以稅期為主鍵」的備註資料表。真正使用這些數字的是 401 申報書:當您在 401 申報書產生報表時,系統會依相同的所屬年月讀取本表單那一筆,把五個金額帶進 401 的對應欄位。因此本表單通常是做 401 申報前的前置動作——先把這些手填項目維護好,401 申報書才會完整。
適用對象為負責營業稅申報的會計/稅務人員,在每個申報期(兩個月一期)結帳、產出 401 申報書之前使用。
前置需求¶
- 權限:P.發票 →
P-080 申報書備註的新增/修改/刪除/瀏覽權限。 - 基礎資料:
| 資料 | 影響什麼 |
|---|---|
| 公司資料(公司代碼) | 本表單以公司代碼作為主鍵之一;公司代碼需先在公司資料維護,新增時預設帶 1 |
| 該稅期的進、銷項發票 | 本表單只放「發票檔抓不到」的補充金額;其餘 401 欄位由發票自動彙整,與本表單無關 |
| 401 申報書 | 本表單的五個金額是 401 申報書的資料來源之一;沒維護就等於這幾項以 0 申報 |
一個稅期一筆
本表單採「公司代碼 + 所屬年月」為唯一鍵,同一公司同一稅期只應有一筆。若該稅期沒有任何普通收據/免稅進口/國外勞務/指定留抵,就不需要為它建立資料,401 申報書讀不到時會以 0 計。
操作步驟¶
本表單是單筆主檔(沒有明細列),每一筆代表「某公司某稅期」的一組補充金額。
新增一期備註¶
- 按工具列的
新增。系統自動帶入預設值:- 公司代碼=
1 - 所屬年月=目前所在的申報稅期(見欄位連動與附加功能的稅期換算說明)
- 公司代碼=
- 確認或修改公司代碼(多公司環境請選對公司)。
- 確認或修改所屬年月。此為申報稅期,格式為
年-起月-迄月(例如五、六月期為2026-05-06)。 - 在下列五個金額欄位填入該期實際數字(沒有的留 0 即可):
- 普通收據進(普通收據—進貨)
- 普通收據固(普通收據—固定資產)
- 進口免稅貨(進口免稅貨物)
- 購買國外勞(購買國外勞務)
- 本期實留抵(本期實際申報留抵稅額)
- 按工具列的
存檔。
修改/查詢既有資料¶
- 用工具列的記錄移動鈕(
第一筆/上一筆/下一筆/最後一筆)或查詢功能切換到要查看的那一筆。 - 按
修改後直接於欄位上更新金額,再存檔。
刪除¶
- 移動到要刪除的那一期。
- 按工具列
刪除,確認後移除該筆。
改完記得回 401 重產
本表單的數字是 401 申報書讀取的來源。先在本表單把該期金額維護好,再去 401 申報書 產生/重新產生報表,新數字才會反映在 401 上。
欄位說明¶
| 欄位 | 必填 | 說明/格式/預設 |
|---|---|---|
| 公司代碼 | ✔ | 申報主體公司。新增時預設 1,多公司環境請改選正確公司 |
| 所屬年月 | ✔ | 申報稅期,遮罩 InvoiceYearMonth(yyyy-MM-dd 外觀,實際代表「年-起月-迄月」的兩個月稅期)。新增時預設帶當期稅期 |
| 普通收據進 | — | 以普通收據(非統一發票)取得之進貨金額;預設 0,本位幣金額 |
| 普通收據固 | — | 以普通收據取得之固定資產金額;預設 0 |
| 進口免稅貨 | — | 進口免稅貨物金額;預設 0 |
| 購買國外勞 | — | 購買國外勞務之金額;預設 0 |
| 本期實留抵 | — | 本期實際申報留抵稅額;預設 0 |
金額皆為本位幣金額
五個金額欄皆以本位幣(PlaceEnum="Local")格式輸入,無外幣/匯率換算。它們是申報書上的金額欄位,不是逐張發票,故本表單沒有發票號碼、廠商等明細欄位。
欄位連動與附加功能¶
本表單刻意做得很單純——它是一張「以稅期為鍵」的人工備註表,沒有複雜的欄位互算。以下把實際存在的連動與行為逐條列出:
新增時的預設帶值(AfterAddNew)¶
- 當您按
新增,系統會把公司代碼設為1、所屬年月設為目前申報稅期。其餘五個金額欄維持 0,等您填入。 - 所屬年月的預設稅期是用「兩個月一期」的規則算出來的:取系統目前月份,偶數月減 1 變成該期的起月,迄月=起月+1,組成
年-起月-迄月。
所屬年月遮罩與檢核¶
- 所屬年月欄使用
InvoiceYearMonth日期遮罩,輸入時會以yyyy-MM-dd樣式引導;它代表的是稅期區間,不是單一日期。 -
VFP 原程式在此欄設有「同年月不可重複(
is_noduplicate)」的檢核,避免同一公司同一稅期建立兩筆。重複稅期防呆由資料庫把關
新版 C# 尚未在表單端重現 VFP 的「所屬年月不可重複」即時檢核;同一公司同一稅期的唯一性目前由資料庫主鍵保障——若重複存檔會在寫入時被資料庫擋下,而非輸入當下提示。請維護時自行確認該稅期尚未建立過,避免存檔失敗。
與 401 申報書的連動(跨表單)¶
- 本表單的五個金額不會在本表單內被加總或運算;真正的連動發生在 401 申報書。
- 當 401 申報書處理某稅期時,會依相同的所屬年月讀取本表單那一筆,把以下對應關係帶進申報書:
- 普通收據進 → 401 的「普通收據進貨」
- 普通收據固 → 401 的「普通收據固資」
- 進口免稅貨 → 401 的「進口免稅貨物」
- 購買國外勞 → 401 的「購買國外勞務」
- 本期實留抵 → 401 的本期累積留抵(
稅額計算.本期累積留抵,並參與該書的退稅限額/本期應退計算)
- 401 申報書讀取時是依所屬年月(稅期)撈出本表單該期那一筆(取第一筆
申報書備註[0]);公司代碼則用於 401 另行讀取公司基本資料。因此維護時務必確認所屬年月與公司代碼都對,401 才會抓到正確那一筆。 - 若該稅期在本表單沒有資料,401 申報書這幾項即以 0 帶入。
沒有的功能(避免誤會)¶
- 本表單沒有列印、轉傳票、沖帳、簽核工作流程、附件上傳、Excel 匯入/匯出等延伸動作。它的延伸功能就是「被 401 申報書讀取」。VFP 工具列雖列有列印鈕,但本明細頁本身無對應報表;列印與媒體申報請至 401 申報書、進銷項媒體申報。
常見問題¶
401 申報書上的「普通收據」「進口免稅」「購買國外勞務」是 0,發票明明都建好了?
這幾項不是從發票檔自動算的,發票檔裡沒有它們的來源。請到本表單「申報書備註」,依該稅期(所屬年月)建立一筆並填入金額,再回 401 申報書 重新產生。沒建資料就會以 0 申報。
為什麼新增後所屬年月是 2026-05-06 這種兩個月的格式?
營業稅以「兩個月為一期」申報,所屬年月代表的是稅期區間(起月-迄月),不是單一日期。系統依目前月份自動推算當期(偶數月會往前併到奇數月起算),與其他發票表單一致。需要做其他期就直接改這個欄位。
同一個稅期可以建兩筆嗎?金額會相加嗎?
不可以。本表單以「公司代碼 + 所屬年月」為唯一鍵,一期只該有一筆,401 申報書也只讀那一筆,不會把多筆相加。重複建立會在存檔時被資料庫主鍵擋下。若金額要調整,請修改既有那筆而不是新增。
改了金額,401 申報書卻沒變?
本表單與 401 申報書是兩支獨立程式。修改後要回到 401 申報書 重新產生報表,新數字才會被讀進去。
多公司環境,金額帶錯公司?
新增時公司代碼預設為 1。多公司情境請在存檔前先把公司代碼改成正確公司,因為 401 申報書是依「公司代碼 + 所屬年月」配對讀取的。
相關功能¶
需補截圖清單
以下截圖待功能 runtime 驗收後補拍(放 docs/P-Invoice/images/):
tother-step1.png— 新增一筆、顯示公司代碼/所屬年月預設值的畫面tother-step2.png— 填妥五個金額欄位的完整輸入畫面tother-step3.png— 與 401 申報書對照,顯示本表單金額帶入後的效果