查詢引擎培訓講義_第1頁
查詢引擎培訓講義_第2頁
查詢引擎培訓講義_第3頁
查詢引擎培訓講義_第4頁
查詢引擎培訓講義_第5頁
已閱讀5頁,還剩42頁未讀 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

NC50查詢引擎使用介紹報表開發的困惑開發工作量大程序員在通用軟件中針對每個查詢報表需求進行開發的方案已經變得不太現實,業務模型難以復用復雜的業務邏輯和大量數據加工算法各種各樣的數據交叉和數據處理手段等等;靈活、友好、可視化、個性化的設計界面,豐富的展現控件和統計圖表個性化需求多個性化報表壓力很大需求背景與產品定位用戶對查詢報表的個性化需求與有限開發人員之間的矛盾查詢報表的復雜性與業務實施人員專業開發能力之間的矛盾一個面向高級實施人員和普通開發人員的查詢建模產品全面支持復雜查詢的設計和個性化的報表展現查詢引擎整體應用架構示意圖對象管理對象管理對象樹(ObjectTree):一個支持層次管理的數據結構,維護自身的加載、存儲和節點的目錄管理,每個節點的信息主體存儲在數據庫的一個BLOB字段中。對象樹上的節點通常分為目錄(Folder)和對象兩類,支持快速定位(在樹獲得焦點時用ctrl-f快捷鍵可彈出查找對話框,支持按編碼或名稱來模糊查找)。對象的唯一標識是編碼而不是顯示名稱,一個查詢對象或是格式設計對象可以有多個顯示名稱但是只能有唯一的編碼。在查詢或格式子樹下,可以將一個對象從某位置拷貝或移動到另一個位置。請注意這里的復制粘貼都是在同一棵樹下的,如果復制格式設計對象到查詢對象樹下則會出錯。對象管理對象支持導入導出導入導出XML文件,可用于對象的跨數據庫復制。注意切換數據源在導出查詢對象或界面對象時,需將其引用的查詢對象一并導出才有意義導入不能違反對象主鍵及名稱的唯一性約束。·

