金蝶雲星空iis伺服器日誌
A. 金蝶雲星空插件實戰開發-新手入門教程-自定義WebAPI-1
本文面向雲星空二次開發新手,旨在闡述如何使用Postman模擬第三方系統更新采購訂單的全過程。開發環境包括Visual Studio 2019,開發語言為C#,星空版本為7.6.0,插件類型為自定義WebAPI。
首先,確認開發機已安裝金蝶雲星空系統和金蝶BOS IDE。推薦閱讀金蝶雲星空二次開發-知識地圖、金蝶雲星空插件實戰開發-新手入門教程-表單插件、金蝶雲星空插件實戰開發-新手入門教程-列表插件、金蝶雲星空插件實戰開發-新手入門教程-服務插件等文章以獲取背景知識。本教程的完整代碼請訪問文章末尾的鏈接。
星空系統集成包括WebAPI、WebService、ClientProxy三種方式。集成意味著與第三方系統的數據對接。WebAPI常用介面有:登錄驗證、查看單據、保存單據、批量保存、提交單據、審核單據、反審核單據、刪除單據、單據數據查詢、暫存單據、分配表單數據、下推、分組保存等。
使用WebAPI的一般步驟包括登錄、構建和傳遞Model數據包。WebAPI模擬錄單過程,依據傳入的JSON數據包構造欄位值,按順序填充欄位,觸發相關事件、實體服務和插件邏輯。構造完成後調用Save、Submit、Audit,觸發操作校驗、邏輯和單據插件邏輯。
錄入順序需遵循系統欄位列表屬性順序,否則存在覆蓋值問題。MVC結構研發者應熟悉.Net框架基礎結構,通過基礎管道中的HttpApplication和HttpContext處理請求。星空的自定義WebAPI繼承KDBaseService,請求路徑為xxx.common.kdsvc,通過反射執行操作。
開發流程如下:
1. 創建Visual C#類庫。
2. 引用星空系統類庫。
3. 編寫自定義WebAPI。
4. 編譯生成dll文件。
5. 部署。
6. 重啟IIS服務。
7. 使用Postman模擬請求。
創建Visual C#類庫後,引入星空系統類庫,編寫自定義WebAPI。代碼包括BusinessService.cs、Defineds.cs、Checker.cs、Formater.cs、BillHandler.cs等文件,分別負責程序邏輯、參數定義、參數檢查、格式化和單據操作。使用「BusinessService.cs」作為程序入口,定義保存、提交和審核的WebAPI方法。
在Defineds.cs文件中定義常量和參數結構,包括保存、提交、審核的WebAPI動作參數和客戶端請求參數、處理結果結構。獲取單據的FormId通常從官方文檔或BOS中查找。具體實現中,需要使用獲取的FormId和明細屬性Key進行參數校驗。
Checker.cs文件用於客戶端參數的校驗,確保參數符合WebAPI要求。在實際項目中,需對參數進行嚴格校驗。本教程作為入門指導,參數校驗較為簡單。
本教程分為兩部分,此為第一部分。第二部分將深入探討更復雜的自定義WebAPI開發。完成作業的讀者可留言交流,遇到問題亦可提問。教程同步發布於「代碼乾坤」公眾號和gitee代碼庫。