跳轉到

程式資訊

  • 程式 IDTICKR
  • 所屬子系統:P.發票管理
  • 狀態:stable

進項發票

功能簡介

「進項發票」(Tickr,P-020)是進項憑證的彙整登錄表單。系統把同一所屬年月+憑證類別的所有進項憑證(三聯式發票、收銀機發票、海關代徵營業稅繳納證、退出折讓單等)集中成一張主檔,逐筆登錄發票明細,並自動依類別(進貨及費用/固定資產)與稅額是否超過 500 元分組,算出申報營業稅所需的各項合計。會計/稅務人員每月用它建立進項憑證底稿、做編冊造號,並可進一步與傳票核對、列印申報媒體。

主檔層只記三個 key 欄位(所屬年月憑證類別公司代碼)與備註;真正的發票資料都在下方明細表格裡。每一筆明細透過新增視窗(輸入發票號碼)逐張帶入。

與銷項發票的對應

本表單是進項側;銷項(開立給客戶的發票)請見銷項發票銷項退回(暨免用統一發票)

前置需求

  • 權限:P.發票 → P-020 進項發票 的對應權限。新增/修改/刪除/列印分別受各自權限控管;編號(編冊造號)受「其他功能 1」權限、轉入 受「其他功能 2」權限、傳票核對 受「其他功能 3」權限控管。

  • 基礎資料:登錄與計算的完整度取決於下列資料——

