專利名稱::一種生成報(bào)表的方法及系統(tǒng)的制作方法
技術(shù)領(lǐng)域:
:本發(fā)明涉及計(jì)算機(jī)軟件領(lǐng)域,更具體地說(shuō),涉及一種生成報(bào)表的方法及系統(tǒng)。
背景技術(shù):
:目前報(bào)表生成所采用的技術(shù),均為界面設(shè)計(jì),首先根據(jù)所要設(shè)計(jì)報(bào)表的特點(diǎn),選擇不同的報(bào)表類型,進(jìn)行一些初始化設(shè)置;然后利用報(bào)表軟件提供的界面,設(shè)計(jì)報(bào)表模型。在現(xiàn)有技術(shù)的方案中采用界面設(shè)計(jì)報(bào)表模型,再加載報(bào)表模型,展現(xiàn)出實(shí)際的報(bào)表。比如現(xiàn)有技術(shù)的方案中采用類似Excel報(bào)表設(shè)計(jì)模型(常用的報(bào)表軟件如水晶報(bào)表、潤(rùn)乾報(bào)表等均采用這種形式),在處理復(fù)雜報(bào)表(復(fù)合報(bào)表等)設(shè)計(jì)時(shí),界面設(shè)計(jì)簡(jiǎn)潔,具有一定優(yōu)勢(shì);但在處理簡(jiǎn)單報(bào)表以及格式相對(duì)固定的報(bào)表時(shí),由于現(xiàn)有技術(shù)為界面設(shè)計(jì)報(bào)表模型,所以必須利用專門的軟件來(lái)或利用WEB方式來(lái)設(shè)計(jì)報(bào)表模型開發(fā)報(bào)表,在需要轉(zhuǎn)換報(bào)表類型時(shí)操作比較復(fù)雜,所以開發(fā)效率較低,重復(fù)性工作較多。
發(fā)明內(nèi)容有鑒于此,本發(fā)明實(shí)施例提供了一種使用腳本語(yǔ)言生成報(bào)表的方法及系統(tǒng),以實(shí)現(xiàn)方便高效的開發(fā)表報(bào)。為了實(shí)現(xiàn)上述目的,本發(fā)明實(shí)施例提供了如下技術(shù)方案—種生成報(bào)表的方法,包括步驟使用腳本語(yǔ)言定制報(bào)表指令并將所述定制報(bào)表指令加以封裝,形成定制報(bào)表指令集;為所需的各個(gè)類型報(bào)表及其典型應(yīng)用編寫DSL模板,所述DSL模板為通過(guò)腳本語(yǔ)言使用所述指令集中的指令編寫形成的報(bào)表指令文件;通過(guò)解析程序分析所需的DSL模板,以分析后的結(jié)果生成報(bào)表。優(yōu)選的,在本發(fā)明實(shí)施例所述方法中,所述腳本語(yǔ)言為Groovy、JavaScript、Ruby或VbScript。優(yōu)選的,在本發(fā)明實(shí)施例所述方法中,所述腳本語(yǔ)言使用Uedit編輯器或Windows中的記事本程序作為編輯。優(yōu)選的,在本發(fā)明實(shí)施例所述方法中,所述定制報(bào)表指令包括方法指令和屬性指令。優(yōu)選的,在本發(fā)明實(shí)施例所述方法中,所述方法指令內(nèi)可以包含子方法指令;所述屬性指令可以包含屬性節(jié)點(diǎn)?!N生成報(bào)表的系統(tǒng),包括定制報(bào)表指令集形成裝置,用于使用腳本語(yǔ)言定制報(bào)表指令并將所述定制報(bào)表指令加以封裝,形成定制報(bào)表指令集;DSL模板報(bào)表定義裝置,用于為所需的各個(gè)類型報(bào)表及其典型應(yīng)用編寫DSL模板,所述DSL模板為通過(guò)腳本語(yǔ)言使用所述指令集中的指令編寫形成的報(bào)表指令文件;DSL報(bào)表指令解析裝置,用于通過(guò)解析程序分析所需的DSL模板,以分析后的結(jié)果生成報(bào)表。優(yōu)選的,在本發(fā)明實(shí)施例所述系統(tǒng)中,所述腳本語(yǔ)言為Groovy、JavaScript、Ruby或VbScript。優(yōu)選的,在本發(fā)明實(shí)施例所述系統(tǒng)中,所述腳本語(yǔ)言使用Uedit編輯器或Windows中的記事本程序作為編輯。優(yōu)選的,在本發(fā)明實(shí)施例所述系統(tǒng)中,所述定制報(bào)表指令包括方法指令和屬性指令。優(yōu)選的,在本發(fā)明實(shí)施例所述系統(tǒng)中,所述方法指令內(nèi)可以包含子方法指令;所述屬性指令可以包含屬性節(jié)點(diǎn)。通過(guò)以上技術(shù)方案可以看出,在本發(fā)明實(shí)施例的方法或系統(tǒng)中,通過(guò)腳本語(yǔ)言編寫專門用于生成報(bào)表的DSL,并采用模版報(bào)表的設(shè)計(jì)思路,從而使得報(bào)表的設(shè)計(jì)人員可以不用具備良好的編程能力的情況下,通過(guò)簡(jiǎn)單的學(xué)習(xí)后就可以用諸如Windows中的記事本或Uedit編輯器等來(lái)編寫簡(jiǎn)潔的代碼來(lái)高效的完成報(bào)表的設(shè)計(jì)。解決了現(xiàn)有技術(shù)中在處理簡(jiǎn)單報(bào)表以及格式相對(duì)固定的報(bào)表時(shí),必須利用專門的軟件來(lái)或利用WEB方式來(lái)設(shè)計(jì)報(bào)表模型生成報(bào)表,在需要轉(zhuǎn)換報(bào)表類型時(shí)操作比較復(fù)雜,所以開發(fā)效率較低,重復(fù)性工作較多的技術(shù)問(wèn)題。為了更清楚地說(shuō)明本發(fā)明實(shí)施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對(duì)實(shí)施例或現(xiàn)有技術(shù)描述中所需要使用的附圖作簡(jiǎn)單地介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的一些實(shí)施例,對(duì)于本領(lǐng)域普通技術(shù)人員來(lái)講,在不付出創(chuàng)造性勞動(dòng)的前提下,還可以根據(jù)這些附圖獲得其他的附圖。圖1為本發(fā)明實(shí)施例中所述方法的步驟流程圖;圖2為本發(fā)明實(shí)施例中所述系統(tǒng)的組成示意圖。具體實(shí)施例方式下面將結(jié)合本發(fā)明實(shí)施例中的附圖,對(duì)本發(fā)明實(shí)施例中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,所描述的實(shí)施例僅僅是本發(fā)明一部分實(shí)施例,而不是全部的實(shí)施例?;诒景l(fā)明中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒有做出創(chuàng)造性勞動(dòng)前提下所獲得的所有其他實(shí)施例,都屬于本發(fā)明保護(hù)的范圍。為了能夠更好的理解本發(fā)明實(shí)施例,以下是對(duì)本發(fā)明實(shí)施例中應(yīng)用到的一些技術(shù)內(nèi)容所作的相應(yīng)說(shuō)明DSL(domainspecificlanguage),即領(lǐng)域?qū)S谜Z(yǔ)言,其基本思想是求專不求全,不像通用目的語(yǔ)言那樣目標(biāo)范圍涵蓋一切軟件問(wèn)題,而是專門針對(duì)某一特定問(wèn)題的計(jì)算機(jī)語(yǔ)言。它是具有針對(duì)某一領(lǐng)域的特點(diǎn)量身定制的用來(lái)完成特定功能的一種編程語(yǔ)言。其特點(diǎn)是其功能具有很強(qiáng)的針對(duì)性、代碼簡(jiǎn)潔且簡(jiǎn)單易學(xué)。腳本語(yǔ)言,即腳本語(yǔ)言或其擴(kuò)建的語(yǔ)言,又叫動(dòng)態(tài)語(yǔ)言。是一種編程語(yǔ)言控制軟件應(yīng)用程序。它的執(zhí)行獨(dú)立于任何其他的應(yīng)用。它可以不需要安裝任何專門軟件就可以在諸4如WINDOWS中自帶的記事本等文本編輯器中完成程序的開發(fā)。報(bào)表模板、報(bào)表模板可以被認(rèn)為是原始報(bào)表中的數(shù)據(jù)和模板報(bào)表布局之間的關(guān)聯(lián)。模板中包含了基本結(jié)構(gòu),當(dāng)相應(yīng)字段被添加到報(bào)表時(shí),可以相應(yīng)的格式予以顯示和格式化報(bào)表。報(bào)表模板實(shí)際上是通常的報(bào)表文件。這意味著你能夠使用事實(shí)上任何的報(bào)表文件作為報(bào)表模板。模板能夠被應(yīng)用到其它報(bào)表,所以它們的格式化和布局能夠用作其它報(bào)表的基礎(chǔ)。把模板應(yīng)用到其它報(bào)表,布局等格式化將被應(yīng)用到報(bào)表。模板能夠存儲(chǔ)許多類型的對(duì)象。報(bào)表設(shè)計(jì)過(guò)程中的集中數(shù)據(jù)部分完成后,這些對(duì)象能夠被應(yīng)用到報(bào)表。這種方式可以節(jié)約大量的重復(fù)性勞動(dòng),有效的提高開發(fā)效率。本發(fā)明公開了一種使用腳本語(yǔ)言的DSL生成報(bào)表的方法,以實(shí)現(xiàn)方便高效的生成表報(bào)。通過(guò)腳本語(yǔ)言編寫專門用于生成報(bào)表的DSL,并采用模版報(bào)表的設(shè)計(jì)思路,從而使得報(bào)表的設(shè)計(jì)人員可以不用具備良好的編程能力的情況下,通過(guò)簡(jiǎn)單的學(xué)習(xí)后就可以使用諸如Windows中的記事本或Uedit編輯器等來(lái)編寫簡(jiǎn)潔的代碼來(lái)高效的完成報(bào)表的設(shè)計(jì)。本發(fā)明實(shí)施例中的腳本語(yǔ)言可以是JavaScript、VbScript、Ruby或Groovy等計(jì)算機(jī)腳本編程語(yǔ)言。圖1為本發(fā)明實(shí)施例中所述方法的步驟流程圖。以下根據(jù)圖1所示并以Groovy腳本語(yǔ)言為例來(lái)說(shuō)明本發(fā)明實(shí)施例方法的具體步驟步驟Sll、定制報(bào)表指令,形成定制報(bào)表指令集。本發(fā)明實(shí)施例使用腳本語(yǔ)言Groovy定制報(bào)表指令,根據(jù)要實(shí)現(xiàn)的報(bào)表特點(diǎn),定制報(bào)表指令。再利用腳本語(yǔ)言Groovy將定制的報(bào)表指令加以封裝,形成所需的報(bào)表指令集。所述指令可以包括方法指令和屬性指令對(duì)應(yīng)。方法指令內(nèi)可以包含子方法指令,而屬性指令內(nèi)不含任何子指令,屬性指令可包含屬性節(jié)點(diǎn)。比如,在使用Groovy腳本語(yǔ)言為開發(fā)語(yǔ)言時(shí),方法指令可以歸類如表1所示表1<table>tableseeoriginaldocumentpage5</column></row><table>方法指令名稱指令作用order排序指令group分組指令屬性指令可以歸類如表2所示表2屬性指令名稱所屬方法指令指令作用createreport/table定義報(bào)表屬性參數(shù)iddata數(shù)據(jù)源名稱dsdata數(shù)據(jù)源標(biāo)識(shí)sqldatasql語(yǔ)句bindingtable定義綁定區(qū)域sortFieldorder排序字段sortAscendingorder是否為升序groupFieldgroup分組字段headergroup分組字段的組頭行數(shù)footergroup分組字段的組腳行數(shù)cellrow報(bào)表單元格的內(nèi)容leftrow報(bào)表單元格所在列heightrow報(bào)表單元格占的行數(shù)widthrow報(bào)表單元格占的列數(shù)包含屬性節(jié)點(diǎn)的屬性指令可以如表3所示表36<table>tableseeoriginaldocumentpage7</column></row><table>復(fù)性勞動(dòng),有效的提高開發(fā)效率。以下為在使用Groovy腳本語(yǔ)言為開發(fā)語(yǔ)言時(shí)縱向報(bào)表DSL具體實(shí)現(xiàn)的實(shí)例當(dāng)只加入一個(gè)數(shù)據(jù)源,將數(shù)據(jù)源以報(bào)表形式展示時(shí),可以用以下代碼實(shí)現(xiàn)report{data{id'datal'ds'dbl'sql'select襯romschoolmates'initU帶排序及分組縱向報(bào)表可以用以下代碼實(shí)現(xiàn)report{createtitle:'測(cè)試報(bào)表',row:2,col:3data{id'cktel'ds'dbl'sql'select*fromschoolmates'table{createtype:'vextend',dataID:'datal',top:1,left:1,height:2,width:3bindingtop:2,left:1,height:1,width:3order{sortField'F:icTsortAscendingOgroup{groupField'F:city','F:name'row{cell'學(xué)號(hào)','城市','姓名'row{cell'F:icT,'F:city','F:name'8init{}步驟S13、解析DSL報(bào)表指令文件,并以報(bào)表形式展現(xiàn)。解析DSL報(bào)表指令文件。參考所述DSL模板報(bào)表,完成編寫報(bào)表指令文件后,就可以通過(guò)專門編寫的解析程序自動(dòng)化分析報(bào)表指令文件,并將分析后的結(jié)果以報(bào)表形式展現(xiàn)出來(lái)。此外,本發(fā)明實(shí)施例還公開了一種使用腳本語(yǔ)言的DSL生成報(bào)表的系統(tǒng),包括定制報(bào)表指令集形成裝置,DSL模板報(bào)表定義裝置2和DSL報(bào)表指令解析裝置3。本發(fā)明實(shí)施例通過(guò)腳本語(yǔ)言編寫專門用于開發(fā)報(bào)表的DSL,并采用模版報(bào)表的設(shè)計(jì)思路,從而使得報(bào)表的設(shè)計(jì)人員可以不用具備良好的編程能力的情況下,通過(guò)簡(jiǎn)單的學(xué)習(xí)后就可以使用諸如Windows中的記事本或Uedit編輯器等來(lái)編寫簡(jiǎn)潔的代碼來(lái)高效的完成報(bào)表的設(shè)計(jì)。本發(fā)明實(shí)施例中的腳本語(yǔ)言可以是JavaScript、VbScript、Ruby或Groovy等計(jì)算機(jī)腳本編程語(yǔ)言。圖2為本發(fā)明實(shí)施例中所述系統(tǒng)的組成示意圖。以下根據(jù)圖2所示并以Groovy腳本語(yǔ)言為例來(lái)說(shuō)明本發(fā)明實(shí)施例系統(tǒng)的具體結(jié)構(gòu)定制報(bào)表指令集形成裝置,DSL模板報(bào)表定義裝置2和DSL報(bào)表指令解析裝置3,定制報(bào)表指令集形成裝置1,用于使用腳本語(yǔ)言定制報(bào)表指令并將所述定制報(bào)表指令加以封裝,形成定制報(bào)表指令集;本發(fā)明實(shí)施例中,所述定制報(bào)表指令集形成裝置1使用腳本語(yǔ)言Groovy定制報(bào)表指令,根據(jù)要實(shí)現(xiàn)的報(bào)表特點(diǎn),定制報(bào)表指令。再利用腳本語(yǔ)言Groovy將定制的報(bào)表指令加以封裝,形成所需的報(bào)表指令集。所述指令可以包括方法指令和屬性指令對(duì)應(yīng)。方法指令內(nèi)可以包含子方法指令,而屬性指令內(nèi)不含任何子指令,屬性指令可包含屬性節(jié)點(diǎn)。比如,在使用Groovy腳本語(yǔ)言為開發(fā)語(yǔ)言時(shí),方法指令可以歸類如表4所示表4<table>tableseeoriginaldocumentpage9</column></row><table>方法指令名稱指令作用row定義報(bào)表的一行style定義樣式init初始化指令order排序指令group分組指令屬性指令可以歸類如表5所示表5屬性指令名稱所屬方法指令指令作用createreport/table定義報(bào)表屬性參數(shù)iddata數(shù)據(jù)源名稱dsdata數(shù)據(jù)源標(biāo)識(shí)sqldatasql語(yǔ)句bindingtable定義綁定區(qū)域sortFieldorder排序字段sortAscendingorder是否為升序groupFieldgroup分組字段headergroup分組字段的組頭行數(shù)footergroup分組字段的組腳行數(shù)cellrow報(bào)表單元格的內(nèi)容leftrow報(bào)表單元格所在列heightrow報(bào)表單元格占的行數(shù)widthrow報(bào)表單元格占的列數(shù)10包含屬性節(jié)點(diǎn)的屬性指令可以如表6所示表6屬性指令名稱所屬方法指令屬性節(jié)點(diǎn)名稱屬性節(jié)點(diǎn)作用title報(bào)表名稱type報(bào)表類型encoding編碼才各式creat6reportrow報(bào)表占的行數(shù)col報(bào)表占的列數(shù)height行高width列寬createtabletype子表類型style子表擴(kuò)展方式,僅用于固定行列報(bào)表dataID引用數(shù)據(jù)源的名稱top子表起始行l(wèi)eft子表起始列height子表共占的行數(shù)width子表共占的列數(shù)top綁定區(qū)域起始行bindingtableleft綁定區(qū)域起始列height綁定區(qū)域占的行數(shù)width綁定區(qū)域占的列數(shù)11DSL模板報(bào)表定義裝置2,用于使用腳本語(yǔ)言編寫定制模板報(bào)表形成報(bào)表指令文件,定義DSL模板報(bào)表;所述DSL模板報(bào)表定義裝置2根據(jù)不同類型的報(bào)表,例如固定行列報(bào)表、縱向擴(kuò)展報(bào)表等具體報(bào)表類型,以及典型的應(yīng)用場(chǎng)景形成報(bào)表指令文件,定義DSL模板報(bào)表,所述DSL模板報(bào)表覆蓋各具體類型報(bào)表及其典型應(yīng)用。通過(guò)定義能夠被應(yīng)用到其它報(bào)表的DSL模板報(bào)表,可以節(jié)約大量的重復(fù)性勞動(dòng),有效的提高開發(fā)效率。以下為在使用Groovy腳本語(yǔ)言為開發(fā)語(yǔ)言時(shí)縱向報(bào)表DSL具體實(shí)現(xiàn)的實(shí)例當(dāng)只加入一個(gè)數(shù)據(jù)源,將數(shù)據(jù)源以報(bào)表形式展示時(shí),可以用以下代碼實(shí)現(xiàn)report{data{id'datal'ds'dbl'sql'select襯romschoolmates'initU帶排序及分組縱向報(bào)表可以用以下代碼實(shí)現(xiàn)12report{createtitle:'測(cè)i式手艮表',row:2,col:3data{id'cktel'ds'dbl'sql'select*fromschoolmates'table{createtype:'vextend',dataID:'datal',top:1,left:1,height:2,width:3bindingtop:2,left:1,height:1,width:3order{sortField'F:id'sortAscendingOgroup{groupField'F:city','F:name'row{cell'學(xué)號(hào)','城市','姓名'row{cell'F:id','F:city','F:name'init{}DSL報(bào)表指令解析裝置3,用于通過(guò)專門編寫的解析程序自動(dòng)化分析報(bào)表指令文件,并將分析后的結(jié)果以報(bào)表形式展現(xiàn)出來(lái)。所述DSL報(bào)表指令解析裝置3解析DSL報(bào)表指令文件。參考所述DSL模板報(bào)表,完成編寫報(bào)表指令文件后,就可以通過(guò)專門編寫的解析程序自動(dòng)化分析報(bào)表指令文件,并將分析后的結(jié)果以報(bào)表形式展現(xiàn)出來(lái)。需要說(shuō)明的是,本
技術(shù)領(lǐng)域:
人員可以理解,在本發(fā)明實(shí)施例中用于生成報(bào)表的腳本語(yǔ)言可以是除本發(fā)明實(shí)施例中所提供的幾種腳本語(yǔ)言以外的其它類型的可以適用的腳本語(yǔ)言。在本發(fā)明實(shí)施例中用來(lái)生成報(bào)表的腳本語(yǔ)言所用到的編輯器也可以是除本發(fā)明實(shí)施例中所提供的幾種腳本語(yǔ)言編輯器以外的其它類型的可以適用的腳本語(yǔ)言編輯器。綜上所述,在本發(fā)明實(shí)施例中,通過(guò)腳本語(yǔ)言編寫專門用于生成報(bào)表的DSL,并采用模版報(bào)表的設(shè)計(jì)思路,從而使得報(bào)表的設(shè)計(jì)人員可以不用具備良好的編程能力的情況下,通過(guò)簡(jiǎn)單的學(xué)習(xí)后就可以用諸如Windows中的記事本或Uedit編輯器等來(lái)編寫簡(jiǎn)潔的代碼來(lái)高效的完成報(bào)表的設(shè)計(jì)。解決了現(xiàn)有技術(shù)中在處理簡(jiǎn)單報(bào)表以及格式相對(duì)固定的報(bào)表時(shí),必須利用專門的軟件來(lái)或利用WEB方式來(lái)設(shè)計(jì)報(bào)表模型生成報(bào)表,在需要轉(zhuǎn)換報(bào)表類型時(shí)操作比較復(fù)雜,所以開發(fā)效率較低,重復(fù)性工作較多的技術(shù)問(wèn)題。本說(shuō)明書中各個(gè)實(shí)施例采用遞進(jìn)的方式描述,每個(gè)實(shí)施例重點(diǎn)說(shuō)明的都是與其他實(shí)施例的不同之處,各個(gè)實(shí)施例之間相同相似部分互相參見即可。對(duì)所公開的實(shí)施例的上述說(shuō)明,使本領(lǐng)域?qū)I(yè)技術(shù)人員能夠?qū)崿F(xiàn)或使用本發(fā)明。對(duì)這些實(shí)施例的多種修改對(duì)本領(lǐng)域的專業(yè)技術(shù)人員來(lái)說(shuō)將是顯而易見的,本文中所定義的一般原理可以在不脫離本發(fā)明的精神或范圍的情況下,在其它實(shí)施例中實(shí)現(xiàn)。因此,本發(fā)明將不會(huì)被限制于本文所示的這些實(shí)施例,而是要符合與本文所公開的原理和新穎特點(diǎn)相一致的最寬的范圍。1權(quán)利要求一種生成報(bào)表的方法,其特征在于,包括步驟使用腳本語(yǔ)言定制報(bào)表指令并將所述定制報(bào)表指令加以封裝,形成定制報(bào)表指令集;為所需的各個(gè)類型報(bào)表及其典型應(yīng)用編寫DSL模板,所述DSL模板為通過(guò)腳本語(yǔ)言使用所述指令集中的指令編寫形成的報(bào)表指令文件;通過(guò)解析程序分析所需的DSL模板,以分析后的結(jié)果生成報(bào)表。2.根據(jù)權(quán)利要求1所述方法,其特征在于,所述腳本語(yǔ)言為Groovy、JavaScript、Ruby或VbScript。3.根據(jù)權(quán)利要求1或2中所述方法,其特征在于,所述腳本語(yǔ)言使用Uedit編輯器或Windows中的記事本程序作為編輯。4.根據(jù)權(quán)利要求1或2中所述方法,其特征在于,所述定制報(bào)表指令包括方法指令和屬性指令。5.根據(jù)權(quán)利要求4所述方法,其特征在于,所述方法指令內(nèi)包含子方法指令;所述屬性指令包含屬性節(jié)點(diǎn)。6.—種生成報(bào)表的系統(tǒng),其特征在于,包括定制報(bào)表指令集形成裝置,用于使用腳本語(yǔ)言定制報(bào)表指令并將所述定制報(bào)表指令加以封裝,形成定制報(bào)表指令集;DSL模板報(bào)表定義裝置,用于為所需的各個(gè)類型報(bào)表及其典型應(yīng)用編寫DSL模板,所述DSL模板為通過(guò)腳本語(yǔ)言使用所述指令集中的指令編寫形成的報(bào)表指令文件;DSL報(bào)表指令解析裝置,用于通過(guò)解析程序分析所需的DSL模板,以分析后的結(jié)果生成報(bào)表。7.根據(jù)權(quán)利要求6所述系統(tǒng),其特征在于,所述腳本語(yǔ)言為Groovy、JavaScript、Ruby或VbScript。8.根據(jù)權(quán)利要求6或7中所述系統(tǒng),其特征在于,所述腳本語(yǔ)言使用Uedit編輯器或Windows中的記事本程序作為編輯。9.根據(jù)權(quán)利要求6或7中所述系統(tǒng),其特征在于,所述定制報(bào)表指令包括方法指令和屬性指令。10.根據(jù)權(quán)利要求9所述系統(tǒng),其特征在于,所述方法指令內(nèi)包含子方法指令;所述屬性指令包含屬性節(jié)點(diǎn)。全文摘要本發(fā)明實(shí)施例公開了一種使用腳本語(yǔ)言生成報(bào)表的方法及系統(tǒng),包括步驟使用腳本語(yǔ)言定制報(bào)表指令并將所述定制報(bào)表指令加以封裝,形成定制報(bào)表指令集;使用腳本語(yǔ)言編寫定制模板報(bào)表,定義DSL模板報(bào)表;解析DSL報(bào)表指令文件,通過(guò)專門編寫的解析程序自動(dòng)化分析報(bào)表指令文件,并將分析后的結(jié)果以報(bào)表形式展現(xiàn)出來(lái)。本發(fā)明實(shí)施例中的技術(shù)方案不必利用專門的軟件來(lái)或利用WEB方式來(lái)設(shè)計(jì)報(bào)表模型開發(fā)報(bào)表,而且在需要轉(zhuǎn)換報(bào)表類型時(shí)操作簡(jiǎn)單,從而開發(fā)效率高,重復(fù)性工作少。文檔編號(hào)G06F9/44GK101706722SQ20091024972公開日2010年5月12日申請(qǐng)日期2009年12月1日優(yōu)先權(quán)日2009年12月1日發(fā)明者車帥,陳軍營(yíng)申請(qǐng)人:山東中創(chuàng)軟件工程股份有限公司;山東中創(chuàng)軟件商用中間件股份有限公司