课堂练习指导SmartformsWord文档下载推荐.docx

上传人:b****2 文档编号:1022676 上传时间:2023-04-30 格式:DOCX 页数:28 大小:947.14KB
下载 相关 举报
课堂练习指导SmartformsWord文档下载推荐.docx_第1页
第1页 / 共28页
课堂练习指导SmartformsWord文档下载推荐.docx_第2页
第2页 / 共28页
课堂练习指导SmartformsWord文档下载推荐.docx_第3页
第3页 / 共28页
课堂练习指导SmartformsWord文档下载推荐.docx_第4页
第4页 / 共28页
课堂练习指导SmartformsWord文档下载推荐.docx_第5页
第5页 / 共28页
课堂练习指导SmartformsWord文档下载推荐.docx_第6页
第6页 / 共28页
课堂练习指导SmartformsWord文档下载推荐.docx_第7页
第7页 / 共28页
课堂练习指导SmartformsWord文档下载推荐.docx_第8页
第8页 / 共28页
课堂练习指导SmartformsWord文档下载推荐.docx_第9页
第9页 / 共28页
课堂练习指导SmartformsWord文档下载推荐.docx_第10页
第10页 / 共28页
课堂练习指导SmartformsWord文档下载推荐.docx_第11页
第11页 / 共28页
课堂练习指导SmartformsWord文档下载推荐.docx_第12页
第12页 / 共28页
课堂练习指导SmartformsWord文档下载推荐.docx_第13页
第13页 / 共28页
课堂练习指导SmartformsWord文档下载推荐.docx_第14页
第14页 / 共28页
课堂练习指导SmartformsWord文档下载推荐.docx_第15页
第15页 / 共28页
课堂练习指导SmartformsWord文档下载推荐.docx_第16页
第16页 / 共28页
课堂练习指导SmartformsWord文档下载推荐.docx_第17页
第17页 / 共28页
课堂练习指导SmartformsWord文档下载推荐.docx_第18页
第18页 / 共28页
课堂练习指导SmartformsWord文档下载推荐.docx_第19页
第19页 / 共28页
课堂练习指导SmartformsWord文档下载推荐.docx_第20页
第20页 / 共28页
亲,该文档总共28页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

课堂练习指导SmartformsWord文档下载推荐.docx

《课堂练习指导SmartformsWord文档下载推荐.docx》由会员分享,可在线阅读,更多相关《课堂练习指导SmartformsWord文档下载推荐.docx(28页珍藏版)》请在冰点文库上搜索。

课堂练习指导SmartformsWord文档下载推荐.docx

需要在输出参数中键入GT_OUT变量,否则系统会提示GT_OUT没有定义。

在设计代码行编辑的节点,如表格初始化和程序行,凡是在代码段中涉及的全局变量,均需要根据情况在输入参数或者输出参数中予以体现。

该段代码中,assign语句后以括号围起的字符串变量(field)为动态对象,系统自动将该字符串指定的报表程序内表地址取出并赋给字段符号变量<

table>

字符串变量field的取值,需要注意,括号内为要调用当前表格的报表程序名称,后边紧跟着的就是该报表程序中存放待输出数据的内表对象名称,如果该内表带有表投行,那么必须增加[]显式区别要访问的是内表。

比如本练习中“(ZTEST_XXX_ALV_01)GT_OUT[]”

5、窗口输出设置

单击左侧导航树页面和窗口—>

新页面节点前的小箭头

,可以展开页面下级节点,默认已经有一个主窗口节点,双击该节点,单击右侧【输出选项】选项卡,修改左边距为1CM,宽度为19CM.,然后保存。

此处的左边距与宽度之和不得大于表格属性中选择的页格式定义的宽度,

上边距与高度之和也不能大于表格属性中页格式定义的高度。

6、新建表节点

在左侧的导航树中选中主窗口节点后单击鼠标右键,选择创建—>

表,窗口节点下会自动出现一个新表1节点,如图

修改表节点名称和描述如下图,表节点下自行创建了表头、主要区域和脚标三个输出区域。

7、表绘制器和行类型

