欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

自動(dòng)生成數(shù)據(jù)報(bào)表的方法及系統(tǒng)的制作方法

文檔序號(hào):6520847閱讀:971來(lái)源:國(guó)知局
自動(dòng)生成數(shù)據(jù)報(bào)表的方法及系統(tǒng)的制作方法
【專(zhuān)利摘要】本發(fā)明公開(kāi)了一種自動(dòng)生成數(shù)據(jù)報(bào)表的方法和系統(tǒng)。該方法包括以下步驟:連接數(shù)據(jù)庫(kù),接收輸入?yún)?shù),判斷是否輸出數(shù)據(jù)報(bào)表;如果判斷為輸出數(shù)據(jù)報(bào)表,則打開(kāi)數(shù)據(jù)庫(kù)文件,對(duì)數(shù)據(jù)項(xiàng)參數(shù)進(jìn)行解析;根據(jù)對(duì)所述數(shù)據(jù)項(xiàng)參數(shù)的解析結(jié)果,將所述數(shù)據(jù)報(bào)表的查詢(xún)結(jié)果數(shù)據(jù)項(xiàng)拼接為數(shù)據(jù)訪問(wèn)字符串,所述數(shù)據(jù)訪問(wèn)字符串由所述數(shù)據(jù)報(bào)表中的所有數(shù)據(jù)項(xiàng)構(gòu)成;對(duì)所述數(shù)據(jù)報(bào)表的查詢(xún)被動(dòng)態(tài)配置為:所述數(shù)據(jù)項(xiàng)查詢(xún)結(jié)果、時(shí)間段以及所述數(shù)據(jù)項(xiàng)排序語(yǔ)句;根據(jù)配置的所述查詢(xún)結(jié)果數(shù)據(jù)項(xiàng)值,調(diào)用數(shù)據(jù)報(bào)表處理程序段,生成相應(yīng)的數(shù)據(jù)報(bào)表。該方法能夠大大提高用戶(hù)生成報(bào)表的效率,有利于數(shù)據(jù)報(bào)表的自動(dòng)化和規(guī)范化實(shí)施,使得數(shù)據(jù)報(bào)表具有一定的通用性和可擴(kuò)展性。
【專(zhuān)利說(shuō)明】自動(dòng)生成數(shù)據(jù)報(bào)表的方法及系統(tǒng)
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及一種數(shù)據(jù)處理的方法和系統(tǒng),特別涉及一種能夠自動(dòng)生成數(shù)據(jù)報(bào)表的方法和系統(tǒng)。
【背景技術(shù)】
[0002]在數(shù)據(jù)處理【技術(shù)領(lǐng)域】,數(shù)據(jù)報(bào)表以表格的形式提供給用戶(hù)所關(guān)心的數(shù)據(jù),以及針對(duì)這些數(shù)據(jù)產(chǎn)生的一些分析結(jié)果。報(bào)表格式相對(duì)于其他數(shù)據(jù)提供形式來(lái)說(shuō)具有簡(jiǎn)明、直觀和規(guī)范等特點(diǎn),廣泛應(yīng)用于各行各業(yè)。但是由于各行各業(yè)對(duì)于報(bào)表的格式要求不一致,對(duì)于報(bào)表的內(nèi)容要求也不一致,而且報(bào)表的標(biāo)題、表頭、表尾等數(shù)據(jù)項(xiàng)的樣式也是多種多樣,目前許多已有方法中,都是針對(duì)某一類(lèi)產(chǎn)品生成特定的報(bào)表,報(bào)表的形式相對(duì)固定,這樣生成后的報(bào)文格式不統(tǒng)一,并且其樣式和所需數(shù)據(jù)項(xiàng)也不一定能達(dá)到用戶(hù)期望的形式,無(wú)法滿(mǎn)足用戶(hù)各種不同的需要,不得不由用戶(hù)利用手工進(jìn)行再處理。
[0003]依據(jù)現(xiàn)有的方法生成的報(bào)表不具有可擴(kuò)展性,如果報(bào)表的樣式發(fā)生變化,或者用戶(hù)的需求發(fā)生變化,就需要更新軟件源代碼,不能及時(shí)地為界面用戶(hù)直接使用,而且修改源代碼的工作代價(jià)較大,維護(hù)不方便。再有,目前很多系統(tǒng)清單類(lèi)報(bào)表都采取編寫(xiě)批量程序的方式實(shí)現(xiàn),每個(gè)報(bào)表都需要一支相應(yīng)的批量程序,相應(yīng)的設(shè)計(jì)、實(shí)現(xiàn)、測(cè)試等極其類(lèi)似,簡(jiǎn)單重復(fù)勞動(dòng)較多。

【發(fā)明內(nèi)容】

