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

Word文件生成方法和裝置與流程

文檔序號:12464552閱讀:366來源:國知局
本申請涉及數(shù)據(jù)文件領(lǐng)域,具體而言,涉及一種Word文件生成方法和裝置。
背景技術(shù)
::PowerReport是一種可以自動生成Word文件的開發(fā)框架,可以向Word模板中填充文本、圖表和表格等數(shù)據(jù)。具體地,現(xiàn)有技術(shù)中Word文件生成步驟如下:1)創(chuàng)建Word文件模板,在模板中定義一些填充指令。具體地,可以通過插入ContentControl的方式來插入填充指令,填充指令包括$profilename、#dump等指令,其中,$profilename指令用于填充文本,#dump指令用于填充表格和圖表。2)結(jié)合Word模板中的變量字符串,創(chuàng)建數(shù)據(jù)源。具體地,數(shù)據(jù)源的創(chuàng)建主要通過編碼實(shí)現(xiàn),其中,填充文本主要填充$profilename指令等文本指令,數(shù)據(jù)源代碼中對于這種指令,維護(hù)著一個(gè)鍵值表結(jié)構(gòu),對于$profilename指令來說,其鍵為profilename,代碼中給其附上相應(yīng)的值,將會替換$profilename指令。填充表格和圖表主要使用#dump指令,type=table表示填充表格,type=chart表示填充圖表,代碼中根據(jù)datasource=xxx設(shè)置數(shù)據(jù)源,數(shù)據(jù)源為一個(gè)二維表對象。3)結(jié)合Word模板和數(shù)據(jù)源,生成Word文件,其中,數(shù)據(jù)源中的數(shù)據(jù)會根據(jù)相關(guān)指令進(jìn)行填充。具體地,可以通過調(diào)用PowerReport類庫代碼生成Word文件。通過上述描述可知,通過PowerReport開發(fā)Word文件的過程中,Word模板制作和數(shù)據(jù)源制作牢牢結(jié)合在一起,這種開發(fā)方式在實(shí)際操作中會有很多不便,具體如下:首先,創(chuàng)建Word模板不是一次性過程,需要通過結(jié)合數(shù)據(jù)源創(chuàng)建Word文件,并檢查Word文件是否有數(shù)據(jù)、樣式是否正確,來確定Word模板是否需要修改。因此,創(chuàng)建Word模板和創(chuàng)建數(shù)據(jù)源必須由一個(gè)人進(jìn)行。其次,實(shí)際開發(fā)階段可能沒有數(shù)據(jù),這時(shí)為了測試創(chuàng)建的Word模板是否有效,就需要創(chuàng)建一批額外的測試數(shù)據(jù),通過編碼創(chuàng)建測試數(shù)據(jù),對操作人員的要求較高。最后,如果Word模板樣式需要修改,必須在開發(fā)環(huán)境中進(jìn)行,例如,在VisualStudio 下進(jìn)行,操作不方便,效率低下。針對相關(guān)技術(shù)中生成Word文件操作較為不便的問題,目前尚未提出有效的解決方案。技術(shù)實(shí)現(xiàn)要素:本申請的主要目的在于提供一種Word文件生成方法和裝置,以解決相關(guān)技術(shù)中生成Word文件操作較為不便的問題。為了實(shí)現(xiàn)上述目的,根據(jù)本申請的一個(gè)方面,提供了一種Word文件生成方法。該方法包括:通過預(yù)設(shè)組件接收Word模板,其中,Word模板中設(shè)置有數(shù)據(jù)源標(biāo)識符,數(shù)據(jù)源標(biāo)識符與數(shù)據(jù)源一一對應(yīng);通過預(yù)設(shè)組件接收數(shù)據(jù)源文件,其中,數(shù)據(jù)源文件包括至少一個(gè)鍵值表和/或至少一個(gè)二維表,至少一個(gè)鍵值表和/或至少一個(gè)二維表與數(shù)據(jù)源標(biāo)識符相對應(yīng);以及通過預(yù)設(shè)組件將數(shù)據(jù)源文件中的數(shù)據(jù)填充至Word模板中,生成Word文件。進(jìn)一步地,通過預(yù)設(shè)組件將數(shù)據(jù)源文件中的數(shù)據(jù)填充至Word模板中,生成Word文件包括:通過預(yù)設(shè)組件根據(jù)數(shù)據(jù)源標(biāo)識符從數(shù)據(jù)源文件中查找對應(yīng)的數(shù)據(jù)表;通過預(yù)設(shè)組件從數(shù)據(jù)源標(biāo)識符對應(yīng)的數(shù)據(jù)表中讀取數(shù)據(jù);以及通過預(yù)設(shè)組件將數(shù)據(jù)源標(biāo)識符對應(yīng)的數(shù)據(jù)表中的數(shù)據(jù)填充至Word模板中,生成Word文件。進(jìn)一步地,通過預(yù)設(shè)組件將數(shù)據(jù)源標(biāo)識符對應(yīng)的數(shù)據(jù)表中的數(shù)據(jù)填充至Word模板中,生成Word文件包括:預(yù)設(shè)組件調(diào)用預(yù)設(shè)類庫將數(shù)據(jù)源標(biāo)識符對應(yīng)的數(shù)據(jù)表中的數(shù)據(jù)填充至Word模板中。進(jìn)一步地,在通過預(yù)設(shè)組件接收數(shù)據(jù)源文件之前,該方法還包括:從Word模板中獲取各個(gè)數(shù)據(jù)源標(biāo)識符;根據(jù)各個(gè)數(shù)據(jù)源標(biāo)識符創(chuàng)建各個(gè)數(shù)據(jù)表;向各個(gè)數(shù)據(jù)表中存儲對應(yīng)的測試數(shù)據(jù);以及通過各個(gè)數(shù)據(jù)表組成數(shù)據(jù)源文件。進(jìn)一步地,在通過預(yù)設(shè)組件將數(shù)據(jù)源文件中的數(shù)據(jù)填充至Word模板中,生成Word文件之后,該方法還包括:根據(jù)Word文件判斷Word模板是否需要修改;在判斷出Word模板需要修改時(shí),修改Word模板,得到修改后的Word模板;根據(jù)修改后的Word模板修改數(shù)據(jù)源文件,得到修改后的數(shù)據(jù)源文件;以及通過預(yù)設(shè)組件將修改后的數(shù)據(jù)源文件中的數(shù)據(jù)填充至修改后的Word模板中,生成新的Word文件。進(jìn)一步地,數(shù)據(jù)源文件為Excel文件。為了實(shí)現(xiàn)上述目的,根據(jù)本申請的另一方面,提供了一種Word文件生成裝置。該裝置包括:第一接收單元,用于通過預(yù)設(shè)組件接收Word模板,其中,Word模板中 設(shè)置有數(shù)據(jù)源標(biāo)識符,數(shù)據(jù)源標(biāo)識符與數(shù)據(jù)源一一對應(yīng);第二接收單元,用于通過預(yù)設(shè)組件接收數(shù)據(jù)源文件,其中,數(shù)據(jù)源文件包括至少一個(gè)鍵值表和/或至少一個(gè)二維表,至少一個(gè)鍵值表和/或至少一個(gè)二維表與數(shù)據(jù)源標(biāo)識符相對應(yīng);以及第一生成單元,用于通過預(yù)設(shè)組件將數(shù)據(jù)源文件中的數(shù)據(jù)填充至Word模板中,生成Word文件。進(jìn)一步地,第一生成單元包括:查找模塊,用于通過預(yù)設(shè)組件根據(jù)數(shù)據(jù)源標(biāo)識符從數(shù)據(jù)源文件中查找對應(yīng)的數(shù)據(jù)表;讀取模塊,用于通過預(yù)設(shè)組件從數(shù)據(jù)源標(biāo)識符對應(yīng)的數(shù)據(jù)表中讀取數(shù)據(jù);以及生成模塊,用于通過預(yù)設(shè)組件將數(shù)據(jù)源標(biāo)識符對應(yīng)的數(shù)據(jù)表中的數(shù)據(jù)填充至Word模板中,生成Word文件。進(jìn)一步地,該裝置還包括:獲取單元,用于從Word模板中獲取各個(gè)數(shù)據(jù)源標(biāo)識符;創(chuàng)建單元,用于根據(jù)各個(gè)數(shù)據(jù)源標(biāo)識符創(chuàng)建各個(gè)數(shù)據(jù)表;存儲單元,用于向各個(gè)數(shù)據(jù)表中存儲對應(yīng)的測試數(shù)據(jù);以及組成單元,用于通過各個(gè)數(shù)據(jù)表組成數(shù)據(jù)源文件。進(jìn)一步地,該裝置還包括:判斷單元,用于根據(jù)Word文件判斷Word模板是否需要修改;第一修改單元,用于在判斷出Word模板需要修改時(shí),修改Word模板,得到修改后的Word模板;第二修改單元,用于根據(jù)修改后的Word模板修改數(shù)據(jù)源文件,得到修改后的數(shù)據(jù)源文件;以及第二生成單元,用于通過預(yù)設(shè)組件將修改后的數(shù)據(jù)源文件中的數(shù)據(jù)填充至修改后的Word模板中,生成新的Word文件。本申請通過預(yù)設(shè)組件接收Word模板,其中,Word模板中設(shè)置有數(shù)據(jù)源標(biāo)識符,數(shù)據(jù)源標(biāo)識符與數(shù)據(jù)源一一對應(yīng);通過預(yù)設(shè)組件接收數(shù)據(jù)源文件,其中,數(shù)據(jù)源文件包括至少一個(gè)鍵值表和/或至少一個(gè)二維表,至少一個(gè)鍵值表和/或至少一個(gè)二維表與數(shù)據(jù)源標(biāo)識符相對應(yīng);以及通過預(yù)設(shè)組件將數(shù)據(jù)源文件中的數(shù)據(jù)填充至Word模板中,生成Word文件,本申請通過預(yù)設(shè)組件就可以方便地將數(shù)據(jù)源文件中的數(shù)據(jù)填充至Word模板中生成Word文件,而不需要編寫數(shù)據(jù)源代碼以生成Word文件,降低了生成Word文件的操作難度,解決了相關(guān)技術(shù)中生成Word文件操作較為不便的問題,進(jìn)而達(dá)到了方便快捷地生成Word文件的效果。附圖說明構(gòu)成本申請的一部分的附圖用來提供對本申請的進(jìn)一步理解,本申請的示意性實(shí)施例及其說明用于解釋本申請,并不構(gòu)成對本申請的不當(dāng)限定。在附圖中:圖1是根據(jù)本申請實(shí)施例的Word文件生成方法的流程圖;圖2是根據(jù)本申請實(shí)施例的鍵值表的示意圖;圖3是根據(jù)本申請實(shí)施例的二維表的示意圖;圖4是根據(jù)本申請實(shí)施例的基于預(yù)設(shè)組件生成Word文件的示意圖;以及圖5是根據(jù)本申請實(shí)施例的Word文件生成裝置的示意圖。具體實(shí)施方式需要說明的是,在不沖突的情況下,本申請中的實(shí)施例及實(shí)施例中的特征可以相互組合。下面將參考附圖并結(jié)合實(shí)施例來詳細(xì)說明本申請。為了使本
技術(shù)領(lǐng)域
:的人員更好地理解本申請方案,下面將結(jié)合本申請實(shí)施例中的附圖,對本申請實(shí)施例中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,所描述的實(shí)施例僅僅是本申請一部分的實(shí)施例,而不是全部的實(shí)施例?;诒旧暾堉械膶?shí)施例,本領(lǐng)域普通技術(shù)人員在沒有做出創(chuàng)造性勞動前提下所獲得的所有其他實(shí)施例,都應(yīng)當(dāng)屬于本申請保護(hù)的范圍。需要說明的是,本申請的說明書和權(quán)利要求書及上述附圖中的術(shù)語“第一”、“第二”等是用于區(qū)別類似的對象,而不必用于描述特定的順序或先后次序。應(yīng)該理解這樣使用的數(shù)據(jù)在適當(dāng)情況下可以互換,以便這里描述的本申請的實(shí)施例。此外,術(shù)語“包括”和“具有”以及他們的任何變形,意圖在于覆蓋不排他的包含,例如,包含了一系列步驟或單元的過程、方法、系統(tǒng)、產(chǎn)品或設(shè)備不必限于清楚地列出的那些步驟或單元,而是可包括沒有清楚地列出的或?qū)τ谶@些過程、方法、產(chǎn)品或設(shè)備固有的其它步驟或單元。為了便于描述,以下對本申請涉及的一些概念或術(shù)語進(jìn)行說明:PowerReport:一種可以自動生成Word文件的開發(fā)框架,PowerReport中的類庫(即PowerReport類庫)可以實(shí)現(xiàn)向Word模板中填充數(shù)據(jù)源,其中,類庫是指面向?qū)ο蟮目芍赜妙愋图?,這些類型包括接口、抽象類和具體類等。VisioStudio:是一個(gè)基本完整的開發(fā)工具集,它包括了整個(gè)軟件生命周期中所需要的大部分工具,例如,UML工具、代碼管控工具、集成開發(fā)環(huán)境(俗稱IDE)等等。根據(jù)本申請實(shí)施例,提供了一種Word文件生成方法。圖1是根據(jù)本申請實(shí)施例的Word文件生成方法的流程圖,如圖1所示,該方法包括如下的步驟S102至步驟S106:步驟S102,通過預(yù)設(shè)組件接收Word模板,其中,Word模板中設(shè)置有數(shù)據(jù)源標(biāo)識符,數(shù)據(jù)源標(biāo)識符與數(shù)據(jù)源一一對應(yīng)。本申請實(shí)施例可以在Word模板中按照需求設(shè)置多種數(shù)據(jù)填充指令,例如,文本填充指令、表格填充指令和圖表填充指令等。其中,數(shù)據(jù)填充指令中包括數(shù)據(jù)源標(biāo)識 符,數(shù)據(jù)源標(biāo)識符可以是用于表示待填充數(shù)據(jù)的字符串,例如,在數(shù)據(jù)填充指令#dump(datasource=crosday&type=chart&skipheaders=1)中,crosday即為數(shù)據(jù)源標(biāo)識符,填充類型為圖表,在數(shù)據(jù)填充時(shí),只需將對應(yīng)的數(shù)據(jù)源賦值給數(shù)據(jù)源標(biāo)識符crosday。具體地,根據(jù)Word模板生成Word文件即向Word模板中每個(gè)數(shù)據(jù)源標(biāo)識符位置處填充對應(yīng)的數(shù)據(jù)源。步驟S104,通過預(yù)設(shè)組件接收數(shù)據(jù)源文件,其中,數(shù)據(jù)源文件包括至少一個(gè)鍵值表和/或至少一個(gè)二維表,至少一個(gè)鍵值表和/或至少一個(gè)二維表與數(shù)據(jù)源標(biāo)識符相對應(yīng)。本申請實(shí)施例的鍵值表用于存儲Word模板的文本填充數(shù)據(jù),二維表用于存儲Word模板中的圖表和表格的填充數(shù)據(jù)。具體地,數(shù)據(jù)源標(biāo)識符可以分為文本數(shù)據(jù)源標(biāo)識符、圖表數(shù)據(jù)源標(biāo)識符和表格數(shù)據(jù)源標(biāo)識符,其中,文本數(shù)據(jù)源標(biāo)識符用于表示需要填充文本數(shù)據(jù),圖表數(shù)據(jù)源標(biāo)識符用于表示需要向圖表填充數(shù)據(jù),表格數(shù)據(jù)源標(biāo)識符用于表示需要向表格填充數(shù)據(jù)。具體地,鍵值表中包含鍵字段和值字段,其中,鍵字段用于存儲文本數(shù)據(jù)源標(biāo)識符,值字段用于存儲用于填充的文本數(shù)據(jù),如圖2所示,第一列數(shù)據(jù)即為鍵字段數(shù)據(jù)(profilename即為文本數(shù)據(jù)源標(biāo)識符),第二列數(shù)據(jù)即為值字段數(shù)據(jù)(測試網(wǎng)站即為用于填充文本數(shù)據(jù)源標(biāo)識符位置處的文本數(shù)據(jù))。為了便于查找,本申請實(shí)施例可以將表格的填充數(shù)據(jù)和圖表的填充數(shù)據(jù)存儲于不同的二維表中,將不同表格和/或不同圖表的數(shù)據(jù)也存儲于不同的二維表中,并可以將各個(gè)圖表數(shù)據(jù)源標(biāo)識符作為各個(gè)存儲圖表的填充數(shù)據(jù)的二維表的名稱,將各個(gè)表格數(shù)據(jù)源標(biāo)識符作為各個(gè)存儲表格的填充數(shù)據(jù)的二維表的名稱,如圖3所示,crosday為圖表數(shù)據(jù)源標(biāo)識符,topprovinceandcity為表格數(shù)據(jù)源標(biāo)識符,數(shù)據(jù)表中存儲的二維數(shù)據(jù)即為填充數(shù)據(jù)??蛇x地,在通過預(yù)設(shè)組件接收數(shù)據(jù)源文件之前,該方法還包括:在通過預(yù)設(shè)組件接收數(shù)據(jù)源文件之前,該方法還包括:從Word模板中獲取各個(gè)數(shù)據(jù)源標(biāo)識符;根據(jù)各個(gè)數(shù)據(jù)源標(biāo)識符創(chuàng)建各個(gè)數(shù)據(jù)表;向各個(gè)數(shù)據(jù)表中存儲對應(yīng)的測試數(shù)據(jù);以及通過各個(gè)數(shù)據(jù)表組成數(shù)據(jù)源文件。具體地,可以通過遍歷Word模板獲取各個(gè)數(shù)據(jù)源標(biāo)識符,也可以是通過人工給定Word模板中的各個(gè)數(shù)據(jù)源標(biāo)識符。在獲取到Word模板的各個(gè)數(shù)據(jù)源標(biāo)識符之后,根據(jù)各個(gè)數(shù)據(jù)源標(biāo)識符創(chuàng)建對應(yīng)的數(shù)據(jù)表,例如,在數(shù)據(jù)源標(biāo)識符中包含文本數(shù)據(jù)源標(biāo)識符時(shí)(即需要向Word模板中填充文本數(shù)據(jù)),則根據(jù)文本數(shù)據(jù)源標(biāo)識符創(chuàng)建鍵值表;在數(shù)據(jù)源標(biāo)識符中包含圖表數(shù)據(jù)源標(biāo)識符和/或表格數(shù)據(jù)源標(biāo)識符時(shí),則根據(jù)該圖 表數(shù)據(jù)源標(biāo)識符和/或表格數(shù)據(jù)源標(biāo)識符創(chuàng)建二維表。在根據(jù)數(shù)據(jù)源標(biāo)識符創(chuàng)建對應(yīng)的數(shù)據(jù)表后,則向?qū)?yīng)的數(shù)據(jù)表(即鍵值表和/或二維表)中存儲對應(yīng)的測試數(shù)據(jù),例如,向鍵值表中存儲文本數(shù)據(jù),向二維表中存儲二維數(shù)據(jù)。具體地,可以是人工向數(shù)據(jù)表中存儲對應(yīng)的測試數(shù)據(jù),也可以是自動生成測試數(shù)據(jù)并存儲至對應(yīng)的數(shù)據(jù)表中,例如,隨機(jī)生成測試數(shù)據(jù)并存儲至對應(yīng)的數(shù)據(jù)表中。本申請實(shí)施例可以通過鍵值表和/或二維表組成數(shù)據(jù)源文件。需要說明的是,數(shù)據(jù)源文件可以是文本文件、逗號分隔值(CommaSeparatedValue,簡稱為CSV)文件、Excel文件等,優(yōu)選地,為了便于操作,本申請實(shí)施例的數(shù)據(jù)源文件為Excel文件。由上述描述可知,本申請實(shí)施例的數(shù)據(jù)源文件的生成十分簡單方便,無需進(jìn)行編碼操作即可生成,降低了對操作人員的要求。步驟S106,通過預(yù)設(shè)組件將數(shù)據(jù)源文件中的數(shù)據(jù)填充至Word模板中,生成Word文件。具體地,本申請實(shí)施例的預(yù)設(shè)組件可以是預(yù)先編寫的應(yīng)用程序,例如,基于C#開發(fā)的應(yīng)用程序,在運(yùn)行該應(yīng)用程序后,可以彈出一個(gè)操作界面,用于供用戶配置對應(yīng)的Word模板和數(shù)據(jù)源文件,一旦配置了Word模板和數(shù)據(jù)源文件該應(yīng)用程序即可以自動實(shí)現(xiàn)將數(shù)據(jù)源文件中的數(shù)據(jù)填充至Word模板中,生成Word文件??蛇x地,通過預(yù)設(shè)組件將數(shù)據(jù)源文件中的數(shù)據(jù)填充至Word模板中,生成Word文件包括:通過預(yù)設(shè)組件根據(jù)數(shù)據(jù)源標(biāo)識符從數(shù)據(jù)源文件中查找對應(yīng)的數(shù)據(jù)表;通過預(yù)設(shè)組件從數(shù)據(jù)源標(biāo)識符對應(yīng)的數(shù)據(jù)表中讀取數(shù)據(jù);以及通過預(yù)設(shè)組件將數(shù)據(jù)源標(biāo)識符對應(yīng)的數(shù)據(jù)表中的數(shù)據(jù)填充至Word模板中,生成Word文件。本申請實(shí)施例的預(yù)設(shè)組件根據(jù)數(shù)據(jù)源標(biāo)識符從數(shù)據(jù)源文件中查找對應(yīng)的數(shù)據(jù)表,具體地,根據(jù)文本數(shù)據(jù)源標(biāo)識符從數(shù)據(jù)源文件中查找鍵值表,根據(jù)圖表數(shù)據(jù)源標(biāo)識符和表格數(shù)據(jù)源標(biāo)識符從數(shù)據(jù)源文件中查找對應(yīng)的二維表。以下以文本填充數(shù)據(jù)均存儲于同一鍵值表中,圖表填充數(shù)據(jù)和表格填充數(shù)據(jù)存儲于不同的二維表中為例進(jìn)行說明。具體地,在數(shù)據(jù)源標(biāo)識符為文本數(shù)據(jù)源標(biāo)識符時(shí),則預(yù)設(shè)組件可以先根據(jù)文本數(shù)據(jù)源標(biāo)識符查找鍵值表,再查找鍵值表中該文本數(shù)據(jù)源標(biāo)識符對應(yīng)的文本數(shù)據(jù),并將該文本數(shù)據(jù)填充至Word模板中該文本數(shù)據(jù)源標(biāo)識符對應(yīng)的位置處;在數(shù)據(jù)源標(biāo)識符為圖表數(shù)據(jù)源標(biāo)識符時(shí),則預(yù)設(shè)組件可以先根據(jù)圖表數(shù)據(jù)源標(biāo)識符查找該圖表數(shù)據(jù)源標(biāo)識符對應(yīng)的二維表,讀取該二維表中的數(shù)據(jù),并將該二維表中的數(shù)據(jù)填充至Word模板中該圖表數(shù)據(jù)源標(biāo)識符對應(yīng)的位置處;表格的數(shù)據(jù)填充同圖表的數(shù)據(jù)填充,在此不再贅述。可選地,通過預(yù)設(shè)組件將數(shù)據(jù)源標(biāo)識符對應(yīng)的數(shù)據(jù)表中的數(shù)據(jù)填充至Word模板 中,生成Word文件包括:預(yù)設(shè)組件調(diào)用預(yù)設(shè)類庫將數(shù)據(jù)源標(biāo)識符對應(yīng)的數(shù)據(jù)表中的數(shù)據(jù)填充至Word模板中。具體地,本申請實(shí)施例在預(yù)設(shè)組件從數(shù)據(jù)源文件中讀取到對應(yīng)數(shù)據(jù)后,調(diào)用預(yù)設(shè)類庫將讀取到的數(shù)據(jù)填充至Word模板中,其中,預(yù)設(shè)類庫可以是現(xiàn)有技術(shù)中較為常用的Word模板數(shù)據(jù)填充的類庫,例如,PowerReport類庫,也可以是其他可以實(shí)現(xiàn)Word模板數(shù)據(jù)填充的類庫,例如,預(yù)先編寫的用于實(shí)現(xiàn)Word模板數(shù)據(jù)填充的類庫。本申請實(shí)施例通過預(yù)設(shè)組件接收Word模板,其中,Word模板中設(shè)置有數(shù)據(jù)源標(biāo)識符,數(shù)據(jù)源標(biāo)識符與數(shù)據(jù)源一一對應(yīng);通過預(yù)設(shè)組件接收數(shù)據(jù)源文件,其中,數(shù)據(jù)源文件包括至少一個(gè)鍵值表和/或至少一個(gè)二維表,至少一個(gè)鍵值表和/或至少一個(gè)二維表與數(shù)據(jù)源標(biāo)識符相對應(yīng);以及通過預(yù)設(shè)組件將數(shù)據(jù)源文件中的數(shù)據(jù)填充至Word模板中,生成Word文件,本申請實(shí)施例通過預(yù)設(shè)組件就可以方便地將數(shù)據(jù)源文件中的數(shù)據(jù)填充至Word模板中生成Word文件,而不需要編寫數(shù)據(jù)源代碼以生成Word文件,降低了生成Word文件的操作難度,解決了相關(guān)技術(shù)中生成Word文件操作較為不便的問題,進(jìn)而達(dá)到了方便快捷地生成Word文件的效果。優(yōu)選地,在通過預(yù)設(shè)組件將數(shù)據(jù)源文件中的數(shù)據(jù)填充至Word模板中,生成Word文件之后,該方法還包括:根據(jù)Word文件判斷Word模板是否需要修改;在判斷出Word模板需要修改時(shí),修改Word模板,得到修改后的Word模板;根據(jù)修改后的Word模板修改數(shù)據(jù)源文件,得到修改后的數(shù)據(jù)源文件;以及通過預(yù)設(shè)組件將修改后的數(shù)據(jù)源文件中的數(shù)據(jù)填充至修改后的Word模板中,生成新的Word文件。由于Word模板的創(chuàng)建并不是一次性過程,通常需要結(jié)合數(shù)據(jù)源生成Word文件后,通過Word文件查看數(shù)據(jù)、樣式是否正確,來確定是否需要對Word模板進(jìn)行修改。具體地,本申請實(shí)施例在判斷出Word模板需要修改時(shí),修改Word模板,并根據(jù)修改后的Word模板修改數(shù)據(jù)源文件,再通過預(yù)設(shè)組件將修改后的數(shù)據(jù)源文件中的數(shù)據(jù)填充至修改后的Word模板中,生成新的Word文件,并基于新的Word文件判斷修改后的Word模板是否需要繼續(xù)修改。本申請實(shí)施例中數(shù)據(jù)源文件的修改十分方便,以數(shù)據(jù)源文件為Excel文件為例,僅需打開Excel文件,向其中添加數(shù)據(jù)、從中刪除數(shù)據(jù)或是修改其中的數(shù)據(jù)等,實(shí)現(xiàn)數(shù)據(jù)源文件的修改,并將修改后的數(shù)據(jù)源文件和修改后的Word模板配置給預(yù)設(shè)組件,既可以重新生成新的Word文件,相比于現(xiàn)有技術(shù)中,需要在開發(fā)環(huán)境中進(jìn)行,例如,在VisualStudio開發(fā)環(huán)境下進(jìn)行,操作不方便,而且效率較低。以下以一個(gè)實(shí)例對本申請實(shí)施例進(jìn)行說明:Word模板中包含文本填充指令$profilename、表格填充指令#dump (datasource=topprovinceandcity&type=table&skipheader=1)和圖表填充指令#dump(datasource=crosday&skipheader=1),其中,profilename、topprovinceandcity和crosday分別為數(shù)據(jù)源標(biāo)識符。本申請實(shí)施例的數(shù)據(jù)源文件可以包括兩部分:一個(gè)鍵值表和多個(gè)二維表。其中,數(shù)據(jù)源文件可以是Excel文件,需要說明的是,數(shù)據(jù)源文件也可以采用其他文件格式。具體地,本申請實(shí)施例的數(shù)據(jù)源文件的創(chuàng)建可以是創(chuàng)建一個(gè)名為“鍵值”的工作簿保存鍵值,第一列數(shù)據(jù)代表鍵,第二列數(shù)據(jù)代表值,以及創(chuàng)建多個(gè)工作簿,根據(jù)#dump指令中datasource值(即topprovinceandcity和crosday)作為工作簿名,然后在各個(gè)工作簿存儲相應(yīng)的二維表數(shù)據(jù),如圖2和圖3所示。第三方工具(即上述預(yù)設(shè)組件)通過讀取上述Excel文件(即數(shù)據(jù)源文件),就可以創(chuàng)建Word模板的數(shù)據(jù)源,其中,創(chuàng)建Word模板的方法可以同
背景技術(shù)
:部分記載的方案,在此不再贅述。第三方工具通過調(diào)用PowerReport類庫結(jié)合創(chuàng)建好的數(shù)據(jù)源和Word模板生成Word文件,如圖4所示。具體地,本申請實(shí)施例通過第三方工具(即預(yù)設(shè)組件),使得Word文件生成流程可以變?yōu)槿缦虏襟E:步驟S1,開發(fā)者A和開發(fā)者B協(xié)議好數(shù)據(jù)源標(biāo)識符,即數(shù)據(jù)源文件中的鍵名和二維表名。步驟S2,開發(fā)者A創(chuàng)建Word模板,編寫Excel測試數(shù)據(jù)文件,使用第三方工具創(chuàng)建Word文件來檢查Word模板的編寫。Excel測試數(shù)據(jù)文件即數(shù)據(jù)源文件。通過結(jié)合數(shù)據(jù)源文件Word模板生成Word文件以判斷當(dāng)前的Word模板是否需要修改,如果Word模板需要修改,則修改Word模板和對應(yīng)的數(shù)據(jù)源文件,根據(jù)修改后的Word模板和數(shù)據(jù)源文件重新生成新的Word文件,重復(fù)上述過程,直至Word模板滿足要求。步驟S3,開發(fā)者B根據(jù)協(xié)議好的數(shù)據(jù)源標(biāo)識符,開發(fā)相關(guān)數(shù)據(jù)源。在完成Word模板的開發(fā)后(即Word模板滿足要求),可以根據(jù)實(shí)際應(yīng)用開發(fā)相關(guān)數(shù)據(jù)源。需要說明的是,開發(fā)者A通常是指進(jìn)行Word模板創(chuàng)建的操作人員,開發(fā)者B是指后續(xù)實(shí)際應(yīng)用創(chuàng)建好的Word模板的操作人員,其開發(fā)數(shù)據(jù)源通常為通過編程讀取數(shù)據(jù)庫中的數(shù)據(jù)得到的數(shù)據(jù)源代碼。本申請實(shí)施例通過介入第三方工具(即預(yù)設(shè)組件)使用Excel文件作為數(shù)據(jù)源,有下面幾個(gè)優(yōu)點(diǎn):首先,使用第三方工具生成Word文件來檢查Word模板的正確性,使得開發(fā)Word模板和創(chuàng)建數(shù)據(jù)源工作可以分離,從而可以實(shí)現(xiàn)不同開發(fā)者并行進(jìn)行,提高開發(fā)效率。其次,在Word模板開發(fā)過程中,使用Excel準(zhǔn)備測試數(shù)據(jù)源操作較為簡單方便。最后,在Word模板樣式需要變更時(shí),可以直接使用第三方工具協(xié)助修改,而不必使用VisioStudio這種開發(fā)環(huán)境工具。本申請實(shí)施例在使用PowerReport開發(fā)框架時(shí),引入了另外的介質(zhì)(例如,Excel文件)模擬數(shù)據(jù)源,使開發(fā)流程可以多人并行執(zhí)行,提高Word模板開發(fā)效率。需要說明的是,在附圖的流程圖示出的步驟可以在諸如一組計(jì)算機(jī)可執(zhí)行指令的計(jì)算機(jī)系統(tǒng)中執(zhí)行,并且,雖然在流程圖中示出了邏輯順序,但是在某些情況下,可以以不同于此處的順序執(zhí)行所示出或描述的步驟。根據(jù)本申請實(shí)施例的另一方面,提供了一種Word文件生成裝置,該Word文件生成裝置可以用于執(zhí)行本申請實(shí)施例的Word文件生成方法,本申請實(shí)施例的Word文件生成方法也可以通過本申請實(shí)施例的Word文件生成裝置來執(zhí)行。圖5是根據(jù)本申請實(shí)施例的Word文件生成裝置的示意圖,如圖5所示,該裝置包括:第一接收單元10、第二接收單元20和第一生成單元30。第一接收單元10,用于通過預(yù)設(shè)組件接收Word模板,其中,Word模板中設(shè)置有數(shù)據(jù)源標(biāo)識符,數(shù)據(jù)源標(biāo)識符與數(shù)據(jù)源一一對應(yīng)。第二接收單元20,用于通過預(yù)設(shè)組件接收數(shù)據(jù)源文件,其中,數(shù)據(jù)源文件包括至少一個(gè)鍵值表和/或至少一個(gè)二維表,至少一個(gè)鍵值表和/或至少一個(gè)二維表與數(shù)據(jù)源標(biāo)識符相對應(yīng)。第一生成單元30,用于通過預(yù)設(shè)組件將數(shù)據(jù)源文件中的數(shù)據(jù)填充至Word模板中,生成Word文件??蛇x地,第一生成單元30包括:查找模塊,用于通過預(yù)設(shè)組件根據(jù)數(shù)據(jù)源標(biāo)識符從數(shù)據(jù)源文件中查找對應(yīng)的數(shù)據(jù)表;讀取模塊,用于通過預(yù)設(shè)組件從數(shù)據(jù)源標(biāo)識符對應(yīng)的數(shù)據(jù)表中讀取數(shù)據(jù);以及生成模塊,用于通過預(yù)設(shè)組件將數(shù)據(jù)源標(biāo)識符對應(yīng)的數(shù)據(jù)表中的數(shù)據(jù)填充至Word模板中,生成Word文件。本申請實(shí)施例通過第一接收單元10,用于通過預(yù)設(shè)組件接收Word模板,其中,Word模板中設(shè)置有數(shù)據(jù)源標(biāo)識符,數(shù)據(jù)源標(biāo)識符與數(shù)據(jù)源一一對應(yīng);第二接收單元20,用于通過預(yù)設(shè)組件接收數(shù)據(jù)源文件,其中,數(shù)據(jù)源文件包括至少一個(gè)鍵值表和/或至少一個(gè)二維表,至少一個(gè)鍵值表和/或至少一個(gè)二維表與數(shù)據(jù)源標(biāo)識符相對應(yīng);第 一生成單元30,用于通過預(yù)設(shè)組件將數(shù)據(jù)源文件中的數(shù)據(jù)填充至Word模板中,生成Word文件,由于本申請實(shí)施例通過預(yù)設(shè)組件就可以方便地將數(shù)據(jù)源文件中的數(shù)據(jù)填充至Word模板中生成Word文件,而不需要編寫數(shù)據(jù)源代碼以生成Word文件,降低了生成Word文件的操作難度,解決了相關(guān)技術(shù)中生成Word文件操作較為不便的問題,進(jìn)而達(dá)到了方便快捷地生成Word文件的效果。可選地,該裝置還包括:獲取單元,用于從Word模板中獲取各個(gè)數(shù)據(jù)源標(biāo)識符;創(chuàng)建單元,用于根據(jù)各個(gè)數(shù)據(jù)源標(biāo)識符創(chuàng)建各個(gè)數(shù)據(jù)表;存儲單元,用于向各個(gè)數(shù)據(jù)表中存儲對應(yīng)的測試數(shù)據(jù);以及組成單元,用于通過各個(gè)數(shù)據(jù)表組成數(shù)據(jù)源文件??蛇x地,該裝置還包括:判斷單元,用于根據(jù)Word文件判斷Word模板是否需要修改;第一修改單元,用于在判斷出Word模板需要修改時(shí),修改Word模板,得到修改后的Word模板;第二修改單元,用于根據(jù)修改后的Word模板修改數(shù)據(jù)源文件,得到修改后的數(shù)據(jù)源文件;以及第二生成單元,用于通過預(yù)設(shè)組件將修改后的數(shù)據(jù)源文件中的數(shù)據(jù)填充至修改后的Word模板中,生成新的Word文件。所述Word文件生成裝置包括處理器和存儲器,上述第一接收單元、第二接收單元和第一生成單元等均作為程序單元存儲在存儲器中,由處理器執(zhí)行存儲在存儲器中的上述程序單元來實(shí)現(xiàn)相應(yīng)的功能。處理器中包含內(nèi)核,由內(nèi)核去存儲器中調(diào)取相應(yīng)的程序單元。內(nèi)核可以設(shè)置一個(gè)或以上,通過調(diào)整內(nèi)核參數(shù)來生成Word文件。存儲器可能包括計(jì)算機(jī)可讀介質(zhì)中的非永久性存儲器,隨機(jī)存取存儲器(RAM)和/或非易失性內(nèi)存等形式,如只讀存儲器(ROM)或閃存(flashRAM),存儲器包括至少一個(gè)存儲芯片。本申請還提供了一種計(jì)算機(jī)程序產(chǎn)品,當(dāng)在數(shù)據(jù)處理設(shè)備上執(zhí)行時(shí),適于執(zhí)行初始化有如下方法步驟的程序代碼:通過預(yù)設(shè)組件接收Word模板,其中,Word模板中設(shè)置有數(shù)據(jù)源標(biāo)識符,數(shù)據(jù)源標(biāo)識符與數(shù)據(jù)源一一對應(yīng);通過預(yù)設(shè)組件接收數(shù)據(jù)源文件,其中,數(shù)據(jù)源文件包括至少一個(gè)鍵值表和/或至少一個(gè)二維表,至少一個(gè)鍵值表和/或至少一個(gè)二維表與數(shù)據(jù)源標(biāo)識符相對應(yīng);以及通過預(yù)設(shè)組件將數(shù)據(jù)源文件中的數(shù)據(jù)填充至Word模板中,生成Word文件。上述本申請實(shí)施例序號僅僅為了描述,不代表實(shí)施例的優(yōu)劣。在本申請的上述實(shí)施例中,對各個(gè)實(shí)施例的描述都各有側(cè)重,某個(gè)實(shí)施例中沒有詳述的部分,可以參見其他實(shí)施例的相關(guān)描述。在本申請所提供的幾個(gè)實(shí)施例中,應(yīng)該理解到,所揭露的技術(shù)內(nèi)容,可通過其它 的方式實(shí)現(xiàn)。其中,以上所描述的裝置實(shí)施例僅僅是示意性的,例如所述單元的劃分,可以為一種邏輯功能劃分,實(shí)際實(shí)現(xiàn)時(shí)可以有另外的劃分方式,例如多個(gè)單元或組件可以結(jié)合或者可以集成到另一個(gè)系統(tǒng),或一些特征可以忽略,或不執(zhí)行。另一點(diǎn),所顯示或討論的相互之間的耦合或直接耦合或通信連接可以是通過一些接口,單元或模塊的間接耦合或通信連接,可以是電性或其它的形式。所述作為分離部件說明的單元可以是或者也可以不是物理上分開的,作為單元顯示的部件可以是或者也可以不是物理單元,即可以位于一個(gè)地方,或者也可以分布到多個(gè)單元上??梢愿鶕?jù)實(shí)際的需要選擇其中的部分或者全部單元來實(shí)現(xiàn)本實(shí)施例方案的目的。另外,在本申請各個(gè)實(shí)施例中的各功能單元可以集成在一個(gè)處理單元中,也可以是各個(gè)單元單獨(dú)物理存在,也可以兩個(gè)或兩個(gè)以上單元集成在一個(gè)單元中。上述集成的單元既可以采用硬件的形式實(shí)現(xiàn),也可以采用軟件功能單元的形式實(shí)現(xiàn)。所述集成的單元如果以軟件功能單元的形式實(shí)現(xiàn)并作為獨(dú)立的產(chǎn)品銷售或使用時(shí),可以存儲在一個(gè)計(jì)算機(jī)可讀取存儲介質(zhì)中。基于這樣的理解,本申請的技術(shù)方案本質(zhì)上或者說對現(xiàn)有技術(shù)做出貢獻(xiàn)的部分或者該技術(shù)方案的全部或部分可以以軟件產(chǎn)品的形式體現(xiàn)出來,該計(jì)算機(jī)軟件產(chǎn)品存儲在一個(gè)存儲介質(zhì)中,包括若干指令用以使得一臺計(jì)算機(jī)設(shè)備(可為個(gè)人計(jì)算機(jī)、服務(wù)器或者網(wǎng)絡(luò)設(shè)備等)執(zhí)行本申請各個(gè)實(shí)施例所述方法的全部或部分步驟。而前述的存儲介質(zhì)包括:U盤、只讀存儲器(ROM,Read-OnlyMemory)、隨機(jī)存取存儲器(RAM,RandomAccessMemory)、移動硬盤、磁碟或者光盤等各種可以存儲程序代碼的介質(zhì)。以上所述僅是本申請的優(yōu)選實(shí)施方式,應(yīng)當(dāng)指出,對于本
技術(shù)領(lǐng)域
:的普通技術(shù)人員來說,在不脫離本申請?jiān)淼那疤嵯?,還可以做出若干改進(jìn)和潤飾,這些改進(jìn)和潤飾也應(yīng)視為本申請的保護(hù)范圍。當(dāng)前第1頁1 2 3 當(dāng)前第1頁1 2 3 
當(dāng)前第1頁1 2 3 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點(diǎn)贊!
1
台湾省| 吴桥县| 凤翔县| 宁都县| 龙门县| 阳春市| 达孜县| 石泉县| 贺州市| 英德市| 和平区| 惠东县| 衡东县| 石泉县| 观塘区| 正定县| 北宁市| 邵东县| 临沂市| 信丰县| 镇巴县| 屏山县| 乌恰县| 清丰县| 察雅县| 崇明县| 呼图壁县| 无棣县| 满洲里市| 和硕县| 邵东县| 通山县| 万载县| 泾川县| 信宜市| 灌南县| 湖北省| 奉节县| 利津县| 永仁县| 玉门市|