將結構化數據轉為版式表單文件的方法及系統的制作方法
【技術領域】
[0001]本發明涉及電子文件技術領域,尤其涉及將結構化數據轉為版式表單文件的方法及系統。
【背景技術】
[0002]目前,結構化數據大多存儲在數據庫中,其顯示依賴于專有系統,為便于數據的獨立顯示和利用,需要將結構化數據轉換為獨立的電子文件,并能保留數據的結構化,便于提取出結構化數據進行數據再利用。另一方面,結構化數據轉換后的電子文件要求具備一定程度的交互能力,如添加或修改文件中的某些數據,加蓋電子印章等。
[0003]現有的處理方法一般是采取版式表單工具和報表工具兩種技術來實現結構化數據轉換為電子文件,對于不需要交互能力的電子文件轉換,一般采用報表工具實現將結構化數據的報表輸出,然后通過接口轉換為通用的PDF等版式電子文件。對于需要交互的電子文件,一般是通過版式表單工具生成表單模板,然后通過表單填充接口進行表單數據填充,表單技術保證了文件的交互能力。
[0004]現有的將結構化數據轉換為版式電子文件的處理方法的主要問題如下:
[0005]問題一、通過報表工具生成的文件是非結構化的,不便于數據的再利用,如需結構化數據進行數據再利用,還需要再提供一個結構化的數據文件,導致文件傳輸和交換復雜度增加;
[0006]問題二、電子表單的版面描述能力比較弱,無法滿足復雜數據的要求。目前,電子表單模板的設計生成是和數據無關,而不少結構化數據的顯示樣式是與數據相關,具有報表的特征,如公式計算、復雜排版、根據內容自動增加表格行、內容分組等;現有的電子表單設計方法無法滿足這類數據的轉換要求;
[0007]問題三、目前,將結構化數據轉換為版式電子文件處理方法為電子表單和報表工具,但這兩種轉換處理方法采用的技術路線具有較大的差異,即從模板的設計、數據的填充、數據的提取都是采用完全不同的處理方法,如需實現結構化數據轉換為版式表單文件,將分別在兩個技術平臺使用兩種轉換處理方法,從而導致整個結構化數據轉換系統的復雜度增加,成本也大幅增加。
[0008]綜上所述,現有技術對結構化數據轉換處理的方法,已經不能夠滿足版式電子文件交互的需求,與對版式電子文件中數據的結構化的需求,而且分別在兩個技術平臺對結構化數據進行轉換,也將會大幅增加結構化數據轉換系統的復雜度與成本。
【發明內容】
[0009]本發明實施例提供了將結構化數據轉為版式表單文件的方法及系統,優化了結構化數據向版式表單文件的轉換步驟,實現了在一個技術平臺上對結構化數據進行轉換;根據解析表單域定義數據,生成的版式表單文件,從而保持了版式表單文件中數據的結構化,并使轉換后的版式表單文件具備交互能力。
[0010]本發明實施例提供的一種將結構化數據轉換為版式表單文件的方法,包括:
[0011]根據版式表單文件的顯示要求,利用報表工具確定表單模板;
[0012]解析所述表單模板,并根據解析結果確定表單域定義數據;
[0013]利用所述表單模板和結構化數據,生成版式文件;
[0014]通過所述表單域定義數據,以及所述版式文件,生成版式表單文件模板;
[0015]將結構化數據填充到所述版式表單文件模板中,確定版式表單文件。
[0016]通過該方法,優化了結構化數據向版式表單文件的轉換步驟,實現了在一個技術平臺上對結構化數據進行轉換;根據解析表單域定義數據,生成的版式表單文件,從而保持了版式表單文件中數據的結構化,使得填充結構化數據后得到的版式表單文件具備交互能力。
[0017]較佳地,所述表單模板包括:表單域占位控件;其中,所述表單域占位控件包括:表單域屬性,所述表單域屬性是由所述表單域占位控件確定的表單域的屬性;
[0018]解析所述表單模板,并根據解析結果確定表單域定義數據,包括:
[0019]解析所述表單模板中的表單占位控件,并根據解析結果確定表單域定義數據,其中,所述表單域定義數據包括:所述表單域屬性。
[0020]較佳地,所述表單模板中還包括:用于對結構化數據進行計算的公式;
[0021]利用所述表單模板和結構化數據,生成版式文件,包括:
[0022]將結構化數據填充到所述表單模板中,得到第一報表文件;
[0023]通過所述公式,得到所述結構化數據的計算結果,并將所述計算結果固化到所述第一報表文件中,得到第二報表文件;
[0024]刪除所述第二報表文件中填充的結構化數據,得到第三報表文件;
[0025]利用所述報表工具對所述第三報表文件進行轉換,得到版式文件。
[0026]通過該方法,利用在表單模板中添加預設的以結構化數據為參數的計算公式,實現了傳統表單模板無法實現的公式計算的處理操作,通過對結構化數據的計算結果進行固化,從而實現了表單模板中參與計算的數據變化時,計算結果位置顯示的數據不再隨著變化。
[0027]較佳地,所述表單模板中還包括:生成版式文件前的預處理操作信息;
[0028]利用所述表單模板和結構化數據,生成版式文件,包括:
[0029]將所述結構化數據填充到所述表單模板中,得到第一報表文件;
[0030]根據所述預處理操作信息,利用所述報表工具對所述第一報表文件進行處理,得到第二報表文件;
[0031]刪除所述第二報表文件中填充的結構化數據,得到第三報表文件;
[0032]利用所述報表工具對所述第三報表文件進行轉換,得到版式文件;
[0033]通過所述表單域定義數據,以及所述版式文件,生成版式表單文件模板,包括:
[0034]根據第二報表文件,調整所述表單域定義數據,得到第二表單域定義數據;
[0035]通過所述第二表單域定義數據,以及所述版式文件,生成版式表單文件模板。
[0036]較佳地,所述表單域占位控件還包括表單域占位控件屬性,所述表單域占位控件屬性包括:排版屬性、重復行屬性以及分組屬性;
[0037]利用所述表單模板和結構化數據,生成版式文件,包括:
[0038]根據所述結構化數據,調整所述表單模板,得到第一報表文件;
[0039]將所述結構化數據填充到所述第一報表文件中,得到第二報表文件;
[0040]根據所述表單域占位控件屬性中的排版屬性,調整所述第二報表文件,得到第三報表文件;
[0041]刪除所述第三報表文件中填充的結構化數據,得到第四報表文件;
[0042]利用所述報表工具對所述第四報表文件進行轉換,得到版式文件;
[0043]通過所述表單域定義數據,以及所述版式文件,生成版式表單文件模板,包括:
[0044]根據所述結構化數據,調整所述表單域定義數據,得到第二表單域定義數據;
[0045]根據所述第三報表文件,調整所述第二表單域定義數據,得到第三表單域定義數據;
[0046]通過所述第三表單域定義數據,以及所述版式文件,生成版式表單文件模板。
[0047]通過該方法,利用在表單模板中添加表單域占位控件屬性,實現了傳統表單模板無法實現的包含復雜排版、自動拓展行、內容分組等的復雜表單,有效的擴充了報表和表單的應用范圍,而且本發明通過將現有技術中的表單設計與報表設計統一在一個平臺上,從而降低了將結構化數據轉換為版式表單文件設備的建設與維護成本。
[0048]較佳地,所述表單域屬性包括:可否編輯屬性;
[0049]在利用所述表單模板和結構化數據,生成版式文件之后,在通過所述表單域定義數據,以及所述版式文件,生成版式表單文件模板之前,該方法還包括:
[0050]根據所述可否編輯屬性,確定需要生成的版式表單文件模板中的表單域可否編輯。
[0051]通過該方法,實現了在同一個技術平臺上將結構化數據轉化為版式電子文件,從而滿足了復雜結構化數據和簡單結構化數據的文件轉換,實現了轉換后的版式表單文件具備交互的需求,并保證了轉換后的版式表單文件中的數據的結構化。
[0052]本發明實施例提供的一種將結構化數據轉換為版式表單文件的系統,包括:
[0053]確定表單模板單元,用于根據版式表單文件的顯示要求,利用報表工具確定表單模板;
[0054]確定表單域定義數據單元,用于解析所述表單模板,并根據解析結果確定表單域定義數據;
[0055]生成版式文件單元,用于利用所述表單模板和結構化數據,生成版式文件;
[0056]生成版式表單模板單元,用于通過所述表單域定義數據,以及所述版式文件,生成版式表單文件模板;
[0057]填充結構化數據單元,用于將結構化數據填充到所述版式表單文件模板中,確定版式表單文件。
[0058]通過該系統,優化了結構化數據向版式表單文件的轉換步驟,實現了在一個技術平臺上對結構化數據進行轉換;根據解析表單域定義數據,生成的版式表單文件,從而保持了版式表單文件中數據的結構化,使得填充結構