藏刊網,職稱文章發表、期刊投稿權威機構

投稿咨詢

投稿在線咨詢

專著咨詢

合著&獨著&編委

編輯在線咨詢

專利咨詢

專利申請&轉讓

編輯在線咨詢

軟著版權

軟著版權

編輯在線咨詢

在線溝通

論文&專著&專利

編輯在線咨詢

微信聊

微信掃一掃

首頁 > 計算機論文 > > 結合ReportObject在VFP中實現畢業證和學位證打印
結合ReportObject在VFP中實現畢業證和學位證打印
>2023-07-27 09:00:00


引 言

在高等學校里,畢業生信息的管理、畢業證書和學位證書的打印是教務管理的重要環節,本文就結合 Re-portObject(s報表對象)在 VFP 中實現了本校畢業證和學位證打印,在近幾屆的本、??飘厴I生的畢業證、學位證的打印中得到了實際測試與應用,程序可根據證書的尺寸和內容實現打印對象屬性的可視化調整,簡化了工作人員證書打印的操作步驟,提高了工作效率。

1 系統需求分析

隨著計算機應用的不斷普及,現高校均采用高校學生學籍管理系統為進校的學生學籍建立電子檔案,對學生在校的學習情況進行全程的跟蹤與管理。學校所使用的學籍管理系統能實現對學生的基本情況、學習成績、學分等信息的動態查詢、管理與報表輸出,極大地方便了教務管理人員,該系統主體功能運行良好,但有一處功能不甚完善,即:無法實現畢業證、學位證的批量自動打?。ㄔ到y在批量打印時,每打印一份證書,必須先手動確認后打印才會繼續),因此,本應用對該處做專項功能擴充開發。

2 系統功能模塊設計

程序實現的功能模塊如圖 1 所示,具體描述如下:

(1)學籍信息的導入。原學籍管理系統中有學生基本信息導出的功能,可直接將數據導入使用,對原始畢業生信息數據的導入,可避免對學生基本信息的重新錄入,有效地保證與原學籍系統中數據一致。(2)基本信息的查詢??蛇x擇在本?;蚵摵限k學點對即將畢業的學生進行查詢,支持按學號模糊查找,對查詢結果可按連續選擇、非連續選擇或拖動選擇等多種選擇方式確定待打印證書的學生。

(3)打印格式的設置。打印格式設置中可以對需在證書中打印的項目如姓名、性別、出生年份、出生月份、畢業年份、畢業月份、畢業專業、畢業學校,證書編號等進行選擇,對打印項進行字體、字號、字形、阿拉伯數字的大寫或小寫等格式的設置,打印項的距頂端、距左端的位置的設置,打印項整體位置的移動,證書頁面尺寸的設置,提供了打印設置的保存與還原等功能。畢業證書打印格式的設置界面如圖 2 所示。

(4)分類批量打印??梢赃x擇待打印證書的類型是證書畢業證還是學位證,可以按證書編號的選擇方式打印本校與聯合辦學點中的所有學生、查詢中選擇的學生、指定編號范圍等多種批量打印方式,也可以按學院專業打印方式批量打印。

(5)打印報表的動態生成。根據打印項的各種格式設置和分類批量打印中確定的打印范圍,動態生成打印報表,可以支持直接打印或打印預覽等證書打印方式。

3 系統的實現及關鍵技術

系統實現的主界面如圖 3 所示,整個應用實現涉及到的關鍵技術為打印報表的動態生成,Report Ob-jects為編程人員提供了一種以編程的方式建立報表的方法,它融入了面向對象程序設計的方法和特點,將報表的創建、設計等操作全部封裝在報表對象類(SFREPOBJ.VCX 類庫) 中,該報表對象類由 DougHennig 設計和開發,提供了一系列建立報表對象集的方法和相關屬性,開發人員不必關心其內部如何實現就可以根據項目的需要通過編程的方式靈活地將其應用到實際項目的開發中。其動態生成打印報表的流程和部分代碼如下:

3.1 建立報表控件,設置報表全局屬性

對 Report Objects 中 SFReportFile 類進行實例化,設置報表的默認字體、字體大小、報表中的列數、單位大小、報表文件的名稱等全局屬性。

實例化 SFReportFile 類、設置報表的全局屬性的相關代碼如下:

loReport=NEWOBJECT\\('SFReportFile', 'SFREPOBJ'\\) && 建立控件
loReport.cReportFile=“ReportName_frx” && 設 置 文件名
loReport.lSummaryBand=.F. && 不要概要帶
loReport.cUnits="I" && 單位英寸
loReport.nLeftMargin=0 && 設置左邊的空白欄

3.2 返回指定報表帶的對象,設置其屬性

調用 SFReportFile 類中 GetReportBand\\(\\)方法返回一個由入口參數指定報表帶的對象,入口參數可以是 Page Header(頁標頭帶)、Detail(細節帶)、PageFoote(r頁腳注帶)等,通過返回的對象訪問指定的帶,這樣你便可以設置其屬性或向其中添加對象\\(如字段或線條\\),代碼如下:

* 設置頁標頭,頁標頭 在控件中自動生成,設置高度為 0
loPageHeader = loReport.GetReportBand \\('Page Header'\\)&& 頁標頭帶對象
loPageHeader.nHeight = 0loDetail = loReport.GetReportBand\\('Detail'\\) && 細節帶對象
loDetail.nHeight =ReportMainSetup.pg_height/2.54 && 將ReportMainSetup 表中 ReportMainSetup 字段的值厘米轉換為英寸
loPageFooter = loReport.GetReportBand\\('Page Footer'\\) && 頁腳注對象
loPageFooter.nHeight = 0

3.3 對細節帶添加對象

