调用smartform
调用 reuse_alv_grid_display函数.
使用参数 I_callback_pf_status_set 设置工具条
I_callback_user_command 点击按钮显示form功能
注意: ‘’ 号中一定要写大写字母
I_callback_pf_status_set = ‘MYSTATUS’
建立MYSTATUS子程序(为建立Print按钮): Form mystatus using extab type SLIS_T_EXTAB.
在mystatus中输入语句Set pf-status ‘MYSTANDARD’.设置status
双击MYSTANDARD名字建立MYSTANDARD
Normal screen
Menu Bar 菜单
Application Toolbar 应用工具条:键入back双击可以设置属性.
Function keys 功能名
BACK PRINT两个参数
I_callback_user_command
I_callback_user_command = ‘USER_COMMAND’ 参数名由用户定义,但一定要大写,并且能和子程序匹配.
建立子程序 对点击的按钮进行判断,如果为print则 调用PRINT 子程序
USER_COMMAND :Form user_command using ucomm like SY-UCOMM selfield TYPE slis_selfield.
Case ucomm.
When ‘PRINT’.
Perform PRINT.
Endform.
创建PRINT 子程序
将alv内表中的数据导入到form内表中
Loop at itab.
Move-corresponding itab to it_print.
Append it_print.
Endloop.
在PRINT子程序中调用函数 SSF_FUNCTION_MODULE_NAME
Formname = ‘ZSD_ZSY’(smartform名称)’
一定要打开SSF 函数的IMPORTING
参数FM_NAME = FM_NAME1(函数变量=smartform函数)
定义FM_NAME1变量
Data FM_NAME1 type RS38L_FNAM(重要,函数的一个类型)
查看Smartform的函数名,通过patten调用该函数然后改名 FM_NAME1.
参数:TABLES
ZSD01 = IT_PRINT(存放数据的form内表)
开发报表
四大过程
1. 取数(重要)
2. 制作ALV
3. 显示ALV
4. 制作FORM (打印)
取数中 少用 联合
转自: http://blog.sina.com.cn/s/blog_5cdacb630100ceaf.html~type=v5_one&label=rela_nextarticle