新四季網

基於元數據驅動的動態表單方法

2023-06-12 05:39:06

0〃StateComment=「「/>通過單元格元數據描述規則,可知該元數據信息描述了表單中一個叫「參數關係示意圖」(CellName=「參數關係示意圖」)的單元格,它是可選填項(Optioanl=「True」),可錄入的(Writable=「True」);單元格從第19行(BeginRow=「19」),第1列(BeginColumn=「1」)開始;該單元格的種類是圖片類型(Type=「Picture,,)。上述描述信息就描述了表單中一個完整單元格的各項結構信息。若干單元格的描述信息就組合成了對完整表單結構的描述。上述元數據信息的集合就是元資料庫,在實際的應用中元資料庫可以採用多種存儲方式。比如存儲在XML文件中、存儲在資料庫中或者以上兩者相結合的方式。3.通過元數據引擎從元資料庫中獲取表單元數據信息,向表單動態地加載元數據。系統建立表單元數據引擎,表單元數據引擎是用來處理元數據的系統程序,它包括表單元數據獲取程序和表單元數據解析程序。其中表單元數據獲取程序是資料庫訪問程序,通過訪問元資料庫中的元數據存儲表,讀取元數據信息;表單元數據解析程序是將獲取到的元數據信息,解析成界面描述。界面描述和單元格的元數據描述基本相似,不同之處在於指定了單元格在界面展示時使用的控制項,以及控制項中的數據。元數據引擎從元資料庫中獲取對應表單中各個單元格的元數據信息,在用戶界面中根據每一個單元格的位置和大小進行繪製。圖2是根據本發明向動態表單寫入數據的示例過程的邏輯流程圖。在塊502,元數據引擎根據元資料庫中對表單數據種類(表單數據種類是對用戶需要通過動態表單錄入的數據的分類,得到的種類和用戶的具體業務相關)的描述信息,獲取該數據種類下的所有可錄入的單元格的元數據描述(簡稱為可錄入項屬性)。它對應了動態表單界面中每一個供用戶錄入數據信息的單元格。當所有的可錄入項屬性獲取完畢,處理過程轉入到塊503。在塊503,元數據引擎根據元資料庫中對表單結構的描述,獲取所有可錄入項屬性。包括標題單元格和數據錄入單元格。獲取完畢後,處理過程轉入到塊504。在塊504,將在塊502獲取的可錄入項屬性和在塊503獲取的單元格進行匹配,並將匹配上的單元格數據設置到可錄入項屬性中。匹配是按照單元格中的名稱和可錄入項屬性名稱進行的,名稱一致時則認為該單元格和該可錄入項屬性是一對。一旦匹配完成,處理過程就轉入判定塊505。在判定塊505處,需要做出判定所有單元格均被處理了嗎?動態表單中所有的單元格都需要進行匹配。如果還有單元格沒有進行匹配,過程返回塊504處繼續匹配。如果所有的單元格都已經處理完成,所有設置了單元格數據的可錄入項屬性就形成了屬性數據集,處理過程將進入到塊506。在塊506中,根據屬性數據集,組織成有效的資料庫sql語句,將用戶在動態表單中填寫的數據寫入到資料庫中。寫入完成後,過程轉入塊507,至此整個處理過程結束。4.選擇表單功能集,動態生成用戶表單。元數據引擎對於每一個單元格通過單元格元數據信息中關於單元格類型的描述,選擇單元格具體的顯示控制項;並按照對應關係獲取相應的功能集,將此表單功能集設置到該控制項的相關事件中,當用戶對單元格進行操作時,響應的事件就會調用系統對不同單元格類型實現的功能方法,從而動態地生成用戶表單。圖3是根據本發明使用動態表單展示用戶數據的示例過程的邏輯流程圖。在塊602處,通過數據種類編號構造系統資料庫表,再利用數據編號查詢該表對應的用戶數據。返回用戶數據後,處理過程就轉入到塊603。在塊603,元數據引擎根據元資料庫中對模板數據種類的描述信息,獲取該數據種類下的所有錄入項的屬性。錄入項屬性對應了動態表單界面中每一個供用戶錄入數據信息的單元格。當所有的錄入項屬性獲取完畢,處理過程就轉入到塊604。在塊604,將在塊602中獲得的數據設置到塊603中獲得的錄入項屬性中,設置規則是通過數據的列編號和錄入屬性的編號進行匹配,如果數據的列編號和錄入屬性列編號一致時,則將數據設置到錄入項屬性的數據項中。設置完成後,處理過程就轉入到塊605。在塊605,通過數據編號獲取該數據所使用的表單。獲取展示數據的表單信息後,處理過程就轉入到塊606。在塊606,根據表單信息獲取整個表單結構信息,主要是表單中各單元格的信息,包括單元格的類型,單元格的位置等等。獲取完成後,處理過程就轉入到塊607。8在塊607,將錄入屬性和單元格進行匹配,主要是通過錄入屬性的名稱和單元格的名稱進行匹配的,將錄入屬性的數據項設置為對應單元格的數據。並將單元格添加到動態表單中。處理完成後,處理過程就轉入到判斷塊608。在判斷塊608中,需要做出判定所有單元格都處理了嗎?動態表單中所有錄入單元格都需要進行數據設置。如果還有單元格沒有設置數據,則處理過程跳回到塊607繼續處理。如果所有單元格都設置數據完成,則處理過程就轉入到塊609。在塊609,將各單元格組織成動態表單對象,界面解析程序將該對象生成對應的用戶界面。界面展示結束後,處理過程就轉入到塊610,處理過程結束。通過元數據驅動的動態表單技術有非常良好的可擴展性,只要能夠通過應用程式實現的表單功能,都可以在修改相應的元數據描述信息後,擴充到表單系統當中。當系統處理新增加的表單結構時,會通過元數據引擎選擇合適的表單功能進行處理。本發明已經在一個IDS(InterfaceDataSheet)系統中得到完全實施。該系統採用B/S、C/S混合架構,使用IIS作為應用伺服器,Oscar資料庫作為資料庫伺服器。我們成功的實現了用戶各個業務模型,並利用這些業務模板完成了IDS系統中的數據結構和用戶操作界面。整個系統結構圖如圖4所示。從圖4中可以看出根據用戶自定義的業務模型,系統根據業務模型中的樣式信息生成用戶界面文件存儲在應用伺服器上;系統根據業務模型中的結構信息在資料庫伺服器生成存儲結構。圖5反映了業務模型、用戶界面、資料庫之間的關係。首先,用戶自定義業務模型,模型中包含樣式描述信息(單元格描述、數據驗證規則描述)、結構描述信息(元數據描述、數據結構描述)。利用業務模型中的元數據描述信息作為單元格描述信息的一部分,為用戶操作界面與資料庫建立了聯繫,而業務模型就是橋梁。其次,用戶在瀏覽業務模型時,系統根據業務模型中樣式描述信息生成用戶界面,提供給用戶進行數據操作並保存為一個數據文件。最後把數據文件傳回到應用伺服器,根據業務模型並經過引擎解析後,把數據信息保存到相應的資料庫中。系統可以根據業務模型中的結構描述信息對已經填入的數據進行綜合查詢。通過本發明的應用,該系統成功實現了數據採集界面和存儲結構的自動生成,自動適應了各種不同的業務,具備了良好的擴展性。與此同時,自定義業務模型對於人員沒有額外的技術要求,便於系統的實施和推廣。權利要求一種基於元數據驅動的動態表單方法,其特徵在於包括以下步驟1)對表單中的單元格進行分類,對每一種類型的單元格建立相應的表單功能集;2)通過元數據描述規則,描述單元格結構,形成元資料庫;3)通過元數據引擎從元資料庫中獲取表單元數據信息,向表單動態地加載元數據;4)選擇表單功能集,動態生成用戶表單。2.如權利要求1所述的基於元數據驅動的動態表單方法,其特徵在於在所述步驟1)中,對每種類型的單元格,根據其需要實現的表單功能進行歸納,形成和單元格類型對應的表單功能集。3.如權利要求2所述的基於元數據驅動的動態表單方法,其特徵在於所述表單功能集和單元格類型的對應關係是通過功能集的名稱與單元格類型進行關聯的。4.如權利要求1所述的基於元數據驅動的動態表單方法,其特徵在於在所述步驟2)中,元數據描述規則包括CellName單元格名稱;Optional單元格是否為選填項,如果單元格是選填項,則在用戶提交表單時不進行非空驗證;Writable單元格是否為可錄入項,如果單元格是不可錄入項,則不允許用戶在該單元格中錄入數據;BeginRow單元格的開始行;BeginColumn單元格的開始列;RowSpan單元格跨行數;ColumnSpan單元格跨列數;Type單元格類型;DataTypeLen單元格允許輸入字符長度;PropertyName:單元格對應元資料庫中的列名,如果該值為空,則說明該單元格非用戶錄入項。5.如權利要求4所述的基於元數據驅動的動態表單方法,其特徵在於所述元數據描述規則還包括以下輔助信息Comment對單元格的描述信息;FontSize單元格字體的大小;FontColor單元格字體顏色。6.如權利要求1所述的基於元數據驅動的動態表單方法,其特徵在於所述元資料庫是表單中的各單元格結構的元數據信息的集合。7.如權利要求1所述的基於元數據驅動的動態表單方法,其特徵在於所述步驟3)進一步細分為以下子步驟[3.1)元數據引擎根據元資料庫中對表單數據種類的描述信息,獲取該數據種類下的所有可錄入的單元格的元數據描述;[3.2)元數據引擎根據元資料庫中對表單結構的描述,獲取所有可錄入項屬性;[3.3)對獲取的可錄入項屬性和單元格進行匹配,並將匹配成功的單元格數據設置到可錄入項屬性中;.3.4)根據屬性數據集,組織成有效的資料庫sql語句,將用戶在動態表單中填寫的數據寫入到資料庫中。8.如權利要求1所述的基於元數據驅動的動態表單方法,其特徵在於所述步驟4)進一步細分為以下子步驟.4.1)通過數據種類編號構造系統資料庫表,再利用數據編號查詢該表對應的用戶數據;.4.2)元數據引擎根據元資料庫中對模板數據種類的描述信息,獲取該數據種類下的所有錄入項的屬性,錄入項屬性對應了動態表單界面中每一個供用戶錄入數據信息的單元格;.4.3)將獲得的數據設置到錄入項屬性中,設置規則是通過數據的列編號和錄入屬性的編號進行匹配,如果數據的列編號和錄入屬性列編號一致時,則將數據設置到錄入項屬性的數據項中;.4.4)通過數據編號獲取該數據所使用的表單;.4.5)根據表單信息獲取整個表單結構信息,主要是表單中各單元格的信息,包括單元格的類型,單元格的位置等等;.4.6)將錄入屬性和單元格進行匹配,主要是通過錄入屬性的名稱和單元格的名稱進行匹配,將錄入屬性的數據項設置為對應單元格的數據,並將單元格添加到動態表單中;.4.7)對於表單中的單元格,通過界面解析程序獲得該單元格的位置信息,將其繪製到界面的特定位置;根據單元格的大小信息,在界面中繪製出單元格的範圍;根據單元格的類型,選擇具體的控制項展示在上述位置和範圍中;根據單元格數據,往控制項中填充數據。全文摘要本發明涉及基於元數據驅動的動態表單方法,包括以下步驟1)對表單中的單元格進行分類,對每一種類型的單元格建立相應的表單功能集;2)通過元數據描述規則,描述單元格結構,形成元資料庫;3)通過元數據引擎從元資料庫中獲取表單元數據信息,向表單動態地加載元數據;4)選擇表單功能集,動態生成用戶表單。本發明將用戶表單中相對固定的功能操作採用程序的行為控制流來封裝;而表單結構、表單中各數據錄入方式等和不同的功能操作存在不同關聯關係的則採用元數據進行描述。這就將表單功能模塊中相對穩定的部分和可變部分進行了明確分開,對表單結構等可變部分採用元數據來描述,提高了表單結構的可操縱性。文檔編號G06F17/30GK101968800SQ20101028960公開日2011年2月9日申請日期2010年9月21日優先權日2010年9月21日發明者劉祺,劉霞,劉鵬,周永輝,李海峰,王嘉春,王德鑫,白仲陶,秦巍,蔣志勇,謝政,趙伶豐,趙飛申請人:北京空間飛行器總體設計部;天津神舟通用數據技術有限公司