在导航树中双击刚刚创建的表节点,单击右侧【表】选项卡,可以看到右侧的表绘制器中已经有一个名称为%LTYPE1的行类型,鼠标移动在表格行上单击右键选择重命名,修改行类型名称为LTYPE_TITLE,点击

确定修改。

表绘制器的使用

鼠标选中表绘制器上

按钮,切换鼠标到绘制行列状态,然后按下鼠标后横向移动即可看到绘制区会出现横向分割线,松开鼠标左键后即可创建新的行类型;

垂直拖拽鼠标则出现竖向分割线,松开鼠标后即可创建新的单元格,而拖动竖向分割线还可以调整单元格的宽度。

行类型细节编辑

也可以点击表绘制器右上方的细节按钮

,切换到细节编辑界面直接输入行类型及列数,并可以精确指定单元格宽度,如下图。

表宽度不得大于窗口属性中设定的宽度,各行类型的单元格宽度之和必须等于表宽度。

总共创建四个行类型,分别划出若干单元格,其详细信息如下:

行类型

表格线

单元格数

单元格宽度(CM)

LTYPE_TITLE

1

19

LTYPE_HERDER

2

4

15

LTYPE_DATA

6

2,80

3,23

3,25

3,46

2,26

LTYPE_BOTTOM

9

10

表格框线的设置

点击表绘制器按钮

,可以切换回图形编辑界面,单击工具栏上

行列绘制按钮,将鼠标切换到选择状态;

然后按住键盘上SHIFT键的同时,单击鼠标左键选中LTYPE_DATA行,然后先后点击外部框架

和内部框架

两个按钮,即为LTYPE_DATA行类型增加表格框线。

最终效果如下图:

8、在表节点中创建表行

在导航树中选中表节点下表头节点,然后单击鼠标右键,选择创建—>

表行,系统自动在表头区节点下增加表行节点,我们修改其名称和描述为ROW_TITLE和“标题”,并在右侧属性区中指定行类型为LTYPE_TITLE后,可以看到系统自动在当前行节点下增加一个单元列节点,同样修改节点名称和描述为CELL_TITLE和“标题”。

按照同样方法,在标题行节点后依次创建抬头行ROW_TABLEHEADER和列头行ROW_LISTHEADER,行类型分别为LTYPE_HERDER和LTYPE_DATA。

在主要区域节点下创建表格数据行ROW_DATA,行类型为LTYPE_DATA。

在脚标节点下创建页码行ROW_BOTTOM,行类型为LTYPE_BOTTOM,如下图:

9、创建标题文本及抬头文本

选中导航树中CELL_TITLE节点,单击鼠标右键选择创建—>

文本,系统自动在选中节点下增加一个文本节点,我们修改节点名称和描述为TEXT_TITLE和“标题”。

然后单击表格设计器上方的

按钮,打开左下侧的字段列表,展开导入接口,可以看到之前在表格接口中自定义的参数列表,用鼠标左键点击选中G_TITLE并拖拽到右侧的文本输入区中,并选择段落格式为C7,即指定标题显示格式为宋体三号居中。

用同样方法,在抬头行ROW_TABLEHEADER的第二个单元格节点下创建文本节点,将导入接口中的变量G_AUDAT拖入文本输入区内,选择段落格式为RB,即指定统计周期显示为宋体五号居右。

10、创建表格列头行文本及相应静态内容设置

用同样方法,在表头节点表头行ROW_LISTHEADER的第一个单元格节点下创建文本节点,将其文本输入区内直接输入内容:

航线承运人ID,选择段落格式为CB,即指定统计周期显示为宋体五号居中。

在表头行ROW_LISTHEADER的第二个单元格节点下创建文本节点,将其文本输入区内直接输入内容:

航班连接ID,选择段落格式为CB。

在表头行ROW_LISTHEADER的第三个单元格节点下创建文本节点,将其文本输入区内直接输入内容:

航班日期,选择段落格式为CB。

在表头行ROW_LISTHEADER的第四个单元格节点下创建文本节点,将其文本输入区内直接输入内容:

航空运费,选择段落格式为CB。

在表头行ROW_LISTHEADER的第五个单元格节点下创建文本节点,将其文本输入区内直接输入内容:

飞机类型,选择段落格式为CB。

在表头行ROW_LISTHEADER的第六个单元格节点下创建文本节点,将其文本输入区内直接输入内容:

最大容量,选择段落格式为CB。

 

11、创建表格数据行文本及相应动态数据设置

采用相同方法,在主要区域节点下表格数据行ROW_DATA的第一个单元格节点下创建文本节点,修改其节点名称和描述为:

CELL_CARRID和航班承运人ID;

然后在字段列表中展开全局数据后,打开工作区变量GS_OUT,选中CARRID字段拖入右侧文本输入区,然后选择段落格式为

在表头行表格数据行ROW_DATA的第二个单元格节点下创建文本节点,修改相应节点名称和描述,然后从字段列表将GS_OUT-CONNID字段拖入右侧文本输入区,然后选择段落格式为CB。

在表头行表格数据行ROW_DATA的第三个单元格节点下创建文本节点,修改相应节点名称和描述,然后从字段列表将GS_OUT-FLDATE字段拖入右侧文本输入区,然后选择段落格式为CB。

在表头行表格数据行ROW_DATA的第四个单元格节点下创建文本节点,修改相应节点名称和描述,然后从字段列表将GS_OUT-PLANETYPE字段拖入右侧文本输入区,然后选择段落格式为RB。

在表头行表格数据行ROW_DATA的第五个单元格节点下创建文本节点,修改相应节点名称和描述,然后从字段列表将GS_OUT-PRICE字段拖入右侧文本输入区,然后选择段落格式为CB。

在表头行表格数据行ROW_DATA的第六个单元格节点下创建文本节点,修改相应节点名称和描述,然后从字段列表将GS_OUT-SEATSMAX字段拖入右侧文本输入区,然后选择段落格式为CB。

12、创建页码文本及系统字段设置

依然采用同样方法,在脚标区页码行ROW_PAGE的第二个单元格点下创建文本节点,修改其节点名称和描述为:

DATA_PAGE和页码;

然后在字段列表中展开系统字段后,打开系统对象SFSY,选中PAGE字段拖入右侧文本输入区,然后选择段落格式为LB,即指定页码显示为宋体五号居左。

13、激活SMARTFORMS

保存并激活SMARTFORMS,这个过程中系统会自动进行语法检查,倘若表格设计过程有问题,会给出提示要求进行修改,如果没有问题即完成表格设计。

第二部分:

集成到报表程序

1、调出原有报表程序

打开SE38编辑器,输入原订货明细报表程序名称ZTEST_XXX_ALV_01,然后点击修改按钮,在程序中增加打印事件处理完成打印调用

2、定义自定义工具条并绑定到ALV控件中

在程序中创建状态条对象:

STANDARD

点击工具条上按钮

打开左侧对象清单列表,选中报表程序名称根节点,然后单击鼠标右键,选择创建—>

GUISTATUS,在弹出窗口中状态名称输入STANDARD,短文本描述输入工具条,然后确定即可打开状态条编辑界面。

状态条编辑界面如下图

展开应用工具条,可以看到全是空白的,选其中一个单元格,输入字符串PRT,并双击该字符串,弹出如下窗口:

默认为静态文本,无需改动,直接点击

确认创建函数文本

完成以下输入,函数文本:

打印,图标:

ICON_PRINT,信息文本:

打印当前报表;

然后点击确认,在下图中分配一个功能键给当前按钮

确定功能键分配后在后续弹出的窗口,可以输入快捷键P

然后点击确认,即完成自定义工具条和打印按钮的创建,如下图

我们通常采用相同的方法将ALV控件内置的系统功能按钮分别创建到自定义工具条中,如下图,最后会附上其相应的功能码一览表供开发时候参考。

状态条中应用工具条的自定义已经创建完成,接下来需要对系统工具条的默认功能键创建到自定义的状态条中;

展开功能键列表,可以看到标准工具条中有所有图标,但功能码均为空,所以,在相应的图标上填入对应的预置功能码即可。

至此,自定义状态条的设计完成,保存并激活,然后在程序运行中的最终结果即如下图:

ALV控件内置功能码一览表

功能代码:

函数文本:

图标名称:

&

ETA

细节

ICON_SELECT_DETAIL

EB9

调用报告...

ICON_TABLE_SETTINGS

REFRESH

刷新

ICON_REFRESH

ALL

全部选择

ICON_SELECT_ALL

SAL

取消全选

ICON_DESELECT_ALL

OUP

按升序排列

ICON_SORT_UP

ODN

按降序排列

ICON_SORT_DOWN

ILT

设置过滤器

ICON_FILTER

UMC

总计

ICON_SUM

SUM

小计...

ICON_INTERMEDIATE_SUM

RNT_PREV

打印预览

ICON_LAYOUT_CONTROL

VEXCEL

MicrosoftExcel

ICON_XLS

AQW

字处理...

ICON_WORD_PROCESSING

%PC

本地文件...

ICON_EXPORT

%SL

邮件收件人

ICON_MAIL

ABC

ABC分析

ICON_ABC

GRAPH

图形

ICON_GRAPHICS

OL0

更改布局...

ICON_ALV_VARIANTS

OAD

选择格式...

ICON_ALV_VARIANT_CHOOSE

AVE

保存格式...

ICON_ALV_VARIANT_SAVE

INFO

信息

ICON_INFORMATION

在报表程序中定义菜单处理子程序FRM_SET_MENU

在报表程序中增加如下代码段,完成菜单处理子程序的创建

*&

-------------------------------------------------------------*

Formfrm_set_menu

*实现ALV自定义状态条的绑定处理

*--------------------------------------------------------------*

formFRM_SET_MENUusingrt_extabtypeslis_t_extab.

setpf-status'

STANDARD'

."

引号内字符串为状态条对象的名称

endform."

FRM_SET_MENU

在调用函数模块进行ALV报表显示时增加相应参数调用

修改报表程序中关于ALV报表显示的原有代码段,增加菜单处理参数

callfunction'

REUSE_ALV_GRID_DISPLAY'

exporting

i_callback_program=g_repid

it_fieldcat=it_field

is_layout=gs_layout

it_events=e03_lt_events[]

i_callback_pf_status_set='

FRM_SET_MENU'

"

参数内容必须为大写

……

3、定义用户命令处理子程序并绑定到ALV事件响应处理中

定义用户命令处理子程序FRM_USER_COMMAND

在报表程序中增加如下代码段,完成用户命令处理子程序的创建

----------------------------------------------------------------*

Formfrm_user_command

*实现对用户命令的响应

*-----------------------------------------------------------------*

*-->

R_UCOMMtext

RS_SELFIELDslis_selfield

formFRM_USER_COMMANDusingp_ucommlikesy-ucommselfieldtypeslis_selfield.

casep_ucomm.

when'

PRT'

."

响应自定义工具条中的自定义按钮事件

ifnotgt_out[]isinitial.

performfrm_print_selected."

调用打印输出子程序

else.

messagee888with'

没有可打印的数据!

'

.

endif.

BACK'

返回

leaveprogram.

endcase.

frm_user_command

修改报表程序中关于ALV报表显示的原有代码段,增加用户命令处理参数

i_callback_user_command='

FRM_USER_COMMAND'

……

4、定义打印输出子程序

在报表程序中增加如下代码段,完成打印处理子程序的创建

-----------------------------------------------------------------*

Formfrm_print_selected

*实现对SmartForm的调用

*------------------------------------------------------------------*

p1text

*<

--p2text

formfrm_print_selected.

data:

fm_nametypers38l_fnam.

SSF_FUNCTION_MODULE_NAME'

formname='

ZTESTFM_DHW_001'

参数传值为要调用的Form名称

importing

fm_name=fm_name.

ifsy-subrc<

>

0.

messageidsy-msgidtypesy-msgtynumbersy-msgno

withsy-msgv1sy-msgv2sy-msgv3sy-msgv4.

callfunctionfm_name"

参数列表与Form中定义的接口对象需完全一致

g_title=g_title

g_audat=g_audat

exceptions

formatting_error=1

internal_error=2

send_error=3

user_canceled=4

others=5.

4.

endform."

frm_print_selected

五、打印预览效果图:

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 小学教育 > 语文

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2