Report Bands 類提供的 ADDITEM()方法為添加一個對象到一個報表帶中,當入口參數為”Field”時,返回值類型為 SFReportField,SFReportField 類的全局屬性如表 1 所示。

向細節帶添加的代碼如下:

*ReportDetailSetup 為保存報表設置的表
*tempReportData 為根據證書要打印的字段將畢業學生信息表提取后生成的臨時表
strFieldName="tempReportData."+ALLTRIM\\(ReportDe-tailSetup.Print_Item\\)
strFontName=ALLTRIM\\(ReportDetailSetup.fontname\\)
strFontSize=ALLTRIM\\(ReportDetailSetup.FontSize\\)
strFontStyle=ALLTRIM\\(ReportDetailSetup.FontStyle\\)
loObject = loDetail.ADDITEM\\('Field'\\)
loObject.cExpression = "&strFieldName"
loObject.cFontName = strFontName
oObject.nFontSize = VAL\\(strFontSize\\)
loObject.nHPosition = ReportDetailSetup.h_Position/2.54+PgLeft
loObject.nVPosition = ReportDetailSetup.v_Position/2.54+Pg-Top
loObject.nWidth = loReport.GetHValue\\(LEN\\(&strFieldName\\) ,loObject\\)
loObject.cAlignment=ICASE \\(ReportDetailSetup.printalign=1,"left",ReportDetailSetup.printalign=2,"right",ReportDetailSetup.printalign=3,"center"\\)
loObject.lFontItalic=IIF\\(" 斜 "$ALLTRIM\\(strFontStyle\\),.T.,.F.\\)
loObject.lFontBold=IIF\\(" 粗 "$ALLTRIM\\(strFontStyle\\),.T.,.F.\\)

3.4 生成報表文件,打印報表

調用實例化 SFReportFile 類中的 Save\\(\\)方法,生成由 cReportFile 屬性指定命名的報表文件,執行VFP 中的 REPORT FORM 命令實現報表打印或預覽,代碼如下:

loReport.Save\\(\\)
IF IsPrintOrPreview=1 && 直接打印
REPORT FORM &strReportName_frx. NOCONSOLE ALL TO PR IN TER PROMPT
ELSE && 預覽
REPORT FORM &strReportName_frx. PREVIEW ALL TOPRINTER PROMPT
END IF
loReport.Release\\(\\)

4 結束語

本文在 VFP 中應用 Report Objects 實現了高校畢業證學位證打印,較基于 WORD 的郵件合并打印證書、基于 VB 的報表打印和基于 VFP 中直接報表打印,其界面友好、可交互性較強,實現了打印對象的可視化調整,提高了教務管理工作者的工作效率,文中結合代碼分析了 Report Objects 實現報表動態打印的開發方法及步驟,可結合不同行業應用(如各類票據的打?。┘右酝茝V,實現更多更靈活的應用?!緢D略】

參考文獻:

[1] Doug Hennig . Report Object [J/OL]. 2009-10-12.
[2] 楊憲澤,劉玉萍.軟件技術與程序設計(Visual FoxPro 版)[M].北京:清華大學出版社,2010.
[3] 甕正科.Visual FoxPro 8 數據庫開發教程[M].北京:清華大學出版社,2005.

綜合排序
投稿量
錄用量
發行量
教育界

主管:廣西壯族自治區新聞出版局

主辦:廣西出版雜志社

國際:ISSN 1674-9510

國內:CN 45-1376/G4

級別:省級期刊

中國報業

主管:中國報業協會

主辦:中國報業協會

國際:ISSN 1671-0029

國內:CN 11-4629/G2

級別:國家級期刊

中國房地產業

主管:中華人民共和國住房部和...

主辦:中國房地產業協會

國際:ISSN 1002-8536

國內:CN 11-5936/F

級別:國家級期刊

建筑與裝飾

主管:天津出版傳媒集團有限公司

主辦:天津科學技術出版社有限...

國際:ISSN 1009-699X

國內:CN 12-1450/TS

級別:省級期刊

財經界

主管:國家發展和改革委員會

主辦:國家信息中心

國際:ISSN 1009-2781

國內:CN 11-4098/F

級別:國家級期刊

文化月刊

主管:中華人民共和國文化部

主辦:中國文化傳媒集團有限公司

國際:ISSN 1004-6631

國內:CN 11-3120/G2

級別:國家級期刊

期刊在線投稿系統
上傳文件
支持上傳.doc、.docx、.pdf文件
18年國內外學術服務,發表國際文獻請認準藏刊網官網

資深編輯團隊

專業設計投入方案

投稿成功率極高

企業信譽保障

對公交易更安全

人民群眾口碑好

高效投稿流程

審稿快!出刊快!檢索快!

正規刊物承諾

無假刊!無套刊!

投稿成功!

藏刊網提醒您

1.稿件將進入人工審稿階段,審稿后會有編輯聯系您,請保持手機暢通。

2.為避免一稿多投、重刊等現象影響您的發表,請勿再投他刊。

確定

投稿失??!

藏刊網提醒您

由于網絡問題,提交數據出現錯誤,請返回免費投稿頁面重新投稿,謝謝!

確定

藏刊網收錄400余種期刊,15年誠信發表服務。

發表職稱文章,覆蓋教育期刊、醫學期刊、經濟期刊、管理期刊、文學期刊等主流學術期刊。

  投稿郵箱:cangkan@163.com

本站少量資源屬于網絡共享如有侵權請您聯系我們,將在第一時間刪除。

版權 2009-2022 版權所有:河北藏刊文化發展有限公司 工信部備案:ICP備20016223號 冀公網安備13010502002858號

青青青爽不卡一区二区_操婷婷色六月中文字幕_国产精品yjizz视频网_中文无码一级大片_A级毛片100部免费观