同类文章

一種新型多功能組合攝影箱的製作方法

一種新型多功能組合攝影箱的製作方法【專利摘要】本實用新型公開了一種新型多功能組合攝影箱,包括敞開式箱體和前攝影蓋,在箱體頂部設有移動式光源盒,在箱體底部設有LED脫影板,LED脫影板放置在底板上;移動式光源盒包括上蓋,上蓋內設有光源,上蓋部設有磨沙透光片,磨沙透光片將光源封閉在上蓋內;所述LED脫影

壓縮模式圖樣重疊檢測方法與裝置與流程

本發明涉及通信領域,特別涉及一種壓縮模式圖樣重疊檢測方法與裝置。背景技術:在寬帶碼分多址(WCDMA,WidebandCodeDivisionMultipleAccess)系統頻分復用(FDD,FrequencyDivisionDuplex)模式下,為了進行異頻硬切換、FDD到時分復用(TDD,Ti

個性化檯曆的製作方法

專利名稱::個性化檯曆的製作方法技術領域::本實用新型涉及一種檯曆,尤其涉及一種既顯示月曆、又能插入照片的個性化檯曆,屬於生活文化藝術用品領域。背景技術::公知的立式檯曆每頁皆由月曆和畫面兩部分構成,這兩部分都是事先印刷好,固定而不能更換的。畫面或為風景,或為模特、明星。功能單一局限性較大。特別是畫

一種實現縮放的視頻解碼方法

專利名稱:一種實現縮放的視頻解碼方法技術領域:本發明涉及視頻信號處理領域,特別是一種實現縮放的視頻解碼方法。背景技術: Mpeg標準是由運動圖像專家組(Moving Picture Expert Group,MPEG)開發的用於視頻和音頻壓縮的一系列演進的標準。按照Mpeg標準,視頻圖像壓縮編碼後包

基於加熱模壓的纖維增強PBT複合材料成型工藝的製作方法

本發明涉及一種基於加熱模壓的纖維增強pbt複合材料成型工藝。背景技術:熱塑性複合材料與傳統熱固性複合材料相比其具有較好的韌性和抗衝擊性能,此外其還具有可回收利用等優點。熱塑性塑料在液態時流動能力差,使得其與纖維結合浸潤困難。環狀對苯二甲酸丁二醇酯(cbt)是一種環狀預聚物,該材料力學性能差不適合做纖

一種pe滾塑儲槽的製作方法

專利名稱:一種pe滾塑儲槽的製作方法技術領域:一種PE滾塑儲槽一、 技術領域 本實用新型涉及一種PE滾塑儲槽,主要用於化工、染料、醫藥、農藥、冶金、稀土、機械、電子、電力、環保、紡織、釀造、釀造、食品、給水、排水等行業儲存液體使用。二、 背景技術 目前,化工液體耐腐蝕貯運設備,普遍使用傳統的玻璃鋼容

釘的製作方法

專利名稱:釘的製作方法技術領域:本實用新型涉及一種釘,尤其涉及一種可提供方便拔除的鐵(鋼)釘。背景技術:考慮到廢木材回收後再加工利用作業的方便性與安全性,根據環保規定,廢木材的回收是必須將釘於廢木材上的鐵(鋼)釘拔除。如圖1、圖2所示,目前用以釘入木材的鐵(鋼)釘10主要是在一釘體11的一端形成一尖

直流氧噴裝置的製作方法

專利名稱:直流氧噴裝置的製作方法技術領域:本實用新型涉及ー種醫療器械,具體地說是ー種直流氧噴裝置。背景技術:臨床上的放療過程極易造成患者的局部皮膚損傷和炎症,被稱為「放射性皮炎」。目前對於放射性皮炎的主要治療措施是塗抹藥膏,而放射性皮炎患者多伴有局部疼痛,對於止痛,多是通過ロ服或靜脈注射進行止痛治療

新型熱網閥門操作手輪的製作方法

專利名稱:新型熱網閥門操作手輪的製作方法技術領域:新型熱網閥門操作手輪技術領域:本實用新型涉及一種新型熱網閥門操作手輪,屬於機械領域。背景技術::閥門作為流體控制裝置應用廣泛,手輪傳動的閥門使用比例佔90%以上。國家標準中提及手輪所起作用為傳動功能,不作為閥門的運輸、起吊裝置,不承受軸向力。現有閥門

用來自動讀取管狀容器所載識別碼的裝置的製作方法

專利名稱:用來自動讀取管狀容器所載識別碼的裝置的製作方法背景技術:1-本發明所屬領域本發明涉及一種用來自動讀取管狀容器所載識別碼的裝置,其中的管狀容器被放在循環於配送鏈上的文檔匣或託架裝置中。本發明特別適用於,然而並非僅僅專用於,對引入自動分析系統的血液樣本試管之類的自動識別。本發明還涉及專為實現讀