大型系統普遍需要強大查詢功能,但廠商查詢器綁定自家產品。為讓不懂資料庫結構、不會 SQL 的業務用戶也能靈活取數,耗時一月開發了 DataGetter,核心在於業務對象—特征兩層模型。
| 概念 | 定義 |
|---|---|
| 業務對象 | 對應資料庫基表記錄,分為實體定義表與關係定義表。 |
| 狹義特征 | 基表中的業務字段,即基本特征。 |
| 廣義特征 | 含狹義特征、傳遞特征、匯聚特征、衍生特征。 |
| 傳遞規則 | 對象關係 n:1 時,B 的特征可傳遞給 A 直接視為 A 特征。 |
| 匯聚規則 | 對象關係 1:n 時,B 的特征可匯聚為 A 特征(如求和、平均)。 |
| 衍生特征 | 單行記錄多字段經固定計算得出(如日期→年份),不直接存庫。 |
例:合同管理人員需「合同代碼、簽訂日期、承包商名稱、合同總額、累計成本、本年工程量」。
特征分散於多表,正是查詢器開發難點。兩層模型對用戶隱藏資料庫結構,直接展現業務對象及其所有特征,用戶只需「找對象、選特征、定條件、點取數」。
業務對象—特征兩層結構,將「資料庫結構」轉譯為「業務語義」,讓查詢器真正服務於業務邏輯而非技術細節。擴充機制保證長期適應業務變化,是通用查詢工具的關鍵架構抉擇。