ABAP项目砖家之旅-screen和表单项目实战

ABAP项目砖家之旅-和表单项目实战3.编辑界面总结
前言
直接上一个表单的需求来实战下,需求顾问提供fs-功能说明书,一般会描述下想要什么界面,录入什么数据,录入后如何使用等 。我们按照需求整理成我们编程人员能否理解的即可
上需求:sap用户比较贵,我们有大堆的销售人员需要录入简单的资料,于是业务提了需要新建一个销售人员管理界面,需要用户、姓名、密码、截止日期、可选区域、根据区域可选门店 。
一、需求解析()
直接看字段:用户、姓名、密码、截止日期、区域、门店 。直接得出是需要建立透明表了,再看用户要输入信息肯定需要一个屏幕输入;虽然没有提要不要列表,但还是要考虑他们怎么查看和管理建立的销售人员;那就做个简单的显示界面吧(alv更好,后面alv实战再做);显示界面还不行,人家用上了肯定还要搜索的,提一送三没办法 。都来吧做全套,一条龙吧 。
注意:abap对象新建和程序命名都有一套规则,上一篇有截图,欢迎大家查看下
二、功能实现和开发计划
分为表结构、管理界面(显示界面)、编辑界面,开发计划是几分钟做好表结构,然后做显示界面,最后做编辑界面
1.表结构
直接SE11,新建表,错!必须先统计下字段、数据元素、长度等,业务不提供的话,我们自己搞个表吧
字段描述元素域类型长度小数备注
zname
用户
char
10
zdesc
姓名
char
20
zdate
截止日期
dats
格式
zpsw
密码
zepsw
zmpsw
char
10
暂不加密
zarea
区域
char
门店
zm
char
元素较简单重复使用概率不大,故暂不使用数据元素和域,注意主键,不然容易覆盖
插入数据:
2.显示界面和查询条件 2.1 se38新建程序
2.2 添加搜索界面控件
可以使用(单值)或者-(区间)
select-OPTIONS:s_zname for zttest_01-zname,s_zdesc for zttest_01-zdesc .
保存,然后点击:转到——文本元素,点击选择文本(上面定义控件的文本),勾选“数据字典参考”,自动带出文本,也可不勾选自己写
2.3 定义内表和其他变量方便抽取数据
DATA:LT_ZTTEST TYPE TABLE OF zttest_01 , "跟透明表一致的内表WA_ZTTEST LIKE LINE OF LT_ZTTEST . "工作区(行)FIELD-SYMBOLS: LIKE LINE OF LT_ZTTEST. "指针(行)
2.4 在开始选择事件写入sql

ABAP项目砖家之旅-screen和表单项目实战

文章插图
START-OF-SELECTION .select * from zttest_01 into TABLE LT_ZTTESTwhere zname in s_znameand zdesc in s_zdesc .
2.5 在结束选择事件写输出列表
END-OF-SELECTION ."不一定在这个事件,也可以跟2.4一起WRITE:'搜索条件——用户:',s_zname,';姓名:',s_zdesc .ULINE.WRITE:TEXT-000,TEXT-001,TEXT-002,TEXT-003,TEXT-004,TEXT-005.ULINE.IF LT_ZTTEST[] is not INITIAL.LOOP AT LT_ZTTEST ASSIGNING .IF -ZDATE ge sy-datum.WRITE icon_green_light AS ICON .ELSE.WRITE icon_red_light AS ICON .ENDIF.WRITE: -ZNAME,-zdesc ,-ZDATE,-ZAREA,-ZWERKS . ULINE.ENDLOOP.ENDIF.
界面显示:
3.编辑界面 3.1在显示界面添加0100屏幕
3.2 修改0100屏幕
双击点开0100屏幕,点击“字典”按键,然后输入需要维护的表名字,点击“从字典获取”按键,然后选定需要维护的行,点击确定(绿勾)