问题有两个:
1、把REPORT打印改成SMARTFORM打印之后,速度是否会慢很多
2、最近出现一个怪异现象:我的SMARTFORM是分3个窗口的,表头、表身、表尾。运行报表之后直接点u201C打印u201D的时候表身部分没打印出来,连空白位置也没留,但是重新运行点u201C打印预览u201D之后再打印又可以打出来了。因为这个很偶然出现,请教各位出现这个现象大概会是什么原因。附上我调用SMARTFORM部分的程序。
DATA:SMARTFORM(30) TYPE C, FM_NAME TYPE RS38L_FNAM. DATA: CTRL_PARAM TYPE SSFCTRLOP, OUT_OPTION TYPE SSFCOMPOP. CTRL_PARAM-PREVIEW = 'X'. CTRL_PARAM-NO_DIALOG = SPACE. "u7ED9u51FAu9009u62E9u6253u5370u673Au53CAu9875u9762u9009u62E9u7684u5BF9u8BDDu6846 OUT_OPTION-TDDEST = 'LP99'. OUT_OPTION-TDDELETE = 'X'. "Delete after printing OUT_OPTION-TDNEWID = 'X'. "New spool request OUT_OPTION-TDIMMED = 'X'. "Print immediately OUT_OPTION-TDFINAL = 'X'. SMARTFORM = 'ZSF_ZQ16'. CALL FUNCTION 'SSF_FUNCTION_MODULE_NAME' EXPORTING FORMNAME = SMARTFORM IMPORTING FM_NAME = FM_NAME EXCEPTIONS NO_FORM = 1 NO_FUNCTION_MODULE = 2 OTHERS = 3. WAIT UP TO 1 SECONDS. CALL FUNCTION FM_NAME EXPORTING CONTROL_PARAMETERS = CTRL_PARAM OUTPUT_OPTIONS = OUT_OPTION USER_SETTINGS = SPACE EXCEPTIONS FORMATTING_ERROR = 1 INTERNAL_ERROR = 2 SEND_ERROR = 3 USER_CANCELED = 4.