• <sub id="h4knl"><ol id="h4knl"></ol></sub>
    <sup id="h4knl"></sup>
      <sub id="h4knl"></sub>

      <sub id="h4knl"><ol id="h4knl"><em id="h4knl"></em></ol></sub><s id="h4knl"></s>
      1. <strong id="h4knl"></strong>

      2. 全通用關系型表格打印模塊設計研究

        時間:2024-09-19 19:28:35 會計畢業論文 我要投稿
        • 相關推薦

        全通用關系型表格打印模塊設計研究

        [摘 要] 目前常見的系統開發軟件(以VisualFoxPro為例)的報表設計器雖然使用方便,但不能滿足各行業日常工作靈活多樣的表格打印需要。過去D0s狀態下表格打印雖較好處理,但在windows環境下卻效果欠佳。因此,有必要改造和完善這些軟件的報表設計器,并實現多種表格樣式之間的數據交換,設計一個集數據交換于一體的關系型表格全通用打印模塊。  [關鍵詞] 全通用;報表;表格;打印
          打印的表格按欄目嵌套分類,一般有兩種基本類型。一是關系型表格,即表格內各欄目之間是一種平行的關系,不存在欄目之間的嵌套;二是結構型表格,即表格內有的欄目有更下一級的小欄目,可能某些小欄目還會有更下一級的子欄目,從而形成表格中的欄目嵌套,反映欄目之間數據的包含與被包含關系。從這兩類表格的應用頻率看,關系型表格簡便適用的優點更為人們所青睞,因而使用很普遍。本模塊專門針對關系型表格打印而設計。
          關系型表格全通用打印是指在指定的關系型數據表(指*.DBF文件,下同)文件中,可任意選擇打印字段(形成表格中的欄目),任意篩選打印記錄(形成表格中的各行),從而實現隨心所欲的關系型表格打印,其通用性主要體現在適應任何數據表文件的表格打印方面。本設計就以會計軟件中的打印功能為例。
          
          一、設計的目的及意義
          
          會計是一個專門處理一定時空范圍內經濟數據的信息系統,其數據量大、動態性強、結構復雜,表格在會計核算中被廣泛使用,會計主要是利用表格形式定期和不定期地提供會計信息。實現會計電算化以后,很多各種格式的賬表需要打印輸出,其賬表打印的工作量很大,一方面要滿足會計檔案存檔保存的需要,另一方面又要滿足各項經濟管理的需要。因而表格打印始終是會計軟件中一個十分重要的模塊,尤其是全通用表格打印更具有十分重要的理論意義和實踐意義。
          從目前系統軟件提供的表格樣式看,一般主要有Vis-ualFoxPro(以下簡稱VFP)表格、Excel電子表格、Word表格、Html超文本表格4種。其中VFP表格是軟件本身提供的一種表格,它的表格處理功能遠不及Excel電子表格和Word表格,而Html超文本表格的優點是可以在網上發布,同時它本身還提供將超文本表格很方便的轉換為Word表格的功能。VFP本身不能同時提供Excel電子表格、Word表格和Html超文本表格,但我們完全可以立足于VFP系統,借助于Windows的某些功能,從VFP的關系型數據表文件中采集數據,同時打印輸出上述4種樣式的表格,從而將數據交換和表格打印集于一身,實現全通用表格打印,彌補VFP系統本身報表設計器的不足.
          因此,有必要設計一個全通用打印模塊實現以下兩個方面的功能:一是利用VFP系統報表設計器的某些功能,彌補該設計器的不足,實現VFP表格打印輸出;二是實現上述4種樣式表格的全通用打印輸出,以VFP的*.DBF表文件為基礎,實現各種表格的數據交換。順利兌現這兩大設計目前具有十分重要的積極意義。
          不論是VFP,還是ORACLE、POWERBUILDER等等,它們自身都附帶了報表設計器,用戶可以根據需要靈活應用,設計出不同格式的報表。但由于VFP、ORACLE、POWERBUILDER等都是國外開發的系統軟件,這些軟件事先擬定好的報表格式一般都不符合中國人對表格的審美觀,即打印輸出的表格不具有中國特色。中國人普遍認同的報表格式即帶有報表名稱,左右標題,左右注腳,尤其是有網格型的表格。另外,VFP系統附帶的報表設計器由于過度遷就操作性,以致不能滿足使用者靈活多樣的需要,報表一經定義好,格式基本上就已經定型,所有的信息都保存在,FRX和.FRT兩個報表文件中,其中的字段個數、字段捧列順序、源數據表、索引名稱、欄目寬度、欄目標題、報表樣式等都已經固化在文件中,若需修改則要進行繁瑣的面向對象操作,使用起來很不方便。
          VFP從DOS版本發展到現在,報表功能已經很強大了。過去在DOS狀態下打印表格,其表格線是按特定的11個表格線符號,按字符控制的,DOS的這種設計方法由于Windows的象素控制原因已經很不適用。在DOS環境下,報表設計方式是將報表生成的各大要素保存在內存變量中,在需要時,可以恢復內存變量直接運行程序即可打印出自己事先定義好的報表。這種方式下,不存在Windows下象素的影響,打印的表格整齊美觀,而且速度較快,但這種打印方式有個致命的缺點,就是每次都要自定義打印參數以及打印的五大要素,然后保存在內存變量文件中,這種打印方式增加了工作量,而且缺乏通用性和靈活性。PoxPro發展到Windows環境,由于象素的關系,原有報表設計方式顯然有自身的缺點,因此報表的設計一直是困擾VFP開發者的一個難題。在VFP面向對象的編程環境下,為了體現面向對象的優點以及解決象索的問題,報表設計器由此誕生。報表設計器的原理就是提供一個面向對象的界面給操作者通過手工操作,然后將操作者的定義內容保存到.FRX/.FRT兩個文件中,在生成報表時,再從報表文件.FRX/.FRT兩個文件中取值從而生成報表。從報表生成的原理中我們可以看出,操作者定義的所有參數保存在.FRX/.FRT兩個文件中,那么,我們只需研究.FRY/.FRT文件的結構,然后對其中的值根據自己的需要不就可以定義出我們所需的報表了嗎,并且完全可以脫離報表設計器繁瑣的操作和固定的格式,我們可以隨心所欲地進行定義,從而一個全通用的報表設計方式變成了可行。利用VFP強大地數據處理能力,從而可以事先對選定數據表的任意字段、任意捧列順序,按需要任意定義條件打印,利用VFP內存變量可以事先自定義大標題、小標題、左標題、右標題、左注腳、右注腳以及左頁邊距等等,利用微軟產品集成的特點,可以靈括與我們常用的軟件進行數據交換,實現優勢互補。眾所周知在微軟產品中Excel具有強大的數據處理能力以及最強大的打印預覽功能,WORD具有很強大的文字管理功能,對于表格WORD格式提供了許多的自動套用格式,從而可以打印出各種各樣類型的報表,加上強大的文字處理功能,從而可以設計出各種各樣所需的報表;在網絡環境下,網絡數據查詢以及WEB發布必不可少,因此HTML超文本表格就極具實用價值。由于我國普遍使用的是網格型報表打印,因此本系統只有默認的網格型報表一種方式,但這種方式已經基本能滿足各個企業不同財務報表打印的需要了。
          
          二、模塊組成及功能
          
          (一)模塊文件構成
          本關系型表格全通用打印模塊的系統磁盤文件有以下三個。
          1.表單文件(KHLSC)(和KHI.SCT)兩個,其中KHI.
        SCX是表單的庫文件,KHI.SCT是表單的備注文件。每設計一個表單均有這兩個磁盤文件,利用表單設計器直接操作的是KHLSCX文件。眾所周知,表單設計器中有很多控件可供使用,利用這些控件既可設計出較好的界面,又可由操作者現場指定打印參數。關系型表格全通用打印設計中,有很多與打印有關的參數,需要利用有關控件進行大量的人機交互來確定,因而必須利用表單進行設計,而不可只用命令文件來設計。
          2.打印文件的登錄表文件(DYMEM.DBF)一個。該表文件主要是為表單中的組合框控件賦值提供數據,它有三個字符型字段,即“數據源表”、“報表文件”、“報表名稱”和一個“打印設置”備注型字段,它登記了當前目錄所有打印文件及其相匹配的數據源表文件和報表名稱,隨著新建或刪除操作的進行,該表文件中的記錄會動態更新。
          
          (二)模塊主要功能
          
          1.新建打印文件功能
          (1)可以選擇本機任意文件夾中的DBF文件,也可以選擇網上鄰居中計算機中的DBF文件,使打印不只限于本機當前目錄的DBF文件,還可通過數據轉換接口將其他軟件的數據導入進行打印。
          (2)打印任意字段任意排列順序的功能。可以選擇當前打開的數據表的任意字段打印,可以靈活地進行選擇,操作在選擇之后撤銷選擇也可以恢復字段初始的排列頤序。
          (3)選擇任意字段組合進行升序、降序撐列的功能。
          (4)自定義表頭大標題、小標題、左標題、右標題、左注腳、右注腳功能。系統默認大標題為當前打開數據表以絕對路徑形式返回的文件名稱,小標題賦值為空,右標題默認為打印帶總頁數的頁碼,操作者若不想打印頁碼也可以自定義右標題,左注腳默認為打印操作者,右注腳為打印日期,這些參數操作者都可以修改。
          (5)自定義打印標題欄標題的功能,操作者可以修改打印欄目的標題和打印欄目的寬度,并且可以在原選定字段的基礎上再次確認打印的字段,但是注意打印字段不要修改。
          (6)由系統自動生成邏輯條件和操作者自定義邏輯條件的功能,既方便了專業操作者靈活操作又兼顧了普通操作者的簡單使用。
          (7)提供強大的各種不同方式的打印功能,包括VFP報表打印,Excel電子表格打印、Word表格打印、HTML超文本表格打印功能。可以充分利用Excel電子表格的數據加工能力和公認地最強大地打印預覽功能,Word表格的表格樣式及文字處理功能、HTML超文本表格的WEB發布功能既便于打印也便于數據的發布。
          (8)操作者可以選擇打印表頭表尾,也可以直接打印表格的功能,以及各個打印參數的保存以備下次直接打印或編輯時使用.自定義打印左頁邊距的功能,可以使操作者根據表格的寬度和紙型根據需要自動進行調整。
          (9)自定義表頭字體和表體字體的功能,對打印機進行打印設置的功能。可以選擇打印機,打印紙型,打印方向等等。該功能對HTML超文本表格不起作用。
          
          2.編輯打印文件功能
          此功能是將事先保存在打印內存變量中的文件參數賦值給表單中的各個控件,可以方便操作者修改和觀察。該功能要用到一個報表登錄文件DYMEM.DBF,該功能只對VFP報表起作用。操作者可以再次選擇打印字段,若字段改變則初始化的打印欄目標題也隨之改變,未被選中的事先選擇的捧序字段將被過濾掉:也可以重新定義表體欄和欄目寬度等等,該功能是新建功能的重復,只是增加了對各個控件(包括初始打印字段,拌序字段、排序類型、表頭表尾項目、左頁邊距、欄目標題、欄目寬度、是否打印表頭表尾等)初始賦值的功能。
          
          3.打印輸出表格功能
          此功能可以方便對原先定義好的報表文件(以下劃線開頭的內存變量文件,該文件中保存有以DY打頭的22個內存變量)直接進行打印,并且該功能不會產生.FRX和.FRT文件,這種類型的文件由程序自動生成,系統僅作為臨時文件使用。此功能只對VFP報表起作用。
          
          4.查詢打印信息功能
          操作者可以查看已經建立的打印文件的己選字段、未選字段、源數據表以及系統定義的22個打印內存變量,和打印文件參數。
          
          三、系統設計思路及數據流程圖
          
          (一)全通用關系型表格打印實現原理
          
          1.報表的構成
          一般情況下報表包含表頭、表體和表尾三部分:
          (1)表頭。在每頁的頂端,顯示報表的標題及其他提示信息等。
          (2)表體。包含報表的主體,是報表的關鍵部分,一般由循環數據項構成。
          (3)表尾。出現在每頁的底端,顯示打印操作者、日期等文本信息等。
          
          2.VFP報表信息庫的結構
          我們知道在VFP中,報表的信息是保存在以.FRX為擴展名的數據庫文件中(備注文件以.FRT為擴展名),了解報表數據庫的結構有助于問題的解決。報表庫(.FRX)的結構有74個字段,各字段的主要參數摘錄如表所示。
          
          
          3.常用控制對象的特征
          報表數據庫的字段Objtype(對象類型)和Objcode(對象代碼)的值確定了控制對象的類型。為節省篇幅僅把最常用制表控制對象(文字,直線,表達式等)的特征值如表2所示。
          
          其他常用到的字段有:①水平坐標(Hposh②寬度(Wid-th);③表達式類型(Fillchar);④字體(Fontface);⑤對齊方式(Offset)。
          4.全通用關系型表格打印的實現
          從數據庫中自動讀取字段名、類型、寬度,通過修改報表庫(.FRX)的內容達到動態制表的目的,其算法設計如下:
          (1)欄目寬度:定義二維數組XMCD(NJSQ,4)用于存放中間打印結構表(TEMP STRU.DBF)的結構信息:
          (2)打印欄目標題及字段變量名稱:從中間打印結構表(TEMP STRU.DBF)獲取打印欄目寬度存入數組MXZD(NJSQ,3),字段變量存入數組MXZD(NJSQ,1):
          (3)獲取打印表頭表尾項目,通過自定義方法程序AP-PHEAD自定義方法程序向報表添加表頭項目;
          (4)通過自定義方法程序APPLINE自定義方法程序向報表中添加線條;
          (5)通過替換命令REPLACE對.FRX文件中的參數進行修改以獲得我們所需的網格型表格樣式,修改方式同修改.DBF文件一樣。
          最后,報表生成之后,若需要通過Excel、Word或超文本表格方式輸出報表,可利用createobjed()函數將表格直接輸出到相關軟件。
          從以上動態VFP報表的實現原理可看出,本設計打印輸出VFP的表格只是巧妙的充分利用了它的.FRX庫,存在磁盤上的報表文件卻是*.MEM文件,而不是它的報表文件.FRX和.FRT。
          
          
          四、小 結
          
          本設計所研究僅僅是利用VFP實現通用關系型表格打印。但是,基于此設計思想,深入設計還可實現多行表頭的結構型表的打印,字段合并和分解打印、更復雜的單據打印以及自定義紙張,自定義打印機等等,但目前在國內外還沒有一個軟件能夠將所有功能包容其中。要實現一個真正的全通用表格打印,而不僅僅限于關系型表格的通用性,這些問題還有待進一步深入研究。
          
          主要參考文獻
          
          [1]黃昌勇,電算會計基礎[M].上海:立信會計出版社,2002.
          [2]張洪舉.visualFoxPro程序設計參考手冊[M].北京:人民郵電出版社,2004.
          [3]Jeffrey D.Ullman Jennifer Widom AFirst Course ln Database Systems數據庫系統基礎教程(影印版)[M].北京:清華大學出版社,2000.
          [4]陳隆偉等.會計電算化全通用理論與會計軟件的全通用[J].財會月刊(會計),2005,(4).

        【全通用關系型表格打印模塊設計研究】相關文章:

        研究管理代理與監控模塊通信設計03-18

        ERP中的物流模塊研究12-04

        研究型野外實習教學的設計與實踐01-07

        DMB-TH幀體數據處理模塊的研究設計11-22

        一種溫濕度采集模塊的設計及應用研究03-07

        高速PCI總線接口模塊設計03-08

        力學與固定關系的研究03-16

        作業成本法下成本模塊改進的研究03-11

        基于PXI總線的數據采集模塊的設計03-07

        国产高潮无套免费视频_久久九九兔免费精品6_99精品热6080YY久久_国产91久久久久久无码
      3. <sub id="h4knl"><ol id="h4knl"></ol></sub>
        <sup id="h4knl"></sup>
          <sub id="h4knl"></sub>

          <sub id="h4knl"><ol id="h4knl"><em id="h4knl"></em></ol></sub><s id="h4knl"></s>
          1. <strong id="h4knl"></strong>

          2. 在线观看国产精品日韩AV | 一级a做片免费观看久久 | 日本中文字幕一区在线 | 亚洲精品亚洲人成在线 | 中文字幕一区二区5566 | 在线观看免费三级网站 |