[0004]本發(fā)明的目的在于提出一種自動(dòng)生成數(shù)據(jù)報(bào)表的方法及系統(tǒng),它能夠利用人機(jī)交互的方式以及進(jìn)程間通信的技術(shù)實(shí)現(xiàn)數(shù)據(jù)報(bào)表的自動(dòng)生成。
[0005]為了實(shí)現(xiàn)上述發(fā)明目的,本發(fā)明提出如下技術(shù)方案:
[0006]一種自動(dòng)生成數(shù)據(jù)報(bào)表方法,該方法包括以下步驟:
[0007]步驟(I):連接數(shù)據(jù)庫(kù),接收輸入?yún)?shù),判斷是否輸出數(shù)據(jù)報(bào)表;
[0008]步驟(2):如果判斷為輸出數(shù)據(jù)報(bào)表,則打開(kāi)數(shù)據(jù)庫(kù)文件,對(duì)數(shù)據(jù)項(xiàng)參數(shù)進(jìn)行解析;
[0009]步驟(3):根據(jù)對(duì)所述數(shù)據(jù)項(xiàng)參數(shù)的解析結(jié)果,將所述數(shù)據(jù)報(bào)表的查詢(xún)結(jié)果數(shù)據(jù)項(xiàng)拼接為數(shù)據(jù)訪問(wèn)字符串,所述數(shù)據(jù)訪問(wèn)字符串由所述數(shù)據(jù)報(bào)表中的所有數(shù)據(jù)項(xiàng)構(gòu)成,其中所述數(shù)據(jù)項(xiàng)包括顯示數(shù)據(jù)項(xiàng)和訪問(wèn)數(shù)據(jù)項(xiàng),配置所述顯示數(shù)據(jù)項(xiàng)的取值規(guī)則為:靜態(tài)字符串與顯示位移,配置所述訪問(wèn)數(shù)據(jù)項(xiàng)的取值規(guī)則為:所述訪問(wèn)數(shù)據(jù)項(xiàng)在數(shù)據(jù)訪問(wèn)字符串中的位置與長(zhǎng)度;
[0010]步驟(4):對(duì)所述數(shù)據(jù)報(bào)表的查詢(xún)被動(dòng)態(tài)配置為:所述數(shù)據(jù)項(xiàng)查詢(xún)結(jié)果、時(shí)間段以及所述數(shù)據(jù)項(xiàng)排序語(yǔ)句;
[0011]步驟(5):根據(jù)配置的所述查詢(xún)結(jié)果數(shù)據(jù)項(xiàng)值,調(diào)用數(shù)據(jù)報(bào)表處理程序段,生成相應(yīng)的數(shù)據(jù)報(bào)表。
[0012]更具體地,步驟(I)中所述判斷是否輸出數(shù)據(jù)報(bào)表,是根據(jù)主鍵讀取數(shù)據(jù)庫(kù)數(shù)據(jù),獲取工作日信息來(lái)判斷的,所述工作日信息包括采集標(biāo)識(shí)、日期;
[0013]步驟(2)中解析數(shù)據(jù)項(xiàng)參數(shù)包括:解析索引機(jī)構(gòu),解析副標(biāo)題,解析分欄合計(jì)參數(shù),解析總計(jì)參數(shù),解析貨幣,解析合計(jì)欄條件,解析分欄條件,解析標(biāo)題欄,解析數(shù)據(jù)場(chǎng)數(shù)據(jù)項(xiàng)參數(shù),解析數(shù)據(jù)項(xiàng)排序語(yǔ)句,解析時(shí)間;
[0014]步驟(4)中對(duì)所述數(shù)據(jù)報(bào)表的查詢(xún)?yōu)镾QL查詢(xún)語(yǔ)句;
[0015]步驟(5)中所述根據(jù)配置的所述查詢(xún)結(jié)果數(shù)據(jù)項(xiàng)值,調(diào)用數(shù)據(jù)報(bào)表處理程序段,生成相應(yīng)的數(shù)據(jù)報(bào)表,具體包括以下步驟:
[0016]建立指針,打開(kāi)指針,
[0017]初始化循環(huán)變量、統(tǒng)計(jì)變量,設(shè)置首次循環(huán)標(biāo)識(shí)、結(jié)束標(biāo)識(shí)、頁(yè)初始標(biāo)識(shí),空文件標(biāo)識(shí),合計(jì)/總計(jì)臨時(shí)變量組;
[0018]根據(jù)配置的所述頁(yè)初始標(biāo)識(shí),進(jìn)行是否換頁(yè)的操作,若換頁(yè)則輸出數(shù)據(jù)報(bào)表標(biāo)題,并清空合計(jì)條件字符串,
[0019]根據(jù)配置的合計(jì)欄標(biāo)識(shí)和參數(shù),若滿(mǎn)足合計(jì)條件,則進(jìn)行金額、數(shù)字的合計(jì),輸出合計(jì)欄,
[0020]根據(jù)配置的所述數(shù)據(jù)訪問(wèn)字符串中的位移、長(zhǎng)度信息,將所述數(shù)據(jù)訪問(wèn)字符串中的內(nèi)容,拆分到數(shù)據(jù)報(bào)表的行中,寫(xiě)入一行記錄,
[0021]根據(jù)配置的總計(jì)欄標(biāo)識(shí)和參數(shù),輸出總計(jì)欄,
[0022]生成相應(yīng)的數(shù)據(jù)報(bào)表。
[0023]本發(fā)明還提供了一種自動(dòng)生成數(shù)據(jù)報(bào)表的系統(tǒng),該系統(tǒng)包括以下模塊:
[0024]連接數(shù)據(jù)庫(kù)模塊,連接數(shù)據(jù)庫(kù),接收輸入?yún)?shù),判斷是否輸出數(shù)據(jù)報(bào)表;
[0025]參數(shù)解析模塊,如果判斷輸出數(shù)據(jù)報(bào)表,則打開(kāi)數(shù)據(jù)庫(kù)文件,對(duì)數(shù)據(jù)項(xiàng)參數(shù)進(jìn)行解析;
[0026]配置數(shù)據(jù)訪問(wèn)字符串模塊,根據(jù)對(duì)所述數(shù)據(jù)項(xiàng)參數(shù)的解析結(jié)果,將所述數(shù)據(jù)報(bào)表的查詢(xún)結(jié)果數(shù)據(jù)項(xiàng)拼接為數(shù)據(jù)訪問(wèn)字符串,所述數(shù)據(jù)訪問(wèn)字符串由所述數(shù)據(jù)報(bào)表中的所有數(shù)據(jù)項(xiàng)構(gòu)成,其中所述數(shù)據(jù)項(xiàng)包括顯示數(shù)據(jù)項(xiàng)和訪問(wèn)數(shù)據(jù)項(xiàng),配置所述顯示數(shù)據(jù)項(xiàng)的取值規(guī)則為:靜態(tài)字符串與顯示位移,配置所述訪問(wèn)數(shù)據(jù)項(xiàng)的取值規(guī)則為:所述訪問(wèn)數(shù)據(jù)項(xiàng)在數(shù)據(jù)訪問(wèn)字符串中的位置與長(zhǎng)度;
[0027]查詢(xún)模塊,對(duì)所述數(shù)據(jù)報(bào)表的查詢(xún)被動(dòng)態(tài)配置為:所述數(shù)據(jù)項(xiàng)查詢(xún)結(jié)果、時(shí)間段以及所述數(shù)據(jù)項(xiàng)排序語(yǔ)句;
[0028]數(shù)據(jù)報(bào)表生成模塊,根據(jù)配置的所述數(shù)據(jù)報(bào)表的數(shù)據(jù)項(xiàng)值,利用進(jìn)程間通信技術(shù),調(diào)用數(shù)據(jù)報(bào)表處理進(jìn)程,生成相應(yīng)的數(shù)據(jù)報(bào)表。
[0029]更具體的,在該系統(tǒng)中:
[0030]連接數(shù)據(jù)庫(kù)模塊中,所述判斷是否輸出數(shù)據(jù)報(bào)表,是根據(jù)主鍵讀取數(shù)據(jù)庫(kù)數(shù)據(jù),獲取工作日信息來(lái)判斷的,所述工作日信息包括采集標(biāo)識(shí)、日期;
[0031]參數(shù)解析模塊中,解析數(shù)據(jù)項(xiàng)參數(shù)包括:解析索引機(jī)構(gòu),解析副標(biāo)題,解析分欄合計(jì)參數(shù),解析總計(jì)參數(shù),解析貨幣,解析合計(jì)欄條件,解析分欄條件,解析標(biāo)題欄,解析數(shù)據(jù)場(chǎng)數(shù)據(jù)項(xiàng)參數(shù),解析數(shù)據(jù)項(xiàng)排序語(yǔ)句,解析時(shí)間;
[0032]查詢(xún)模塊中,對(duì)所述數(shù)據(jù)報(bào)表的查詢(xún)?yōu)镾QL查詢(xún)語(yǔ)句;
[0033]數(shù)據(jù)報(bào)表生成模塊中,所述根據(jù)配置的所述查詢(xún)結(jié)果數(shù)據(jù)項(xiàng)值,調(diào)用數(shù)據(jù)報(bào)表處理程序段,生成相應(yīng)的數(shù)據(jù)報(bào)表,具體包括以下幾個(gè)模塊:
[0034]指針模塊,建立指針,打開(kāi)指針,
[0035]初始化模塊,初始化循環(huán)變量、統(tǒng)計(jì)變量,設(shè)置首次循環(huán)標(biāo)識(shí)、結(jié)束標(biāo)識(shí)、頁(yè)初始標(biāo)識(shí),空文件標(biāo)識(shí),合計(jì)/總計(jì)臨時(shí)變量組;
[0036]換頁(yè)操作模塊,根據(jù)配置的所述頁(yè)初始標(biāo)識(shí),進(jìn)行是否換頁(yè)的操作,若換頁(yè)則輸出數(shù)據(jù)報(bào)表標(biāo)題,并清空合計(jì)條件字符串,
[0037]合計(jì)欄操作模塊,根據(jù)配置的合計(jì)欄標(biāo)識(shí)和參數(shù),若滿(mǎn)足合計(jì)條件,進(jìn)行金額、數(shù)字的合計(jì),輸出合計(jì)欄,
[0038]數(shù)據(jù)記錄模塊,根據(jù)配置的位移、長(zhǎng)度信息,將所述數(shù)據(jù)訪問(wèn)字符串中的內(nèi)容,拆分到數(shù)據(jù)報(bào)表的行中,寫(xiě)入一行記錄,
[0039]總計(jì)欄操作模塊,根據(jù)配置的總計(jì)欄標(biāo)識(shí)和參數(shù),輸出總計(jì)欄,
[0040]生成模塊,生成相應(yīng)的數(shù)據(jù)報(bào)表。
[0041]根據(jù)上述技術(shù)方案的分析可知,使用本發(fā)明中自動(dòng)生成數(shù)據(jù)報(bào)表的方法與現(xiàn)有技術(shù)相比較,具有如下有益的技術(shù)效果:
[0042]1、大大提高了用戶(hù)生成報(bào)表的效率,有利于報(bào)表的自動(dòng)化和規(guī)范化實(shí)施;
[0043]2、人機(jī)交互方式的使用,大大增加了報(bào)表的靈活性和可適用性,使得報(bào)表數(shù)據(jù)項(xiàng)能夠根據(jù)用戶(hù)需求進(jìn)行動(dòng)態(tài)選擇,而不必修改源代碼;
[0044]3、由于采用接收輸入?yún)?shù)的方式來(lái)生成數(shù)據(jù)報(bào)表,使得最終數(shù)據(jù)報(bào)表具有一定的通用性和可擴(kuò)展性。
【專(zhuān)利附圖】

