DCFP102進貨折讓應付沖帳傳票作業 畫面操作說明


系統說明文件:DCFP102Controller API


簡介

DCFP102Controller 是一組 Web API,用於進貨折讓應付沖帳傳票作業。該 API 包含多項功能,包括交易區分查詢、進貨折讓應付沖帳傳票暫存檔查詢、資料轉入、傳票生成,以及檢核 DC 代號等操作。本文將詳細描述每個 API 方法的運作流程、使用情境、輸入與輸出格式,以及檢核邏輯。


1. 交易區分查詢(GetBusTypeList)

目的

假設情境

使用者在進行進貨折讓資料管理時,需要選擇交易類型(例如:進貨折讓、代購折讓)。當使用者點擊前端的下拉選單時,前端會調用 GetBusTypeList API 來獲取交易類型選項。

運作流程

  1. 前端發送 GET 請求到 GetBusTypeList API。
  2. API 調用 _commonService.QueryBusTypeForBPTypeResult(),從資料庫中取得交易類型列表。
  3. API 返回交易類型的詳細資訊,包括代碼編號和代碼說明。
  4. 前端下拉選單顯示這些選項。

輸出結果(OutputList: CodeReference_OutputVo

範例結果

{
    "RESULT_CODE": "S0000001",
    "RESULT_MESSAGE": "查詢成功",
    "RESULT": [
        {
            "CODE_NO": "A",
            "CODE_DESC": "進貨折讓"
        },
        {
            "CODE_NO": "F",
            "CODE_DESC": "代購折讓"
        },
        {
            "CODE_NO": "99",
            "CODE_DESC": "全部"
        }
    ]
}

2. 進貨折讓應付沖帳傳票暫存檔查詢(Query)

目的

假設情境

使用者想要查詢某月份的進貨折讓資料,輸入查詢條件(結帳年月、結帳期間、DC 代號、交易區分),然後點擊查詢按鈕。

運作流程

  1. 使用者在查詢條件輸入框中填寫以下資訊:

  2. 前端將這些資訊打包成 JSON 格式,並發送 POST 請求到 Query API:

    {
        "P_YYMM": "202408",
        "P_SDATE": "2024-08-01",
        "P_EDATE": "2024-08-31",
        "P_DC_CODE": "DC001",
        "P_BUS_TYPE": "A"
    }
    
  3. API 調用 _service.QueryResult(inputVo),根據 DCFP102_InputVo 中的查詢條件到資料庫中檢索符合的進貨折讓資料。

  4. API 將查詢結果組合成 DCFP102Q_OutputVo 物件,並打包成 JSON 格式返回給前端。

輸入參數(InputList: DCFP102_InputVo

輸出結果(OutputList: DCFP102Q_OutputVo

範例結果

{
    "RESULT_CODE": "S0000001",
    "RESULT_MESSAGE": "查詢成功",
    "RESULT": [
        {
            "O_BUS_TYPE": "A",
            "O_ACCT_DATE": "2024-08-15T00:00:00",
            "O_CNT": 5,
            "O_AMT": 5000,
            "O_TAX": 250,
            "O_EXPECT": 200,
            "O_DIF": 50
        }
    ]
}

3. 資料轉入(Procedure_Ins_WDS_Data)

流程圖:流程圖

目的

假設情境

使用者從供應商那裡獲取了一份進貨折讓資料,並希望將這些資料匯入系統中。該 API 包含前端資料檢核,以確保資料的正確性。

運作流程

  1. 使用者點擊「資料轉入」按鈕,前端將相關資訊(如匯入月份、DC 代號、交易區分)打包成 JSON,並發送 POST 請求到 Procedure_Ins_WDS_Data API:

    {
        "P_YYMM": "202408",
        "P_SDATE": "2024-08-01",
        "P_EDATE": "2024-08-31",
        "P_DC_CODE": "DC001",
        "P_BUS_TYPE": "A"
    }
    
  2. 資料檢核

  3. 執行儲存程序

  4. 結果處理

輸入參數(InputList: DCFP102_InputVo

輸出結果(OutputList: DCFP102_OutputVo

範例結果

{
    "RESULT_CODE": "S0000001",
    "RESULT_MESSAGE": "預存程序 INS_WDS_DATA_A 執行完成",
    "RESULT": {
        "P_ERRMSG": ""
    }
}

4. 傳票生成(Function_DCFP102v)

目的

假設情境

使用者已經匯入了某月份的進貨折讓資料,並核對無

誤,然後希望生成對應的會計傳票。

運作流程

  1. 使用者點擊「生成傳票」按鈕,前端將條件打包成 JSON,發送 POST 請求到 Function_DCFP102v API:

    {
        "P_YYMM": "202408",
        "P_SDATE": "2024-08-01",
        "P_EDATE": "2024-08-31",
        "P_DC_CODE": "DC001",
        "P_BUS_TYPE": "A"
    }
    
  2. 資料檢核:API 對輸入資料進行檢核,確保內容正確。若檢核通過,執行 Function_DCFP102v 生成傳票。

  3. 結果處理:成功時,返回 "傳票產生完成" 訊息;若發生錯誤,返回錯誤訊息。

輸入參數

輸出結果(OutputList: DCFP102_OutputVo

範例結果

{
    "RESULT_CODE": "S0000001",
    "RESULT_MESSAGE": "傳票產生完成",
    "RESULT": {
        "P_ERRMSG": ""
    }
}

5. 檢核 DC 代號(CheckDCCode)

目的

假設情境

使用者在輸入 DC 代號時,想要確認該代號是否正確並存在於系統內。

運作流程

  1. 使用者在前端頁面輸入 DC 代號,並點擊「檢核」按鈕,觸發 API 調用。
  2. 前端將 DC 代號打包成 JSON 格式,發送 POST 請求到 CheckDCCode API:
    {
        "DC_CODE": "DC001"
    }
    
  3. 資料檢核流程:API 調用 _service.CheckDCCodeResult 對 DC 代號進行檢核,確認該代號是否存在於資料庫中。

輸出結果

範例結果

成功情況:

{
    "RESULT_CODE": "S0000001",
    "RESULT_MESSAGE": "檢核成功",
    "RESULT": true
}

無效情況:

{
    "RESULT_CODE": "S0010001",
    "RESULT_MESSAGE": "在參數檔中無 DC 代號",
    "RESULT": false
}

這就是 DCFP102Controller API 的文件,包括每個 API 方法的使用情境、運作流程、輸入與輸出格式,以及範例結果。