1. smart form的处理流程
取得数据->创建相应的form->把数据传入到form中
取得数据:
A. 通过abap程序来获取数据
B. 将取得的数据存放在内表,结构或者变量中
创建相应的form:
A. 创建form的接口
B. 创建页
C. 创建页中的元素(element)
D. 使用流程控制语句来控制输出
把数据传入到form中:
通过调用函数来实现这个功能:
基本上用到的就两个函数:
A. 获得form的函数名称
DATA fm_name TYPErs38L_fnam
CALLFUNCTION 'SSF_FUNCTION_MODULE_NAME' EXPORTING FORMNAME ='<form name>' IMPORTING FM_NAME =fm_name.
B. 调用smartform的函数
CALL FUNCTION fm_name….
2. form的逻辑
3. 主要的用户图形接口:
Form painter :可以修改window的属性,位置,大小等
PC Editor :编辑text
Navigation tree:导航栏,在这里创建窗口等等
Table Painter :用来画表格,或者模板(template)
Style Builder :用来建立style,控制文本的属性
4. 主要的节点的类型以及描述
全局设置:
Form attributesà表格属性:
相当于script的headerdata,定义基本的打印属性
Form interfaceà表格接口:
定义调用smart form的函数的接口,包括import,export等等,也就是需要和abap程序交互的参数传递类型定义.
Global definitionsà全局数据
在smart form中用到的变量,在这里声明,包括内表,结构,变量,field-symbol等等
Page:页
里面可以分配窗口,图形或者建立地址
Window:窗口
和script的窗口类似
Text:文本
定义窗口中的输出
Graphic:图形
可以定义一些图片打印
Address:地址
同script中的address命令的结果
Template:模板
主要用于定义输出的格式,有点想script的tab
Table:表
定义表类型的输出
Command:命令
可以输入一些命令,比如换页等等
Loop:循环
用来处理内表
5. 主要相关的事务代码:
SO10:建立script或者smartform里面的标准文本,也就是include文本
SMARTFORMS: smartform维护,创建的主要事务代码
SMARTSTYLES: 维护,创建smart style