一、部分與打印有關(guān)的系統(tǒng)變量 VFP本身為我們提供了幾個(gè)與打印有直接關(guān)系的系統(tǒng)變量,它們是:(部分)
_BOX 是否打印文字邊框,.T.=打印
_GETNPD 指定或保存打印機(jī)接口驅(qū)動(dòng)程序的文件名。
_PADVANCE 設(shè)定打印紙進(jìn)紙方式,=FORMFEED(默認(rèn))整張進(jìn)紙。
_PAGENO 設(shè)定或保存當(dāng)前的打印頁(yè)號(hào)。
_PBPAGE 設(shè)定或返回打印的起始頁(yè)號(hào)。
_PEPAGE 設(shè)定或返回打印的終止頁(yè)號(hào)。
_PCOLNO 設(shè)定或返回當(dāng)前打印頭的列。
_PLINENO 設(shè)定或返回當(dāng)前打印頭的行。
_PCOPIES 設(shè)定或返回打印份數(shù)。
_PLENGTH 設(shè)定或返回打印紙的頁(yè)長(zhǎng),默認(rèn)=66行長(zhǎng)。
_PPITCH 設(shè)定打印機(jī)的打印密度。
_PQUALITY 設(shè)定打印機(jī)的打印質(zhì)量。
... ...
這些變量在設(shè)計(jì)報(bào)表程序時(shí),有些是很有用的,故在此列出。
二、一些常用的打印技巧
1.怎樣打印指定的頁(yè)
REPORT FORM XXXX RANGE 2,5 TO PRINTER &&從第2起打至第5頁(yè)止
2.如何計(jì)算總頁(yè)數(shù),以實(shí)現(xiàn)“第?頁(yè)/總?頁(yè)”
在打印前根據(jù)細(xì)節(jié)區(qū)所打印的記錄條數(shù),先進(jìn)行計(jì)算,然后再打印,具體代碼:
PUBL mPAGE
SELE XXX &&xxx=供打印的數(shù)據(jù)表
XX=10 &&XX=細(xì)節(jié)區(qū)所打印的記錄條數(shù)
mPAGE=IIF(RECCOUNT()%XX=0,INT(RECCOUNT()/XX),INT(RECCOUNT()/XX)+1)
mPAGE就是總頁(yè)數(shù),這樣在需要總頁(yè)數(shù)的地方就可直接引用mPAGE變量了。
3.如何使報(bào)表打滿一頁(yè)
如果打印的記錄不足一頁(yè),“頁(yè)注腳”會(huì)自動(dòng)上移,影響報(bào)表的美觀,解決的辦法和上面的差不多,即補(bǔ)足一頁(yè)中所缺少的記錄(補(bǔ)足空白記錄):
SELE XXX &&xxx=供打印的數(shù)據(jù)表
XX=10 &&XX=一頁(yè)細(xì)節(jié)區(qū)所打印的記錄條數(shù)
mI=RECCOUNT()%XX &&取得缺少的記錄條數(shù)
FOR I=1 to mI
APPEND BLANK
ENDF