我找一段代码给你啊,全自动的,自动添加自定义纸张,并且自动调整你的报表。
_SCREEN.LEFT=-10000
Application.VISIBLE=.F.
SET TALK OFF
SET CENT ON
SET DATE ANSI
SET SAFE OFF
SET ESCA OFF
SET EXAC OFF
SET DELE ON
SET RESOURCE OFF
if !file('sheettype.dbf')
retu
endi
SET Library To myfll
dflag=used('sheettype')
SELE paptype,papwidth,papheight dist from sheettype into curs tsheet
*读取纸张代号
SELE tsheet
SCAN
IF 'NT'$GETENV("OS")
paperid=paperadd(tsheet.paptype,tsheet.papwidth,tsheet.papheight)
IF paperid=0
paperid=paperinfo(tsheet.paptype,1)
ENDI
ELSE
paperid=256
ENDI
REPL papid with paperid for paptype==tsheet.paptype in sheettype
SELE tsheet
ENDS
SELE sheettype
SCAN
reportname=allt(sheetfile)
SELE 0
USE &reportname
LOCA for objtype=1 and objcode=53
*调整自定义纸张代号
frxset=expr
FRXSET=SUBST(FRXSET,1,AT('PAPERSIZE=',FRXSET)+9)+ALLT(STR(paperid))+SUBST(SUBST(FRXSET,AT('PAPERSIZE=',FRXSET)),AT(CHR(13)+CHR(10),SUBST(FRXSET,AT('PAPERSIZE=',FRXSET))))
FRXSET=SUBST(FRXSET,1,AT('ASCII=',FRXSET)+5)+ALLT(STR(paperid))+SUBST(SUBST(FRXSET,AT('ASCII=',FRXSET)),AT(CHR(13)+CHR(10),SUBST(FRXSET,AT('ASCII=',FRXSET))))
REPL expr with frxset
USE
SELE sheettype
ENDS
IF !dflag
USE in sheettype
ENDI
exename=sys(5)+sys(2003)+'\汇通管理.exe'
if file(exename)
CreateShortcut(exename,'汇通管理2.1',1,.f.,'','汇通担保管理系统')
endi
wait '汇通担保管理系统2.1初始化完成!'wind time 1
SET Library To
Application.VISIBLE=.T.
_SCREEN.LEFT=0
*rETU
QUIT
*********************************
这段代码在系统安装后做初始化,自动添加自定义纸张,并生成桌面快捷图标
前提:1、要有MYFLL.Fll支持;
2、sheettype是自由表,记录报表所用的纸张信息,每一种纸张一条记录;
sheetfile是报表文件名,必须是包括扩展名的完整名称;
paptype是纸张类型,就是手工添加时的格式名称;
papwidth,papheight纸张的宽和高,单位为mm;
papid是纸张代码,三位数字
3、所涉及的报表要设置为“排除”。