程式資訊
- 程式 ID:
SPDATA - 所屬子系統:G.採購付款
- 狀態:stable
廠商基本資料¶
功能簡介¶
「廠商基本資料」是採購模組的廠商主檔維護程式,用來建立與維護每一家供應商的代號、名稱、地址、聯絡人、稅別、幣別、付款條件等資料。它是整個採購流程的源頭:廠商報價、採購單、進貨、應付帳款都靠這裡建立的廠商代號當作關聯主鍵。採購人員與帳務人員是主要使用者。
畫面以多頁籤呈現,左半部固定維護廠商的主資料,右側與下方頁籤則整合了報價、採購單、進貨、加工與應付帳款的即時查詢,方便在維護廠商時直接檢視它的往來實績。
資料表結構
主檔為 廠商資料表,明細含三張子表:聯絡人(廠商資料表_1)、廠商分類(廠商資料表spec,自定義分類)、自定義欄位(廠商資料表_2,動態欄位)。
前置需求¶
- 權限:採購 →
SPDATA 廠商基本資料的新增/修改/刪除/瀏覽/列印權限。 - 頁籤額外權限:右側整合查詢頁籤各自受對應程式的瀏覽權限控管,沒有權限的頁籤不會顯示——
| 頁籤 | 需要的瀏覽權限 |
|---|---|
| 應付帳款 | PAYMNT |
| 廠商報價 | SPPDT |
| 採購單 | PURCH |
| 進貨 | RECEIVE |
| 加工資料 | TRWKMA |
- 基礎資料:下列主檔/參數會影響本表單可選的內容與帶出的說明——
| 資料 | 影響的結果 |
|---|---|
| 幣別資料 | 幣別 下拉;新增時預設帶本位幣 |
| 稅別主檔 | 稅別 搜尋與帶出的稅別名稱 |
| 收付條件 | 收付條件號 搜尋與帶出的說明 |
| 群組(族群)主檔 GRPM | 群組代號 搜尋、群組說明,以及自定義分類的選項來源 |
| 會計科目主檔 | 科目代號 與帶出的科目名稱 |
| 鍵值參數(SMEMS 維護的 C201/C202/C203/C228/C262/C283 等代碼表) | 運送方式、交易條件、付款方式、廠商類別、等級等下拉內容 |
動態欄位定義(SP1 範本、cmb_235) |
「其他」頁的自定義欄位格線 |
| 自定義分類字典(C232/C233/C234) | 「其他」頁 設定 鈕跳出的型態/品質認證/廠商分類選單 |
操作步驟¶
廠商主檔以標準的「新增/修改/刪除/瀏覽」工具列操作,搭配頁籤切換查看不同面向的資料。
新增廠商¶
- 按工具列
新增。系統自動帶入兩個預設值:- 登錄日期 = 系統當天。
- 幣別 = 本位幣(
Context.Env.LocalCurrency)。
- 在「基本資料1」頁輸入廠商代號(紅字必填,最長 10 碼)與廠商簡稱。
- 輸入廠商簡稱後跳出欄位時,系統會自動產生速查碼(見欄位連動與附加功能)。
- 依需要填入地址、聯絡人、稅別、幣別、付款條件等欄位,並切到「基本資料2」「其他」頁補齊英文資訊、認證評鑑與自定義欄位。
- 按
儲存。存檔前系統會檢核廠商代號與幣別不可為空(見常見問題)。
修改/刪除¶
- 用工具列移動鈕或
搜尋找到要維護的廠商。 -
按
修改進入編輯狀態,調整欄位後儲存;或按刪除移除該廠商。修改中右側查詢頁籤會停用
進入新增/修改狀態時,右側的整合查詢頁籤(廠商報價、採購單、進貨、加工資料、應付帳款)會被停用並自動切回「基本資料1」,避免在編輯主檔時誤觸查詢。存檔回到瀏覽狀態後才會重新啟用。
切換頁籤查詢往來實績¶
- 在瀏覽狀態下,點右側頁籤即可查詢目前這家廠商的:
- 廠商報價/採購單/進貨/加工資料:系統自動把查詢條件的起訖廠商鎖定為目前廠商代號後執行查詢。
- 應付帳款:列出該廠商的未付(或未收)帳款明細與彙總(見欄位連動與附加功能)。
- 統計資料:顯示該廠商的特殊統計查詢結果。
列印¶
- 透過工具列
列印產生廠商基本資料報表(對應 VFPSPDATA_P報表)。
欄位說明¶
基本資料1(主資料)¶
| 欄位 | 必填 | 說明/格式/預設 |
|---|---|---|
| 廠商代號 | ✔ | 主鍵,最長 10 碼;不可為空、不可為 +++ |
| 廠商簡稱 | ✔ | 最長 20 碼;輸入後自動帶速查碼 |
| 統一編號 | — | 廠商統編 |
| 速查碼 | — | 由廠商簡稱自動產生,可手動覆寫 |
| 幣別 | ✔ | 交易幣別;新增預設本位幣 |
| 停用 | — | 是/否;停用後不再出現在採購挑選清單 |
| 建檔日期 | — | 系統產生、唯讀 |
| 廠商名稱 | — | 全名 |
| 扣庫存 | — | 扣庫存百分比 |
| 群組代號 | — | 族群代號,帶出群組說明;自定義分類依此載入選項 |
| 公司/聯絡/工廠/送貨地點+郵遞號 | — | 各式地址,皆為超連結欄位可開地圖 |
| 運送方式 | — | 下拉(代碼表 C201) |
| — | 電子郵件 | |
| Website | — | 網址超連結 |
| 廠商類別 | — | 下拉(本頁代碼表 C228;基本資料2 另有一個 C262 下拉寫入同一欄位) |
| 公司電話/公司傳真/工廠電話/工廠傳真 | — | 公司與工廠通訊 |
| 負責人/聯絡人1/聯絡人2/會計+電話 | — | 主要往來窗口 |
| 供應項目 | — | 文字描述 |
| 科目代號 | — | 會計科目,帶出科目名稱 |
| 稅別 | — | 搜尋帶出稅別名稱 |
| 帳款起始日 | — | 帳款計算的起算日(數字) |
| 收付條件號 | — | 搜尋帶出收付條件說明 |
| 等級/交易條件/付款方式 | — | 下拉(代碼表 C283/C202/C203) |
| 關係人 | ✔ | 是/否(紅字) |
| 付款日遇假日提前 | ✔ | 是/否(紅字) |
| 收付款廠商 | ✔ | 代付/代收廠商代號,帶出收付款簡稱(紅字) |
| 備註 | — | 多行文字 |
基本資料2(延伸資訊)¶
| 欄位 | 必填 | 說明 |
|---|---|---|
| 資本額(萬)/員工人數 | — | 唯讀識別列(隨主檔顯示) |
| 廠商類別 | — | 下拉(代碼表 C262) |
| 廠商別/採購期別/abc分類/重要度 | — | 分類與評等用 |
| 區域 | — | 下拉(代碼表 C21582) |
| 英文名稱/英文地點/發票地點+郵遞號 | — | 英文與發票資訊(地址可開地圖) |
| 營業登記證/評鑑方式/公司客號/股票代號/公司證明/交貨日期 | — | 認證與評鑑 |
| 費率/付款天數/其他加成(%) | — | 費用條件 |
| 供應項目/設備狀況/量測器具 | — | 供應與設備能力 |
其他(自定義)¶
| 欄位 | 必填 | 說明 |
|---|---|---|
| 型態/品質認證/廠商分類 | — | 文字欄,可按各自的 設定 鈕由字典挑選後帶入 |
| 自定義欄位格線 | — | 依 SP1 範本動態產生的欄位,存檔時寫回 廠商資料表_2 |
聯絡人明細(畫面下方格線)¶
| 欄位 | 說明 |
|---|---|
| 序號/人員別/員工編號/姓名/部門/職稱/職務內容 | 聯絡人基本資料 |
| 電話/傳真/手機/Email/Skype/Facebook/呼叫器 | 各式聯絡方式 |
| 郵遞區號/地址/代理人/代理人電話/備註 | 補充資料 |
聯絡人空列不存
存檔時系統會把姓名為空的聯絡人列標記為刪除,不會寫回資料庫,所以不必手動清掉多餘的空白列。
欄位連動與附加功能¶
這一節整理「輸入某欄位後會發生什麼」與「按某按鈕會做什麼」,全部對照新版 C# 與 VFP 原程式行為。
新增時的預設值(AfterAddNew)¶
- 當你按
新增,系統會把登錄日期設為當天、幣別設為本位幣,並在自定義欄位格線預先補滿 10 列空白序號供輸入。- 對應 VFP
addagain:以「指定幣別」帶入幣別並重整設定格線——新版以本位幣對應「指定幣別」屬於等價處理。
- 對應 VFP
廠商簡稱 → 自動帶速查碼¶
- 當你在廠商簡稱輸入文字並離開欄位(提交
廠商簡稱綁定),系統會呼叫GetQuickFindCode("vendor", 廠商簡稱)取簡稱前 6 碼送TWORK_SYS_PHONETIC1產生注音碼,再取前 3 碼回填速查碼。 - 注意:新版每次提交廠商簡稱都會重算並覆寫速查碼,即使你先前手動填過速查碼也會被蓋掉。若要保留自訂速查碼,請在最後才調整速查碼、之後不要再改廠商簡稱。
- 對應 VFP
廠商簡稱.LostFocus:VFP 原程式只有在新增/修改(OPMODE 1/2/8)且速查碼為空時才用DARB_PHONETIC1產生速查碼,故 VFP 不會覆蓋已填值——此「不覆蓋」保護在新版未實作。
- 對應 VFP
帶出說明文字的搜尋欄位¶
- 輸入科目代號會帶出科目名稱;輸入收付款廠商代號會帶出收付款簡稱——這些說明欄都是透過
DescriptionHelper(GetGLAccountDescription/GetCustVendDeptName)即時查出來顯示,本身不另存。 - 稅別搜尋帶出稅別名稱、收付條件號搜尋帶出說明、群組代號搜尋帶出群組說明,移動到別筆資料時這些說明會一併刷新(對應 VFP
moverec_sk_cursor把 SK 快取的名稱補上)。
「複製」鈕:把公司地址套到其他地址¶
- 在「基本資料1」地址區按
複製(CopyAddressToBill),系統會把公司地點/公司郵遞號一次套用到發票地點、聯絡地點、工廠地點及各自郵遞號,省去重複輸入。
地址欄超連結開地圖¶
- 公司/聯絡/工廠/送貨地點(基本資料1)與英文/發票地點(基本資料2)都是超連結欄位,點擊會以地圖開啟該地址(對應 VFP 地址欄
DblClick → U_IELINK('MAP'))。 - Website 欄為網址超連結(
HyperLinkType=Website);Email 欄為一般文字欄,未掛超連結。
群組代號 → 自定義分類(右上格線)¶
- 進入修改狀態時,系統依主檔的群組代號載入該群組定義的分類選項清單,填入右上「自定義」格線每一列的下拉內容。
- 按自定義區的
設定(SelfDefinedExecute),系統會以目前群組代號重建分類列:先把現有分類列標記刪除,再依群組定義逐項新增分類,並把每個分類的可選內容載入下拉(第一個值預設選取)。- 對應 VFP
設定鈕.Click → getgroupsub:用DARB_QRY_GINVENT取群組明細展開成分類/分類內容。
- 對應 VFP
「其他」頁的三個 設定 鈕(型態/品質認證/廠商分類)¶
- 按各欄旁的
設定鈕會用ShowContentWindow開啟設定廠商屬性小視窗,清單來源分別是:- 型態 ← 字典
C232 - 品質認證 ← 字典
C233 - 廠商分類 ← 字典
C234
- 型態 ← 字典
- 在小視窗勾選後按確定,所選結果會回填到對應欄位。
切換整合查詢頁籤時自動帶條件(AfterMoverRecord)¶
- 每次移動到不同廠商,系統會把廠商報價/採購單/進貨/加工資料四個查詢頁籤的「起訖廠商」條件鎖定為目前的廠商代號,並重設各頁查詢狀態,讓你切過去就看到這家廠商的資料。
- 對應 VFP
PF.Page4~7.Activate:切到報價/採購/進貨/加工頁時自動把起訖廠商設成本廠商再執行查詢。
- 對應 VFP
應付帳款頁的彙總(SpdataAPNotPay)¶
- 切到「應付帳款」頁時,系統以目前廠商代號呼叫
APPaymentQuery(SPTWORK_QRY_SPDATA1)撈未付明細,並彙總出原幣金額/本幣金額/未付原幣/未付本幣/超過 90 天金額。 - 明細會依到期日標記:到期未滿 90 天標為逾期、超過 90 天另計入「超過 90 天」彙總。
存檔時的處理(SpdataSave)¶
- 存檔前檢核廠商代號不可空白/不可為
+++、幣別不可空白,任一不符會擋下並提示。 - 姓名為空的聯絡人列自動標記刪除;自定義欄位格線(
其他頁)會整批轉換寫回廠商資料表_2。 - 存檔成功後重新整理廠商速查暫存表(
Sk_spdata),讓其他單據的廠商搜尋立即看到新資料。
規劃中/未提供
VFP 原程式在刪除廠商時會視「聯絡單id/工作流程」狀態自動產生聯絡單;此聯絡單連動目前以工作流程/聯絡單模組另行處理,於本表單不需手動操作。
常見問題¶
按儲存時跳出「請先輸入 廠商代號」或「請先輸入 幣別」?
存檔前系統強制檢核:廠商代號不可為空、也不可為 +++;幣別不可為空。新增時幣別會自動帶本位幣,若被清空就會被擋下。補齊後再存即可。
輸入廠商簡稱後速查碼沒有自動帶出,或把我手填的速查碼蓋掉了?
速查碼是在提交廠商簡稱(離開欄位)時,由系統取簡稱前 6 碼產生注音碼並回填。新版每次提交廠商簡稱都會重算覆寫,不論速查碼原本是否已有值;若你需要自訂速查碼,請在確定不再修改廠商簡稱之後,最後再調整速查碼。若完全沒帶出,請確認廠商簡稱非空白且處於新增/修改狀態。
右側的廠商報價/採購單/進貨/應付帳款頁籤看不到,或點不動?
這些頁籤各自需要對應程式的瀏覽權限(報價=SPPDT、採購單=PURCH、進貨=RECEIVE、加工=TRWKMA、應付帳款=PAYMNT),沒有權限的頁籤不會出現。另外在新增/修改狀態下這些查詢頁會被停用,存檔回到瀏覽狀態後才能使用。
自定義分類(右上格線)的下拉沒有可選內容?
自定義分類的選項來自群組代號所屬群組的定義。請先在主檔填好群組代號,再按自定義區的 設定 鈕重新載入;若該群組沒有定義分類明細,下拉自然是空的。
聯絡人格線留了空白列,存檔後不見了?
這是正常行為。存檔時系統會把姓名為空的聯絡人列視為無效並標記刪除,因此空白列不會寫回資料庫,不影響其他已填的聯絡人。
刪不掉某家廠商?
若該廠商已被採購單、進貨、應付帳款等單據引用,伺服器端會擋下刪除。建議改用停用(基本資料1 的「停用」設為是),保留歷史關聯但不再出現在新單據的挑選清單。
相關功能¶
需補截圖清單
以下截圖待 runtime 驗收後補拍(放 docs/G-Purchasing/images/):
spdata-step1.png— 「基本資料1」主資料頁全貌(含工具列)spdata-step2.png— 新增時自動帶入的登錄日期/幣別預設值spdata-step3.png— 「其他」頁的型態/品質認證/廠商分類設定鈕與自定義欄位格線spdata-step4.png— 右側整合查詢頁籤(建議以「應付帳款」彙總為主畫面)