999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

在PB7中如何動態控制兩個打印機實現發票打印

2012-12-31 00:00:00茍偉
教育界·上旬 2012年21期

【摘 要】由于業務需求發生變化,需將代收費與收入分別打印到不同格式的發票上,本文以PowerBuilder7.0作為開發工具,SQL SERVER2000作為后臺數據庫,Windows XP為操作系統平臺,詳細介紹在重慶電大收費系統中如何動態控制兩個打印機實現發票打印。

【關鍵詞】收費系統 發票格式 打印機 發票打印

一、產生問題的原因

PowerBuilder7.0是一種高效而快捷的集成開發環境,它提供了可視化的、面向對象的、基于客戶機/服務器的開發環境,被譽為最快速地客戶機/服務器數據庫信息系統開發工具,使用其DataWindow數據窗口專利技術,能快速的實現數據的增加、修改、刪除、查詢和打印功能,同時具有最強大的、方便的報表功能,可以直接在應用程序中使用的報表生成器,支持Crosstab、圖形報表,nested報表以及其他一些吸引人的特性。用戶可以根據需要選擇各種標準紙張類型打印報表、也可自定義紙張格式打印憑證和發票,但其打印內容都是輸出到操作系統默認的打印機。而在重慶電大開放學院收費系統中,由于重慶市將大中專學生收費發票分成了兩種不同格式,一種為收入發票,只能打印收入的收費項目,如學費、住宿費等,另一種為代收費發票,只能打印代收的收費項目,如書費、體檢費等。如果客戶機上只使用一臺打印機,就需要在兩臺計算機上分別打印收入和代收費,如果安裝兩臺打印機就需要動態的控制兩臺打印機改變為當前默認打印機,將收費項目發送到不同的打印機進行打印。

二、解決方案

如果在兩臺計算機上分別打印收入和代收費,只需重新設置收入發票格式和代收費發票格式,每臺計算機就只能收取收入的收費項目或者收取代收費的收費項目,這樣將以前一次完成的操作分成兩次完成,實際運行中會帶來很多不便,比如同一個學生的相關信息需要輸入兩次,操作員需要不斷地更換計算機進行收費,可能將收入的收費項目打印到代收費發票上,或者將代收費的收費項目打印到收入的發票上,不僅效率低下,而且也容易出錯,讓學生等待時間過長也會讓學生產生反感。就其利弊,當然應選擇第二種方案,可以同時收取收入和代收費,并將收費項目發送到不同的打印機進行打印。

雖然在PowerBuilder7.0中提供了PrintSetup()函數,可以在標準的打印對話框中通過手工選擇打印機實現打印,但不能自動的實現將將收費項目發送到相應的打印機進行打印,這將極大地影響收費速度,同時也會因為選擇打印機錯誤而引起發票打印格式錯誤。因此需要能自動識別收費項目的類型,并且自動地選擇對應的打印機進行打印。

因為需要分辨物理打印機,故將兩臺打印機分別修改其默認名稱為收入和代收費,對應的為了能識別收費項目以便能發送到對應格式的打印機進行打印,需要在收費項目表中增加一個收費項目類型的字段,其值為收入或代收費,將所有收費項目分成收入收費項目和代收費收入項目,操作員收費時仍然可同時輸入收入和代收費的收費項目,在保存收費信息時,將收入和代收費分別保存為兩筆收費記錄,根據收費記錄屬于收入還是代收費,既而選擇相應格式發票的打印機進行打印。打印時,先將收入打印機設置為默認打印機,再把收入的收費信息傳送到當前默認打印機進行打印,然后又將代收費打印機設置為默認打印機,又把代收費的收費信息傳送到當前默認打印機進行打印。