屬性框(ObjectInspector):自動顯示對象的屬性和取值的控件,取值部分會根據屬性的數據類型采用不同的渲染器來展示,不同的編輯器來編輯。多數據源多數據源運作機制:查詢引擎支持這樣的模式——NC業務在數據源A下運行,查詢引擎的定義放在數據源B,通過引擎定義的查詢可以到數據源C去執行。多數據源的配置多數據源的配置有效數據源:啟動中間件時的所有能夠連接的合法數據源,實際上也就是prop.xml文件中的所有定義過并且能夠正常連接的數據源。查詢執行可用數據源:查詢引擎所能夠引用的執行數據源列表,查詢引擎管理中所有的查詢模型的取數數據源范圍就在這個列表中定義。請注意一個查詢執行數據源必須是一個有效數據源。數據加工數據源:查詢引擎中高級功能“數據加工”所使用的數據源,資源權限資源權限查詢引擎支持對不同公司的不同用戶授予全部權限或瀏覽權限。全部權限是指所有查詢、格式對象的設計和瀏覽權限,瀏覽權限是指能夠瀏覽指定格式對象的報表展現。查詢模型查詢模型的定義包括參數定義、SQL設計(含交叉定義)、SQL整理、數據加工、穿透規則等幾部分,其中穿透規則描述的是本查詢與外部查詢的通信關系,剩余部分都用于描述查詢內部的屬性。查詢設計態和運行態的基本流程查詢界面參數控制參數定義:用于定義本查詢內部引用的所有參數,其中參數名要保證互不相同。數據類型包括自由錄入、枚舉、參照幾種,當類型為枚舉時,枚舉項為用“@”分隔的枚舉值,或者是一個單字段的查詢SQL;當類型為參照時,枚舉項為基礎參照名,或者是用尖括號括起的自定義參照的類名參數引用參數引用:參數可在SQL設計的篩選條件頁簽引用。當篩選條件是待定條件的時候,雙擊“值”,文本框,就可以彈出參數選擇對話框,點擊選擇對應的參數即可。參數設置運行態要求用戶首先對參數進行設置,這與查詢模板的使用類似。當報表引用了多個查詢時,參數將通過多頁簽設置,每個頁簽代表一個查詢。查詢模型——SQL向導設計手工設計SQL設計-數據字典NC數據字典提供了統一的數據建模平臺,支持對各種數據庫對象進行管理,維護這些物理對象的邏輯屬性,并向外系統提供訪問數據庫邏輯信息的接口。支持導入自己定義的數據庫表,生成自定義的數據字典表格對象,包括目錄、表、視圖、字段、外鍵等信息SQL設計-向導設計表定義:即SQL語句中的from部分,可以利用數據字典選擇庫里的數據表,也可以選擇查詢對象,從而實現查詢的集成(基于查詢結果定義新的查詢)。連接定義連接定義:即SQL語句中的join部分(表間連接關系),支持典型模式和高級模式,典型模式實際就是關系數據庫中的單鍵連接,連接字段只有一個,并且操作符都是常見的’=><’,而高級模式可以自由設置連接表達式,支持多鍵連接。連接定義典型模式連接定義高級模式字段定義字段定義:即SQL語句中的select部分,可以定義任何SQLSERVER語法支持的查詢表達式,但要保證字段別名不重復且使用規范名稱(以字母開頭、由字母、數字、下劃線組成的字符串,且不能使用SQL保留字)。如果使用了聚集函數,則由系統自動完成groupby部分。表達式生成器篩選條件定義篩選條件定義:即SQL語句中的where部分,可定義確定條件和待定條件。如果是待定條件,在值編輯框獲得焦點時雙擊編輯框可彈出參數界面并作引用(或者在值編輯框獲得焦點時按F12鍵或者雙擊彈出參數引用框);如果是固定條件,在值編輯框獲得焦點時按F11鍵或者雙擊可彈出環境變量引用框,按F12鍵可彈出所引用的基礎數據表的參照。排序字段定義排序字段定義:即SQL語句中的orderby部分由查詢設計生成的SQL語句向導設計完成后在查詢定義框的南部面板鼠標雙擊可彈出向導生成的等效SQL(待定條件全用(1=1)代替)。該功能可以用來檢查SQL語句是否有錯SQL設計-手工設計手工設計是支持自由SQL的方式,由于復雜SQL在解析、適配、執行等方面的不穩定性較大,因此不推薦普通用戶使用。數據交叉-投影交叉投影交叉(第一類交叉): 假定有一個查詢SQL,其查詢結果是單行單列的匯總值,另外還有兩組WHERE條件的序列,分別為橫向序列(WhereX1、WhereX2、……、WhereXn)和縱向序列(WhereY1、WhereY2、……、WhereYn),則數據矩陣A(aij)對應的結果集成為投影交叉,如果aij是WhereXi和WhereYj同時作用在上述SQL上獲得的結果。原始數據(無交叉)投影交叉設置投影交叉結果投影交叉屬于查詢行為,適用于行列設置都已在表樣中固定的報表,其交叉結果嚴格遵循表樣格式,其行列結構不會受查詢數據的影響;數據交叉-旋轉交叉旋轉交叉(第二類交叉):此類交叉用于顯示表中某幾個字段(稱為交叉值字段)的統計值,并將其分組放置在查詢結果中,一組列在數據表的左側(稱為交叉行字段),一組列(稱為交叉列字段)旋轉到數據表的上部成為列表頭,統計值則放在對應的交叉單元。原始數據(無交叉)旋轉交叉設置旋轉交叉結果旋轉交叉屬于數據加工行為,其交叉后的行列結構在查詢出數據之前不可預料,多用于完全真實地對原始數據進行動態處理。SQL整理SQL整理(SQLRepair):指在SQL查詢之前,對SQL所作的調整。通常會根據參數的不同,對查詢的表、字段或條件等信息進行增補或修改。數據加工數據加工(DataProcess):數據加工是指某個(或某幾個)結果集在經過一系列加工算法的變換后得到另一個結果集,而后者通常是

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論