資料 影響的結果
憑證類別代號表(C2141) 主檔與新增視窗的憑證類別下拉;不同類別決定稅額算法與編冊索引鍵
廠商主檔(SPDATA 明細的部門代號/簡稱/統一編號互查;輸入統編可反查廠商,反之亦然
營業稅率參數(_prgpar 項目 10 自動算稅額的營業稅率來源(新增視窗「應稅」明細、主表格改進項金額重算稅額都讀同一個參數;查無設定時預設 5%)
傳票(SLIY 傳票核對 功能比對進項發票與總帳傳票金額差異
進貨單/暫收單 轉入 功能(進貨單轉進項發票)的來源單據

操作步驟

查詢既有發票主檔

  1. 用工具列的上一筆/下一筆/重新整理瀏覽,或用 Seek發票鍵值(所屬年月+憑證類別,例 2026-06-30 + 21)定位。
  2. 切換到某張主檔後,下方表格列出該所屬年月+憑證類別的所有明細;表單底部即時顯示進貨及費用/固定資產在 500 元上下的合計與稅額(見欄位連動與附加功能)。

新增發票明細

本表單的新增是「逐張發票」加進當月當類別的主檔,透過獨立的輸入視窗完成:

  1. 按工具列 新增,開啟輸入發票號碼視窗。
  2. 視窗預設帶入:公司代碼=1、所屬年月=當期申報年月、憑證類別21課稅別應稅類別=清單第一項(1.進貨及費用)。
  3. 依序輸入發票日期發票號碼統一編號/廠商進項金額等(欄位連動見該頁說明)。
  4. 儲存:系統依所屬年月+憑證類別找出(或建立)對應主檔,把這筆明細掛上去,畫面「新增筆數」+1,可連續登錄下一張。
  5. 全部輸入完成後關閉視窗;主表單會自動定位到剛新增的主檔。

為什麼新增要另開視窗

主表格本身不支援直接在格子裡新增列(VFP 原版即攔截「在明細直接新增」並提示「請使用新增功能」)。所有新明細一律走 新增 視窗,以確保主檔 key 與編號規則正確。

修改明細

  1. 在主表單按 修改 進入編輯狀態。
  2. 直接在明細表格修改可編輯欄位:序號/冊號/編號/類別/課稅別/統一編號/部門代號/進項金額/稅額/其他憑證/傳票號碼/備註/自訂欄位/彙總張數
  3. 修改進項金額統一編號/部門代號會觸發連動重算與互查(見下節)。
  4. 儲存 完成。

刪除明細

  • 明細只有在發票號碼為空白時才允許直接刪除(NeedDeleteFunction 以發票號碼是否空白判定);已有發票號碼的明細需透過正常編輯流程處理,避免誤刪已申報資料。

編冊造號(工具列 編號

編號 會把目前主檔的明細自動重編冊號/編號,是進項憑證申報底稿的標準動作。詳見欄位連動與附加功能

轉入(工具列 轉入

轉入 開啟「進貨單轉進項發票」視窗(Tkturnr),把進貨單據轉成進項發票明細。

傳票核對(工具列 傳票核對

傳票核對 會以目前主檔的年度為範圍,比對進項發票明細與總帳傳票的金額,並把差異匯出 Excel。詳見欄位連動與附加功能

列印

按工具列 列印 開啟列印頁(TickrPrint),帶入目前主檔的所屬年月作為列印條件。

列印報表規劃中

新版列印頁目前僅提供所屬年月條件欄位;VFP 原版可依憑證類別(三聯式/二聯式/退出折讓/海關代徵…)分別輸出申報報表,但這些報表設定(CrystalPrintSetting)在新版 C# 中仍是註解狀態(尚未啟用)。實際可印報表以上線版本為準。

欄位說明

主檔(表單上方)

欄位 必填 說明/格式/預設
公司代碼 整數,預設 1。透過公司資訊控件選擇
所屬年月 申報所屬年月,格式 YYYY-MM-DD(遮罩 InvoiceYearMonth)。標紅為重要欄位
憑證類別 由代號表 C2141 帶出(21 三聯式、22 二聯式收銀機/載有稅額憑證、23/24 退出折讓、25 三聯式收銀機、28 海關代徵…)。決定稅額算法與編冊索引
發票鍵值 系統 系統組成(所屬年月+憑證類別),標示為系統產生欄位
發票備註 30 字內
轉入備註/轉出備註 系統 系統產生欄位(轉單時帶入)

明細(表格)

欄位 必填 說明/格式/預設
序號 排序用流水號
冊號/編號 申報冊號(3 碼)/冊內編號(2 碼);由 編號 功能自動產生
發票日期 唯讀(在新增視窗輸入),格式日期
發票號碼 10 碼以內;空白才允許刪除該列
發票迄號 連續發票的迄號
類別 下拉:1.進貨及費用2.固定資產3.不可抵進貨4.不可抵固資5.進項綜合。決定底部合計歸屬
課稅別 下拉:應稅/零稅/免稅
統一編號 8 碼;輸入後反查廠商(見下節),LostFocus 觸發
部門代號 廠商代號;輸入後帶簡稱與統編(LostFocus 觸發)
部門簡稱 系統 由統編/代號互查帶出
進項金額 營業稅稅基;修改後依憑證類別重算稅額/合計(LostFocus 觸發)
稅額 9 位整數;應稅時依稅率自動算,可手改
合計金額 系統 唯讀=進項金額+稅額
其他憑證 海關代徵營業稅繳納證號等
傳票號碼 對應總帳傳票;傳票核對 以此比對
備註/自訂欄位/彙總張數 申報附註欄位

底部合計(唯讀,系統計算)

欄位 說明
500元以下/以上 × 進貨及費用/固定資產 依明細「類別」與「稅額是否 > 500」分四格累加進項金額
合計未稅(進貨及費用/固定資產) 500 以下+以上
稅額(進費稅額/固資稅額) 對應類別的稅額加總

欄位連動與附加功能

【本節說明「輸入某欄位/按某按鈕後系統會做什麼」,全部來自實際程式碼。】

底部合計即時重算(Sum)

  • 當你切換主檔AfterMoverRecord)或修改明細的進項金額進項金額Binding 連動)時,系統會重跑底部八格合計(Sum):
    • 只計算未刪除(增刪修不是 D)的明細。
    • 類別1.進貨及費用3.不可抵進貨5.進項綜合 的列,稅額累加到「進費稅額」;其進項金額依該列稅額是否 > 500 分別累加到「500元以上/以下 進貨及費用」。
    • 類別2.固定資產4.不可抵固資 的列,稅額累加到「固資稅額」;進項金額同樣依稅額 500 上下分流到固定資產兩格。
    • 「合計未稅」=該類 500 以下+以上。

主表格修改進項金額 → 自動算稅(SetAmount)

  • 在主表格(編輯狀態)改某列進項金額,且該主檔憑證類別屬於 21/22/23/24/25/28 時,系統會:
    • 表定稅率(即 _prgpar 項目 10,查無設定時預設 5),算 稅額 = 四捨五入(進項金額 × 稅率 ÷ 100)
    • 並令 合計金額 = 進項金額 + 稅額
    • 接著重跑底部合計。
  • 直接改稅額欄位時,合計金額 也會即時跟著=進項金額+稅額。

明細統一編號 ↔ 部門代號(廠商)互查

  • 在主表格輸入統一編號(LostFocus):系統到廠商主檔(SPDATA)找該統編,找到就回填部門代號/部門簡稱;找不到提示「查無資料」。
  • 反向:輸入部門代號(LostFocus):以代號查廠商基本資料,回填部門簡稱/統一編號
  • 兩者互為連動,輸入任一邊都會自動補另一邊。

編號(編冊造號)

按工具列 編號 觸發 ExtendedFunction1,系統會:

  1. 先重新整理目前主檔,沒有主檔或沒有明細則直接結束。
  2. 進入特殊編輯狀態。
  3. 憑證類別決定排序鍵:
    • 一般類別:以 linkid + 發票日期 + 發票號碼 排序。
    • 憑證類別 23(退出折讓):改以 linkid + 自訂欄位 + 發票號碼 排序。
  4. 排序後呼叫 InvoiceHelper.編號:同一張主檔(linkid)內,冊號從 001 起、編號從 00 起逐筆遞增;編號累計到 100 時冊號 +1、編號歸 0。
  5. 自動存檔;存檔失敗會跳錯誤訊息並取消編輯。

什麼時候按編號

通常在當月發票全部登錄完畢、要產出申報底稿前按一次,讓冊號/編號連續整齊。重新登錄或補單後可再按一次重編。

轉入(進貨單轉進項發票)

轉入 觸發 ExtendedFunction2:開啟「進貨單轉進項發票」視窗(Tkturnr,ProgramClass TKTURNR),由該視窗挑進貨單據轉成進項發票明細;關閉後主表單自動重新整理。

傳票核對

傳票核對 觸發 ExtendedFunction3:以目前主檔所屬年月的前 4 碼(年度) 為範圍呼叫 進項發票核對傳票Bll,它會:

  1. 撈出該年度所有進項發票明細與其對應的總帳傳票(SLIY)。
  2. 傳票號碼分組,分別加總「發票端」的進項金額/稅額/合計,與「傳票端」的貨款/稅。
  3. 列出有差異者(傳票號碼空白、或進項金額/稅額對不上)並計算差額。
  4. 把比對結果匯出 Excel(檔名「進項發票核對傳票」)供人工核對。

列印帶值

  • 列印 取得列印頁 ViewModel(TickrPrint),若目前有主檔,會把該主檔的所屬年月帶入列印條件,作為報表撈資料的依據。

新增視窗(Tickr_m)的連動

輸入發票號碼 視窗本身有多項連動(發票號碼輸入後查既有資料、進項金額自動算稅、統編/廠商互查),請見該頁的欄位連動說明。重點摘要:

  • 輸入進項金額且課稅別含「應稅」時,以 _prgpar 項目 10 的稅率自動算稅額與合計;非應稅時稅額歸 0、合計=進項金額。
  • 憑證類別為 23/24(退出折讓)時,輸入 10 碼發票號碼會回查原進項發票,帶出原始進項金額與已銷退(充抵)金額供折讓沖抵參考。

常見問題

明細的稅額或合計金額一直是 0?

稅額自動計算只在特定憑證類別(21/22/23/24/25/28)下才會依進項金額重算;其他類別需手動輸入稅額。另外在新增視窗,只有課稅別含「應稅」才會自動帶稅,零稅/免稅的稅額會固定為 0。請確認憑證類別與課稅別設定正確。

輸入統一編號後沒帶出廠商(部門代號/簡稱空白)?

統編互查是到廠商主檔(SPDATA)比對,且為 LostFocus 觸發——請在輸入完統編後移開焦點。若仍空白,多半是該統編尚未建廠商主檔,會出現「查無資料」提示;請先到廠商主檔維護。

為什麼不能直接在明細表格新增一列?

這是設計:所有新發票一律走工具列 新增(開「輸入發票號碼」視窗)登錄,以確保主檔 key、課稅別、稅率與編號規則一致。直接在格子新增會被攔截。

明細刪不掉?

明細只有在發票號碼為空白時才允許刪除。已登錄發票號碼(通常代表已申報)的列不開放直接刪除,避免破壞申報底稿;如需作廢請循退出折讓或修改流程處理。

按了編號,冊號/編號沒變或存檔失敗?

編號 需要目前有主檔且有明細才會作用;它會自動進入特殊編輯並存檔。若提示存檔失敗,系統會自動取消編輯——通常是因為資料被其他人鎖定或有驗證未過,請排除後重試。

傳票核對跑出來都是差異列?

傳票核對 只列出對不上的傳票(發票端與傳票端金額不符或缺傳票號碼),相符者不會列出。出現很多差異多半是明細的傳票號碼還沒填、或傳票尚未過帳;先補齊傳票號碼並確認傳票已入帳再核對。

相關功能


需補截圖清單

以下截圖待功能 runtime 驗收後補拍(放 docs/P-Invoice/images/):

  1. tickr-step1.png — 主表單全貌(上方主檔欄位+明細表格+底部合計)
  2. tickr-step2.png — 新增「輸入發票號碼」視窗
  3. tickr-step3.png — 底部進貨及費用/固定資產 500 元上下合計區
  4. tickr-step4.png傳票核對 匯出的差異 Excel 範例