現在解決問題的重點就是如何改變當前默認打印機,通過對Windows XP系統進行分析,我們能夠知道Windows的打印機的信息一般存放在注冊表及Win.ini文件中。這些信息分別位于系統注冊表的HKEY_CURRENT_CONFIG\\System\\CurrentControlSet\\Control\\Print\\Printers下及win.ini的[windows]及[Devices]段下。在注冊表中每一個打印機在上面的目錄下均有一個以打印機為名的主鍵條目,Win.ini的[Devices]也一樣。在注冊表上述目錄下,有default字符串值指示當前的默認打印機,win.ini中的[windows]中device的值對也一樣對應了當前的打印機,可以從win.ini文件中取當前打印機完整信息,然后在win.ini文件及注冊表中更新當前打印機,問題即得以解決。下面以在客戶機并行接口上安裝Epson LQ-1600K打印機,修改其打印機名為收入,在USB1接口上安裝Epson LQ-630k打印機,修改其打印機名為代收費,都使用29cmX14cm的自定義紙張的實際環境來具體說明解決方法。

三、小結

通過以上論述可知,在用PowerBuilder7.0開發的應用程序中可用多種方法實現對打印機的控制。對于單臺打印機的打印,一般直接調用datawindow.print()方法即可。如需要動態控制兩個打印機實現打印就需要通過改變當前默認打印機來予以解決。

【參考文獻】

[1]PowerBuilder實用教程(第3版) . 電子工業出版社,2011.

[2]PowerBuilder案例開發集錦(第2版). 電子工業出版社,2009.

[3]PowerBuilder實用教程與實訓. 北京大學出版社,2006.

[4]Windows API開發詳解:函數、接口、編程實例. 人民郵電出版社,2011.

主站蜘蛛池模板: 日韩av电影一区二区三区四区| 99久久精品国产麻豆婷婷| 国产永久在线视频| 波多野结衣一二三| 67194在线午夜亚洲| 2021国产精品自拍| 日本一本正道综合久久dvd | 国产精品网址你懂的| 香蕉综合在线视频91| 毛片基地视频| 无码久看视频| 亚洲成人在线免费| 伊人蕉久影院| 亚洲91精品视频| 中文字幕在线一区二区在线| 中国一级特黄视频| 无码一区二区三区视频在线播放| 青青国产视频| 狠狠做深爱婷婷久久一区| a亚洲天堂| 久久夜色精品国产嚕嚕亚洲av| 自拍偷拍一区| 一本大道在线一本久道| 波多野一区| 欧美中文字幕在线二区| 亚洲中文字幕久久无码精品A| 香蕉eeww99国产在线观看| 免费在线国产一区二区三区精品| 久久久噜噜噜| 日韩在线影院| 国产小视频免费| 幺女国产一级毛片| 四虎综合网| 国产尤物jk自慰制服喷水| 亚洲国产成人精品一二区 | AV在线麻免费观看网站| 一级毛片高清| 欧美啪啪一区| 亚洲人网站| 亚洲日韩精品伊甸| 伊人查蕉在线观看国产精品| 国产sm重味一区二区三区| 亚洲人成人无码www| 狠狠色婷婷丁香综合久久韩国| 国产69囗曝护士吞精在线视频| 国产经典免费播放视频| 成人免费黄色小视频| 国产视频入口| 亚洲无码电影| 国产精品大尺度尺度视频| 亚洲色图欧美| 色欲综合久久中文字幕网| 日本高清在线看免费观看| 久久午夜影院| 色视频国产| 免费人成视频在线观看网站| 午夜少妇精品视频小电影| 一本无码在线观看| 国产精品v欧美| 日本不卡在线| 不卡视频国产| 最新午夜男女福利片视频| 老司机精品一区在线视频| 久久精品无码国产一区二区三区 | 国产午夜精品鲁丝片| 狠狠色噜噜狠狠狠狠色综合久| 国产成人精品午夜视频'| 久久a毛片| 欧美专区日韩专区| 婷婷激情五月网| 久久无码免费束人妻| 九九久久精品免费观看| 99久久精品国产综合婷婷| 国产精品免费露脸视频| 一区二区三区四区精品视频| 成人午夜视频免费看欧美| 国产精品视频公开费视频| 亚洲日韩Av中文字幕无码| 国产乱人伦AV在线A| 久久国产拍爱| 亚洲精品第一页不卡| 久久精品嫩草研究院|