文章目录
一:理论
1.1基础知识
常规屏幕:处理业务逻辑数据。
以下就是一个FB60业务屏幕(输入供应商发票)
屏幕是ABAP设计最重要的工作,SAP的单据,主数据维护等业务功能都要使用屏幕,一个程序可以包含多个屏幕。
1.2程序的作用
屏幕设计中的dialog是用户和程序之间任意形式的交互,如:
输入数据;
选择菜单项;
单击按钮;
单击或双击表条目。
1.3 程序的分类
ABAP的程序类型(type1 type m type f , type j type k type i)
type1:可执行程序;
type m 模块池程序
可以在上面能建立独立的屏幕
type f 函数程序
type j and type k (接口程序)
type i(继承程序)
1.4 SAP屏幕
是其它屏幕元素的容器, 可用于通过输入和输出字段,列表等显示或输入信息, 是用户和ABAP程序之间的一种对话形式。
1.5屏幕的用途
表控件; 表标签控件; 带有一致性检查的数据输入;F1(检查)F4(搜索帮助)。
1.6屏幕的组成
文本框,文本标签;复选框,表控件;按钮,单选, button,页签(屏幕的属性,逻辑流)。
逻辑流 分为 pbo:输出的控制; pai(用户触发事件)
1.7屏幕的执行过程;
1.pbo(输出前):如何把数据分配到对应的屏幕上的位置,原素是否需要检查。
2.PAI(输出后):用户点了按钮之后就在这里(比如点了保存);
3.数据取出来了再调用PBO显示。
1.8屏幕的属性
(管理,类型 ,大小,序列,设置),对于开发人员来说,主要是做的类型和序列。
类型:常规,子屏,模式对话框,选择屏幕。
序列:下一个屏幕;
abapdocu中有许多demo程序
1.9屏幕的创建
屏幕的属性,屏幕的布局(显示和输入),元素的属性,逻辑流;
demo
创建屏幕
next screens(0表示自己,如果没有下一个屏幕)
1.91屏幕属性修改
screen是一个内表。 屏幕的属性(一般,程序,显示)
属性的列表
NAME:屏幕元素的名称
GROUP1 :modify ID
LENGTH: 屏幕标签的长度;
INPUT=1的时候可输入,等于0的时候不可输入;
OUTPUT:表示显示
REQUIRED:是否强制输入
active=1的时候屏幕才管用
如以下图显示
1.91屏幕的序列
静态指定屏幕
动态指定屏幕
动态调用屏幕
动态设定光标位置
以上是对话屏幕的一个总体介绍。
二 实践
以上是常规屏幕的基础知识,以下是屏幕(Hello world)的建立过程;
2.1 建立一个屏幕;
2.2.定义屏幕号;
不要选1000和101X,因为这这些分配给选择屏幕.
2.3.输入标题和是否下一个屏幕
因为我们不要下一个屏幕,所以这里去掉.
2.4 定义一个ok_code;
2.5.点击格式
2.6.出现以下的屏幕;
2.7.定义一个一个输入框和一个文本框;
2.8.以下是屏幕的属性(名称必须为英文,然后有大小写之分);
2.9.以下是用户触发的代码;
先主程序
sy-ucomm(这个表示功能码.做屏幕的时候就有一个这个.)
以下是建立状态栏
后面就是这样的一个界面
逻辑流(pbo->pai->pbo)
PROCESS BEFORE OUTPUT.
这个是输出前的程序代码 (loop chain module) (用于输出的界面)
PROCESS AFTER INPUT
这个是输出后的程序代码(Module user_command_2000)(用于输入的界面)
单选按钮
输入输出字段的属性
总结 :
1.CASE与IF的区别
if后面跟条件;CASE后面跟具体的表达式or 变量;
2.模式地方可以进,然后到表的地方;