【附圖說(shuō)明】
[0045]圖1為本發(fā)明的自動(dòng)生成數(shù)據(jù)報(bào)表方法的流程圖。
[0046]圖2為本發(fā)明的一個(gè)實(shí)施例的程序流程圖。
[0047]圖3為本發(fā)明的自動(dòng)生成數(shù)據(jù)報(bào)表系統(tǒng)的框圖。
【具體實(shí)施方式】
[0048]下面結(jié)合附圖和具體實(shí)施例對(duì)本發(fā)明作進(jìn)一步詳細(xì)描述,但不作為對(duì)本發(fā)明的限定。
[0049]本發(fā)明與現(xiàn)有技術(shù)相比的最主要的改進(jìn)在于,將SQL語(yǔ)句結(jié)果拼接成“數(shù)據(jù)訪問(wèn)字符串”。將需要的信息分為兩大類(lèi),第一類(lèi)為訪問(wèn)數(shù)據(jù)項(xiàng),包括報(bào)表列、副標(biāo)題、換頁(yè)條件等取值規(guī)則,這些取值規(guī)則全部維護(hù)到報(bào)表定制參數(shù)表的相應(yīng)欄位,為其配置的取值規(guī)則是:各字段在數(shù)據(jù)訪問(wèn)字符串中的位置+字段長(zhǎng)度,這樣就可以通過(guò)取其中的子字符串的方式,獲得需要的數(shù)據(jù)值。第二類(lèi)為顯示數(shù)據(jù)項(xiàng),包括報(bào)表標(biāo)題等需要固定打印的字符串,則配置成靜態(tài)字符串+顯示位移的方式。主程序通過(guò)從“數(shù)據(jù)訪問(wèn)字符串”及配置參數(shù)中讀取這兩類(lèi)信息,就可以拼接報(bào)表數(shù)據(jù)行、標(biāo)題、副標(biāo)題、標(biāo)題列等,也可以判斷出是否換頁(yè)、是否需要進(jìn)行小計(jì)、何時(shí)進(jìn)行合計(jì)等,從而生成符合要求的報(bào)表。
[0050]參見(jiàn)圖1,為本發(fā)明自動(dòng)生成數(shù)據(jù)報(bào)表方法的流程圖,該流程圖的執(zhí)行是在已經(jīng)建立的數(shù)據(jù)源的基礎(chǔ)上,該數(shù)據(jù)源可利用Oracle等通用數(shù)據(jù)庫(kù)來(lái)建立,該方法包括下列步驟:[0051]步驟(I):連接數(shù)據(jù)庫(kù),接收輸入?yún)?shù),判斷是否輸出數(shù)據(jù)報(bào)表;
[0052]步驟(2):如果判斷為輸出數(shù)據(jù)報(bào)表,則打開(kāi)數(shù)據(jù)庫(kù)文件,對(duì)數(shù)據(jù)項(xiàng)參數(shù)進(jìn)行解析;
[0053]步驟(3:)根據(jù)對(duì)所述數(shù)據(jù)項(xiàng)參數(shù)的解析結(jié)果,將所述數(shù)據(jù)報(bào)表的查詢(xún)結(jié)果數(shù)據(jù)項(xiàng)拼接為數(shù)據(jù)訪問(wèn)字符串,所述數(shù)據(jù)訪問(wèn)字符串由所述數(shù)據(jù)報(bào)表中的所有數(shù)據(jù)項(xiàng)構(gòu)成,其中所述數(shù)據(jù)項(xiàng)包括顯示數(shù)據(jù)項(xiàng)和訪問(wèn)數(shù)據(jù)項(xiàng),配置所述顯示數(shù)據(jù)項(xiàng)的取值規(guī)則為:靜態(tài)字符串與顯示位移,配置所述訪問(wèn)數(shù)據(jù)項(xiàng)的取值規(guī)則為:所述訪問(wèn)數(shù)據(jù)項(xiàng)在數(shù)據(jù)訪問(wèn)字符串中的位置與長(zhǎng)度;
[0054]步驟(4):對(duì)所述數(shù)據(jù)報(bào)表的查詢(xún)被動(dòng)態(tài)配置為:所述數(shù)據(jù)項(xiàng)查詢(xún)結(jié)果、時(shí)間段以及所述數(shù)據(jù)項(xiàng)排序語(yǔ)句;
[0055]步驟(5):根據(jù)配置的所述查詢(xún)結(jié)果數(shù)據(jù)項(xiàng)值,調(diào)用數(shù)據(jù)報(bào)表處理程序段,生成相應(yīng)的數(shù)據(jù)報(bào)表。
[0056]參見(jiàn)圖2,為本發(fā)明的一個(gè)實(shí)施例的程序流程圖。該程序流程是基于小機(jī),CICS,COBOL以及ORACLE等技術(shù)來(lái)實(shí)現(xiàn)的。以銀行業(yè)的數(shù)據(jù)報(bào)表為示例,銀行業(yè)數(shù)據(jù)中存在大量繁瑣復(fù)雜的數(shù)據(jù)項(xiàng)和表項(xiàng),為了能夠快速便捷有效的生成所需要的數(shù)據(jù)報(bào)表,執(zhí)行以下步驟:
[0057]連接數(shù)據(jù)庫(kù),此數(shù)據(jù)庫(kù)可為Oracle等數(shù)據(jù)庫(kù),接收輸入數(shù)據(jù)參數(shù),諸如銀行中的省行號(hào)以及報(bào)表編號(hào)等參數(shù),根據(jù)主鍵讀取NSTRPP表數(shù)據(jù),讀取SYS表,獲得工作日信息,根據(jù)采集標(biāo)識(shí)、日期判斷是否輸出數(shù)據(jù)報(bào)表。
[0058]如果判斷為輸出該數(shù)據(jù)報(bào)表,則打開(kāi)所輸出的數(shù)據(jù)庫(kù)文件,對(duì)其中的數(shù)據(jù)項(xiàng)參數(shù)進(jìn)行解析,在銀行業(yè)中,一般解析如下參數(shù):
[0059]解析索引機(jī)構(gòu):RPP-TXN0RG ;
[0060]解析副標(biāo)題:RPP_RPTPNM;
[0061]解析分欄合計(jì)參數(shù):RPP-RPTSTA ;
[0062]解析總計(jì)參數(shù):RPP_RPTTTA ;
[0063]解析貨幣:RPP-RPTCTC;
[0064]解析合計(jì)欄條件:RPP_RPTSTC ;
[0065]解析分頁(yè)欄條件:RPP_RPTPTC ;
[0066]解析標(biāo)題欄:RPP_RPTTAL;
[0067]解析數(shù)據(jù)場(chǎng)數(shù)據(jù)項(xiàng)參數(shù):RPP_RPTFTA ;
[0068]解析SQL 排序語(yǔ)句:RPP_SQL0RD ;
[0069]解析時(shí)間:RPP_SQLTWR,確定時(shí)間段。
[0070]接下來(lái),根據(jù)對(duì)所述數(shù)據(jù)項(xiàng)參數(shù)的解析結(jié)果,將所述數(shù)據(jù)報(bào)表的查詢(xún)結(jié)果數(shù)據(jù)項(xiàng)拼接為數(shù)據(jù)訪問(wèn)字符串,所述數(shù)據(jù)訪問(wèn)字符串由所述數(shù)據(jù)報(bào)表中的所有數(shù)據(jù)項(xiàng)構(gòu)成,其中所述數(shù)據(jù)項(xiàng)包括顯示數(shù)據(jù)項(xiàng)和訪問(wèn)數(shù)據(jù)項(xiàng),配置所述顯示數(shù)據(jù)項(xiàng)的取值規(guī)則為:靜態(tài)字符串與顯示位移,配置所述訪問(wèn)數(shù)據(jù)項(xiàng)的取值規(guī)則為:所述訪問(wèn)數(shù)據(jù)項(xiàng)在數(shù)據(jù)訪問(wèn)字符串中的位置與長(zhǎng)度。
[0071]然后,對(duì)所述數(shù)據(jù)報(bào)表的查詢(xún)被動(dòng)態(tài)配置為:所述數(shù)據(jù)項(xiàng)查詢(xún)結(jié)果+時(shí)間段+所述數(shù)據(jù)項(xiàng)排序語(yǔ)句;該查詢(xún)可為動(dòng)態(tài)SQL語(yǔ)句為:RPP-RPTSQL +時(shí)間段+排序語(yǔ)句,建立CURSOR,OPEN CURSOR,初始化循環(huán)變量,統(tǒng)計(jì)變量:
[0072]首次循環(huán)標(biāo)識(shí):Y ;
[0073]結(jié)束標(biāo)識(shí):Ν ;
[0074]頁(yè)初始標(biāo)識(shí):Υ ;
[0075]空文件標(biāo)識(shí):Ν ;
[0076]合計(jì)/總計(jì)臨時(shí)變量數(shù)據(jù):0。
[0077]接下來(lái),根據(jù)配置的所述查詢(xún)結(jié)果數(shù)據(jù)項(xiàng)值,調(diào)用數(shù)據(jù)報(bào)表處理程序段,主程序通過(guò)讀取這些信息,就可以拼接報(bào)表數(shù)據(jù)行、標(biāo)題、副標(biāo)題、標(biāo)題列等,也可以判斷出是否換頁(yè)、是否需要進(jìn)行小計(jì)、何時(shí)進(jìn)行合計(jì)等,從而生成符合生產(chǎn)要求的報(bào)表。 [0078]還是以銀行業(yè)數(shù)據(jù)報(bào)表為例,上述步驟的具體程序流程為:
[0079]i)判斷結(jié)束標(biāo)識(shí)是否為Y ?若是,則轉(zhuǎn)到步驟xii);
[0080]ii)循環(huán)體 FETCH CURSOR ;
[0081]iii)判斷記錄是否存在?若存在轉(zhuǎn)到步驟V)
[0082]iv)判斷是否為第一次循環(huán)?若為是,則將結(jié)束標(biāo)識(shí)置為Y,空文件標(biāo)識(shí)置為Y,首次循環(huán)標(biāo)識(shí)置為N,同時(shí)轉(zhuǎn)到步驟i);若為否,則將結(jié)束標(biāo)識(shí)置為Y,首次循環(huán)標(biāo)識(shí)置為N,同時(shí)轉(zhuǎn)到步驟i);
[0083]V)將“數(shù)據(jù)訪問(wèn)字符串”中的回車(chē)換行替換為空格,進(jìn)行換頁(yè)控制;
[0084]vi)判斷是否頁(yè)滿(mǎn),若頁(yè)滿(mǎn),則將頁(yè)初始標(biāo)識(shí)置為Y,同時(shí)清空合計(jì)條件字符串,再轉(zhuǎn)到步驟vii);若頁(yè)未滿(mǎn),則直接轉(zhuǎn)到步驟vii);
[0085]vii)根據(jù)換頁(yè)條件進(jìn)行換頁(yè)判斷,若不滿(mǎn)足條件,則退出換頁(yè)控制,更新?lián)Q頁(yè)條件臨時(shí)變量,同時(shí)將頁(yè)初始標(biāo)識(shí)置為Y,并清空合計(jì)條件字符串;
[0086]viii)合計(jì)欄處理,若配置了合計(jì)欄,且滿(mǎn)足合計(jì)條件,則打印合計(jì)欄;
[0087]ix)若頁(yè)初始標(biāo)識(shí)為Y,則打印報(bào)表標(biāo)題,根據(jù)配置的合計(jì)標(biāo)識(shí),進(jìn)行金額、數(shù)字的合計(jì);
[0088]x)根據(jù)配置的位移、長(zhǎng)度等信息,將“數(shù)據(jù)訪問(wèn)字符串”中的內(nèi)容,拆分到報(bào)表行中,寫(xiě)入一行記錄;
[0089]xi)將首次循環(huán)標(biāo)識(shí)置為N,頁(yè)初始標(biāo)識(shí)置為N,并轉(zhuǎn)到步驟i);
[0090]xii)關(guān)閉⑶RS0R,判斷空文件標(biāo)識(shí)是否為Y,若否,則打印合計(jì)欄,若配置了總計(jì)參數(shù),則打印總計(jì)欄,轉(zhuǎn)到步驟xiii);若是,則直接轉(zhuǎn)到步驟xiii);
[0091]xiii)關(guān)閉輸出文件,結(jié)束流程。
[0092]更加具體的,還是以銀行業(yè)數(shù)據(jù)報(bào)表為例,以下列舉了數(shù)據(jù)報(bào)表的基本信息,以及在⑶TRPP表維護(hù)的一條記錄:
[0093]I)報(bào)表基本信息:
[0094]報(bào)表名稱(chēng):手動(dòng)處理清單(網(wǎng)點(diǎn))
[0095]報(bào)表編號(hào):NSBD6023
[0096]采集標(biāo)識(shí):日?qǐng)?bào)
[0097]2)⑶TRPP表維護(hù)了如下一條記錄:
[0098]
【權(quán)利要求】
1.一種自動(dòng)生成數(shù)據(jù)報(bào)表方法,其特征在于,該方法包括以下步驟: 步驟(1):連接數(shù)據(jù)庫(kù),接收輸入?yún)?shù),判斷是否輸出數(shù)據(jù)報(bào)表; 步驟(2):如果判斷為輸出數(shù)據(jù)報(bào)表,則打開(kāi)數(shù)據(jù)庫(kù)文件,對(duì)數(shù)據(jù)項(xiàng)參數(shù)進(jìn)行解析; 步驟(3):根據(jù)對(duì)所述數(shù)據(jù)項(xiàng)參數(shù)的解析結(jié)果,將所述數(shù)據(jù)報(bào)表的查詢(xún)結(jié)果數(shù)據(jù)項(xiàng)拼接為數(shù)據(jù)訪問(wèn)字符串,所述數(shù)據(jù)訪問(wèn)字符串由所述數(shù)據(jù)報(bào)表中的所有數(shù)據(jù)項(xiàng)構(gòu)成,其中所述數(shù)據(jù)項(xiàng)包括顯示數(shù)據(jù)項(xiàng)和訪問(wèn)數(shù)據(jù)項(xiàng),配置所述顯示數(shù)據(jù)項(xiàng)的取值規(guī)則為:靜態(tài)字符串與顯示位移,配置所述訪問(wèn)數(shù)據(jù)項(xiàng)的取值規(guī)則為:所述訪問(wèn)數(shù)據(jù)項(xiàng)在數(shù)據(jù)訪問(wèn)字符串中的位置與長(zhǎng)度; 步驟(4):對(duì)所述數(shù)據(jù)報(bào)表的查詢(xún)被動(dòng)態(tài)配置為:所述數(shù)據(jù)項(xiàng)查詢(xún)結(jié)果、時(shí)間段以及所述數(shù)據(jù)項(xiàng)排序語(yǔ)句; 步驟(5):根據(jù)配置的所述查詢(xún)結(jié)果數(shù)據(jù)項(xiàng)值,調(diào)用數(shù)據(jù)報(bào)表處理程序段,生成相應(yīng)的數(shù)據(jù)報(bào)表。
2.根據(jù)權(quán)利要求1所述的方法,其特征在于, 步驟(1)中所述判斷是否輸出數(shù)據(jù)報(bào)表,是根據(jù)主鍵讀取數(shù)據(jù)庫(kù)數(shù)據(jù),獲取工作日信息來(lái)判斷的,所述工作日信息包括采集標(biāo)識(shí)、日期; 步驟(2)中解析數(shù)據(jù)項(xiàng)參數(shù)包括:解析索引機(jī)構(gòu),解析副標(biāo)題,解析分欄合計(jì)參數(shù),解析總計(jì)參數(shù),解析貨幣,解析合計(jì)欄條件,解析分欄條件,解析標(biāo)題欄,解析數(shù)據(jù)場(chǎng)數(shù)據(jù)項(xiàng)參數(shù),解析數(shù)據(jù)項(xiàng)排序語(yǔ)句,解析時(shí)間; 步驟(4)中對(duì)所述數(shù)據(jù)報(bào)表的查詢(xún)?yōu)镾QL查詢(xún)語(yǔ)句; 步驟(5)中所述根據(jù)配置的所述查詢(xún)結(jié)果數(shù)據(jù)項(xiàng)值,調(diào)用數(shù)據(jù)報(bào)表處理程序段,生成相應(yīng)的數(shù)據(jù)報(bào)表,具體包括以下步驟: 建立指針,打開(kāi)指針; 初始化循環(huán)變量、統(tǒng)計(jì)變量,設(shè)置首次循環(huán)標(biāo)識(shí)、結(jié)束標(biāo)識(shí)、頁(yè)初始標(biāo)識(shí),空文件標(biāo)識(shí),合計(jì)/總計(jì)臨時(shí)變量組; 根據(jù)配置的所述頁(yè)初始標(biāo)識(shí),進(jìn)行是否換頁(yè)的操作,若換頁(yè)則輸出數(shù)據(jù)報(bào)表標(biāo)題,并清空合計(jì)條件字符串; 根據(jù)配置的合計(jì)欄標(biāo)識(shí)和參數(shù),若滿(mǎn)足合計(jì)條件,則進(jìn)行金額、數(shù)字的合計(jì),輸出合計(jì)欄; 根據(jù)配置的所述數(shù)據(jù)訪問(wèn)字符串中的位移、長(zhǎng)度信息,將所述數(shù)據(jù)訪問(wèn)字符串中的內(nèi)容,拆分到數(shù)據(jù)報(bào)表的行中,寫(xiě)入一行記錄; 根據(jù)配置的總計(jì)欄標(biāo)識(shí)和參數(shù),輸出總計(jì)欄; 生成相應(yīng)的數(shù)據(jù)報(bào)表。
3.一種自動(dòng)生成數(shù)據(jù)報(bào)表的系統(tǒng),其特征在于,該系統(tǒng)包括以下模塊: 連接數(shù)據(jù)庫(kù)模塊,連接數(shù)據(jù)庫(kù),接收輸入?yún)?shù),判斷是否輸出數(shù)據(jù)報(bào)表; 參數(shù)解析模塊,如果判斷為輸出數(shù)據(jù)報(bào)表,則打開(kāi)數(shù)據(jù)庫(kù)文件,對(duì)數(shù)據(jù)項(xiàng)參數(shù)進(jìn)行解析; 配置數(shù)據(jù)訪問(wèn)字符串模塊,根據(jù)對(duì)所述數(shù)據(jù)項(xiàng)參數(shù)的解析結(jié)果,將所述數(shù)據(jù)報(bào)表的查詢(xún)結(jié)果數(shù)據(jù)項(xiàng)拼接為數(shù)據(jù)訪問(wèn)字符串,所述數(shù)據(jù)訪問(wèn)字符串由所述數(shù)據(jù)報(bào)表中的所有數(shù)據(jù)項(xiàng)構(gòu)成,其中所述數(shù)據(jù)項(xiàng)包括顯示數(shù)據(jù)項(xiàng)和訪問(wèn)數(shù)據(jù)項(xiàng),配置所述顯示數(shù)據(jù)項(xiàng)的取值規(guī)則為:靜態(tài)字符串與顯示位移,配置所述訪問(wèn)數(shù)據(jù)項(xiàng)的取值規(guī)則為:所述訪問(wèn)數(shù)據(jù)項(xiàng)在數(shù)據(jù)訪問(wèn)字符串中的位置與長(zhǎng)度; 查詢(xún)模塊,對(duì)所述數(shù)據(jù)報(bào)表的查詢(xún)被動(dòng)態(tài)配置為:所述數(shù)據(jù)項(xiàng)查詢(xún)結(jié)果、時(shí)間段以及所述數(shù)據(jù)項(xiàng)排序語(yǔ)句; 數(shù)據(jù)報(bào)表生成模塊,根據(jù)配置的所述數(shù)據(jù)報(bào)表的數(shù)據(jù)項(xiàng)值,利用進(jìn)程間通信技術(shù),調(diào)用數(shù)據(jù)報(bào)表處理進(jìn)程,生成相應(yīng)的數(shù)據(jù)報(bào)表。
4.根據(jù)權(quán)利要求3所述的系統(tǒng),其特征在于,連接數(shù)據(jù)庫(kù)模塊中,所述判斷是否輸出數(shù)據(jù)報(bào)表,是根據(jù)主鍵讀取數(shù)據(jù)庫(kù)數(shù)據(jù),獲取工作日信息來(lái)判斷的,所述工作日信息包括采集標(biāo)識(shí)、日期; 參數(shù)解析模塊中,解析數(shù)據(jù)項(xiàng)參數(shù)包括:解析索引機(jī)構(gòu),解析副標(biāo)題,解析分欄合計(jì)參數(shù),解析總計(jì)參數(shù),解析貨幣,解析合計(jì)欄條件,解析分欄條件,解析標(biāo)題欄,解析數(shù)據(jù)場(chǎng)數(shù)據(jù)項(xiàng)參數(shù),解析數(shù)據(jù)項(xiàng)排序語(yǔ)句,解析時(shí)間; 查詢(xún)模塊中,對(duì)所述數(shù)據(jù)報(bào)表的查詢(xún)?yōu)镾QL查詢(xún)語(yǔ)句; 數(shù)據(jù)報(bào)表生成模塊中,所述根據(jù)配置的所述查詢(xún)結(jié)果數(shù)據(jù)項(xiàng)值,調(diào)用數(shù)據(jù)報(bào)表處理程序段,生成相應(yīng)的數(shù)據(jù)報(bào)表,具體包括以下幾個(gè)模塊: 指針模塊,建立指針,打開(kāi)指針; 初始化模塊,初始化循環(huán)變量、統(tǒng)計(jì)變量,設(shè)置首次循環(huán)標(biāo)識(shí)、結(jié)束標(biāo)識(shí)、頁(yè)初始標(biāo)識(shí),空文件標(biāo)識(shí),合計(jì)/總計(jì)臨時(shí)變量組; 換頁(yè)操作模塊,根據(jù)配置的所述頁(yè)初始標(biāo)識(shí),進(jìn)行是否換頁(yè)的操作,若換頁(yè)則輸出數(shù)據(jù)報(bào)表標(biāo)題,并清空合計(jì)條件字符串; 合計(jì)欄操作模塊,根據(jù)配置的合計(jì)欄標(biāo)識(shí)和參數(shù),若滿(mǎn)足合計(jì)條件,進(jìn)行金額、數(shù)字的合計(jì),輸出合計(jì)欄; 數(shù)據(jù)記錄模塊,根據(jù)配置的位移、長(zhǎng)度信息,將所述數(shù)據(jù)訪問(wèn)字符串中的內(nèi)容,拆分到數(shù)據(jù)報(bào)表的行中,寫(xiě)入一行記錄; 總計(jì)欄操作模塊,根據(jù)配置的總計(jì)欄標(biāo)識(shí)和參數(shù),輸出總計(jì)欄; 生成模塊,生成相應(yīng)的數(shù)據(jù)報(bào)表。
【文檔編號(hào)】G06F9/44GK103646049SQ201310612068
【公開(kāi)日】2014年3月19日 申請(qǐng)日期:2013年11月26日 優(yōu)先權(quán)日:2013年11月26日
【發(fā)明者】王倩, 黃凱 申請(qǐng)人:中國(guó)銀行股份有限公司
網(wǎng)友詢(xún)問(wèn)留言 已有0條留言
  • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1
广宗县| 浦东新区| 监利县| 泰兴市| 库尔勒市| 信阳市| 威海市| 鄂州市| 峡江县| 塔河县| 绵竹市| 镶黄旗| 墨竹工卡县| 庆元县| 祥云县| 高碑店市| 南乐县| 南充市| 通海县| 彝良县| 汝城县| 尼玛县| 龙陵县| 泰州市| 牡丹江市| 嘉义县| 陇西县| 登封市| 明星| 永川市| 庆安县| 泸西县| 措美县| 新兴县| 博湖县| 淳化县| 屏南县| 嘉义市| 化隆| 沁源县| 富民县|