跳轉到

程式資訊

  • 程式 IDTRRAFEEPRIME
  • 所屬子系統:G.採購付款
  • 狀態:stable

進貨費用攤計(Prime)

功能簡介

「進貨費用攤計(Prime)」是一張進口進貨的費用歸集與成本攤計單,提供給有海運/空運進口、需要把報關、運費、保險等雜支併入存貨成本的進口商使用。它把一張進貨(收料)所衍生的各項進口費用——報關(含關稅)、保險、海運、拖運、碼頭費、報關處理費、認證費,外加 4 個可自訂費用欄位——集中登錄在表頭,並依貨櫃(Container)品項(SKU)兩層明細逐層展開,最後算出每個品項的到岸成本(Landed Cost)漲幅百分比(Container Value)

這支單在採購到進貨成本的流程中位於後段:先有進貨(暫收/進貨單)取得 FOB 原始金額,再用本單把進口雜費攤進去,得到真正進帳的存貨成本。表頭並提供 查詢費用 A/P 的延伸功能,可回頭查出每一項費用對應的應付帳款(A/P)單號。

Prime 客製版本

本表單為 Prime 客製版(程式名稱 TRRAFEEPRIME),畫面標籤目前以英文呈現(Receiveing#Broker Co.Landed Cost 等)。其資料結構與一般進貨費用單同源,但攤計邏輯與表頭欄位是依該客戶的進口作業量身設計,欄位與下方說明以實際程式為準。

前置需求

  • 權限:G.採購 → 進貨費用攤計(Prime) 的新增/修改/刪除/瀏覽權限。
  • 基礎資料:下列主檔/單據會直接影響本單能否正確帶值與攤計——
資料 影響的結果
進貨/暫收單(同收料單號 Receiveing#) 表頭與品項明細(detail2)的來源;FOB 金額、品項清單由此而來
廠商主檔(報關行/保險/運送/拖運/其他廠商) 表頭各家承運廠商欄(Broker Co.Trucking Co.MISCAdditional2~4)的代號查找
應付帳款(A/P)單據 查詢費用 A/P 能否查到對應的付款單號

需先有對應的暫收/進貨資料

存檔時系統會以收料單號(Trno)回查暫存進貨檔。若該單號在系統中查不到對應的暫收/進貨資料,會擋下存檔(詳見常見問題)。請先完成進貨,再以同一單號開立費用攤計單。

操作步驟

新增一張費用攤計單

  1. 在工具列按 新增。系統建立一張空白表頭。
  2. Receiveing#(收料單號)輸入要攤計費用的進貨單號——這是本單的主鍵。
  3. 填入表頭基本資料:Tr Date(交易日期)、Invoice No(發票號)、Registration#(報單號)、Bill Of Lading#(提單號)。
  4. 在中段的廠商區,依各項費用的承辦廠商,於 Broker Co.Insurance Co.Freight Co.Trucking Co.MISCAdditional2~4廠商查找選入廠商代號;右側對應欄位填入各家的 Inv#(發票號)與 $(金額)。
  5. 在貨櫃明細(上方格線)逐櫃登錄 Container#/Container Size 與該櫃的各項費用(海運、關稅、處理費、碼頭費、拖運、保險、Additional Fee 1~4 等)。
  6. 在品項明細(下方格線)登錄各 SKU 的數量、FOB 單價、重量、材積、稅率等資料。
  7. 確認表頭下方的彙總欄(Original Cost(A)C.O.G.S.(B)Container Value)後,按 存檔。存檔前系統會自動完成攤計與檢核(見欄位連動與附加功能)。

彙總三欄是唯讀的

Original Cost(A)C.O.G.S.(B)Container Value 三欄為唯讀,由系統依明細計算後帶出,不需也不能手動輸入。

修改 / 刪除

  1. 查詢 或瀏覽定位到要處理的單據(用 Receiveing# 查找)。
  2. 修改 後調整貨櫃或品項明細的費用,再按 存檔;系統會重新攤計一次。
  3. 確認整張單可作廢時按 刪除

查詢對應的應付帳款

  1. 開啟(或定位)任一張已存檔的費用攤計單。
  2. 按延伸功能 查詢費用 A/PExtendedFunction1)。系統會列出本單各項費用金額與其對應的 A/P 單號清單;尚未產生 A/P 的費用以 ----------- 顯示。詳見欄位連動與附加功能

欄位說明

表頭欄位

欄位 必填 說明/格式/預設
Receiveing#(收料單號 Trno) 本單主鍵;存檔時必填,且需對應到系統中既有的進貨資料
Tr Date(交易日期) 短日期格式
Invoice No(發票號) 進貨發票號
Registration#(報單號) 進口報單號
Bill Of Lading#(提單號) 海運提單號
Broker Co./Insurance Co./Freight Co./Trucking Co.(報關/保險/運送/拖運廠商) 以廠商查找選入代號
MISC/Additional2~4(其他廠商) 4 個額外承運廠商欄位
Inv#(各廠商發票號) 對應每家廠商的發票號
Broker$/Insurance$/Freight$/Trucking$/Additional Fee 1~4(各費用金額) 本幣金額;存檔時會由明細彙總覆寫(見下節)
Notes/Notes-Out(內部/對外備註) 文字備註
Original Cost(A) 唯讀 =品項明細 FOB 金額合計
C.O.G.S.(B) 唯讀 =品項明細到岸成本(Landed Cost)合計
Container Value 唯讀 =(B−A)/A × 100,四捨五入 2 位;A 為 0 時為 0

貨櫃明細(上方格線)

欄位 說明
Line#/Container#/Container Size 行號、貨櫃號、櫃型
Ocean Frt(海運)/Duty(關稅)/Proc. Fee(處理費)/Harbor Fee(碼頭費) 該櫃各項費用
Truck Fee(拖運)/Insurance(保險)/Additional Fee 1~4 該櫃其餘費用
FOBAmt(FOB 金額) 該櫃 FOB 金額;存檔時由所屬品項彙總帶入
Landed Cost(到岸成本) =海運+關稅+處理費+碼頭費+雜費+FOB+拖運+Additional Fee 1~4(存檔時計算)
%Container Value(漲幅) =(到岸成本−FOB)/FOB,四捨五入 2 位

品項明細(下方格線)

欄位 說明
Line No/Container No/SKU/SKUDescription 行號、所屬貨櫃、品號、品名
Carton Total/HTSCode 箱數、HTS 稅則號
Net/Gross Weight KGS/LBS/Cubic Meter/Cubic Feet 淨重、毛重、磅、材積
Certification Fee(認證費)/Duty Rate(關稅率)/Duty(關稅) 各品項費用與稅率
Quantity(數量)/FOBUnit Price(FOB 單價)/FOBAmount(FOB 金額) 數量與 FOB 金額
CIFUnit Price(CIF 單價) 存檔時 =該品項分攤後的到岸成本 ÷ 數量
Landed Cost(到岸成本) 存檔時依貨櫃到岸成本按 FOB 比例分攤而得

欄位連動與附加功能

本單最核心的價值在「存檔當下的逐層攤計」。以下把實際程式(VM 的 AfterAddNew、Save BLL 的 HandleDataBeforeEndEdit、明細 Source 的 SetLandedCostSetContainerValue、SqlQuery BLL 的費用查詢)轉成使用者看得懂的「當你⋯,系統會⋯」。

新增後的彙總

  • 當你按 新增AfterAddNew,系統會立刻把表頭三欄算好:
    • Original Cost(A) = 品項明細所有 FOBAmount 加總。
    • C.O.G.S.(B) = 品項明細所有 Landed Cost 加總。
    • Container Value = A 為 0 時顯示 0;否則 = (B−A) / A × 100,四捨五入 2 位(代表這批貨因進口雜費而比 FOB 漲了百分之幾)。

存檔時的逐層攤計(HandleDataBeforeEndEdit)

存檔前,系統會以「貨櫃號(Container#)」把品項明細與貨櫃明細對應起來,逐筆貨櫃明細依序做下面幾件事:

  1. 當貨櫃明細沒填貨櫃號時,該貨櫃列會被標記為刪除(不納入計算)。
  2. 當貨櫃明細有貨櫃號時,系統先把同一櫃所有品項的 Duty(關稅)FOBAmount 加總,回寫到該櫃(貨櫃明細)的對應欄位。
  3. 系統重算該櫃的到岸成本與漲幅SetLandedCostSetContainerValue):
    • 貨櫃 Landed Cost = 海運+關稅+處理費+碼頭費+雜費+FOB+拖運+Additional Fee 1~4。
    • 貨櫃 %Container Value = FOB 不為 0 時 = (到岸成本−FOB)/FOB,四捨五入 2 位。
  4. 把貨櫃到岸成本按 FOB 比例分攤回該櫃每個品項
    • 品項 Landed Cost = 貨櫃到岸成本 × (品項 FOBAmount ÷ 貨櫃 FOBAmount),四捨五入 4 位(FOB 為 0 時為 0)。
    • 品項 CIFUnit Price = 品項到岸成本 ÷ 數量,四捨五入 4 位(數量為 0 時為 0)。
  5. 尾差自動歸位:若同櫃各品項分攤後的到岸成本加總和該櫃總到岸成本有差,系統會把差額補到該櫃到岸成本最高的那一筆品項上,確保櫃內加總精確相符。

存檔時的表頭費用回寫

  • 當你存檔時,系統會用未被刪除的貨櫃明細,把各類費用彙總後覆寫表頭金額
    • Broker$ = 各櫃 (關稅+處理費+碼頭費+雜費) 之和。
    • Insurance$ = 各櫃保險之和。
    • Freight$ = 各櫃海運之和。
    • Trucking$ = 各櫃拖運之和。
    • Additional Fee 1~4 = 各櫃對應 Additional Fee 之和。

表頭金額以明細為準

因為表頭費用金額在存檔當下會被明細彙總覆寫,請以貨櫃明細為主要登錄入口;直接改表頭金額而沒有相應的明細,存檔後會被蓋回。

存檔檢核

  • 當收料單號(Receiveing#)空白時,存檔被擋下,並提示請輸入收料單號。
  • 當收料單號在系統中查不到對應的(暫存)進貨資料時,存檔被擋下並提示 Trno not exists。換言之,本單必須掛在一張真實存在的進貨之上。

延伸功能:查詢費用對應的應付帳款

  • 當你按 查詢費用 A/PExtendedFunction1,系統以本單的收料單號呼叫查詢,逐項列出 8 類費用(Broker、Insurance、Freight、Truck、Additional Fee 1~4)的金額及其對應的 A/P 單號;該費用尚未轉出應付的,單號以 ----------- 顯示。執行後畫面會重新整理。
  • 這讓你不必離開本單,就能對照「這筆進口費用到底開到哪幾張付款/應付單」。

延伸功能 2 為保留

工具列的延伸功能 2(ExtendedFunction2)目前在程式中為保留(內容已註解、尚未啟用),按下後僅重新整理畫面,不會有額外動作。

常見問題

按存檔時跳出「請輸入收料單號」或無法存檔?

收料單號(Receiveing#/Trno)是本單主鍵,必填。請先在表頭填入要攤計費用的進貨單號再存檔。

存檔時提示「Trno not exists」?

系統會用收料單號回查暫存進貨檔,找不到對應進貨資料就會擋存。請確認該單號確實有一張已存在的暫收/進貨單,再以同一單號開立費用攤計。

Landed Cost(到岸成本)/CIF 單價一直是 0?

到岸成本是存檔當下才依貨櫃與品項做攤計的。常見原因:貨櫃明細沒填貨櫃號(該貨櫃列會被當作刪除列略過,掛在其下的品項自然算不到費用)、或該貨櫃彙總後 FOBAmount 為 0(把貨櫃到岸成本按品項 FOB 比例分攤時分母為 0,分攤值為 0)。請先補齊貨櫃號與品項 FOB 金額再存檔。

我直接改了表頭的 Broker$/Freight$ 等金額,存檔後又變回去?

這是正常的。表頭各類費用金額在存檔時會由貨櫃明細彙總覆寫。請改在貨櫃明細登錄費用,表頭金額會自動帶出。詳見欄位連動與附加功能

Container Value(漲幅)為什麼是 0 或很奇怪的數字?

Container Value = (C.O.G.S.−Original Cost)/Original Cost × 100。當 Original Cost(A) 為 0(品項 FOB 金額尚未填或全為 0)時,系統直接顯示 0。請確認品項明細已輸入 FOB 數量與單價。

「查詢費用 A/P」列出的單號都是虛線(-----------)?

虛線代表該項費用尚未產生對應的應付帳款(A/P)單據。待相關付款/應付流程建立後,再次查詢即會帶出單號。

相關功能


需補截圖清單

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

  1. trrafeeprime-step1.png — 表頭整體(收料單號、各承運廠商與費用區、彙總三欄)
  2. trrafeeprime-step2.png — 貨櫃明細格線(含各項費用與 Landed Cost)
  3. trrafeeprime-step3.png — 品項明細格線(SKU、FOB、攤計後的 Landed Cost/CIF 單價)
  4. trrafeeprime-step4.png查詢費用 A/P 彈出的費用與 A/P 單號對照訊息