开发基础 报表教程 数据字典 对话编程 表单打印 增强出口 SAP接口 S/4 HANA
实战案例 实战笔记 资料下载 CRM
问答互助 会员分享 俱乐部 广告区
论坛指南、建议和投诉
Twilight发表于 2014-03-30 16:37Twilight 最后回复于 2014-03-30 16:37 [复制链接] 4428 0
使用道具 举报
Twilight
管理员
发表回复 回帖后跳转到最后一页
步骤1
建立一个屏幕,要求如下:
步骤2:在这个屏幕的PAI事件中,建立Module user_command_100,并建立相应的include(程序名_100_PAI)
步骤3:该PAI模块的功能为退出该屏幕,返回主程序,在该模块中写代码完成该功能。
步骤4:建立GUI Title 命名为 TITLE_100,内容为”Flight Data”.
步骤5:建立GUI Status命名为STATUS_100,在标准工具栏中,将Back按钮填上指令。
步骤6:在PBO事件中,编写status_100 module,在该module中设定title 和status
步骤7:在窗体设计其中将OK_CODE填写上,并在程序中声明相应的数据对象
步骤8:建立一个PBO模块(Clearok_code),在PBO事件执行的最开始,将OK_CODE清空。
步骤9:画窗体字段,要求如下
(sdyn_conn为表名字,-后面是字段名字,注意右边的属性)
步骤10:在程序中声明相对应的数据对象
步骤11:用户输入完前三个字段后,按回车,从表sflight中读取对应的数据,如果找不到,则返回错误消息E038(bc410)如果能找到数据,则将数据显示在屏幕上。
步骤12:在该屏幕的GUI STATUS中,将标准工具栏EXIT和CANCEL功能实现,设定其Function Type 为E ,在屏幕的PAI模块中,确保当用户点击EXIT或者CANCEL时,不经过数据校验,直接退出屏幕。
步骤13:打开屏幕设计器,在carrid字段的录入框处,将dropdown的属性设置为listbox,并确保Valu List属性,勾选了,来自abap数据字典。(观察一下有什么不同)
步骤14:建立如下三个子屏幕:
步骤15:利用字屏幕区与与TabControl,将三个字屏幕都放到主屏幕中
设计好俄屏幕如下图:
步骤17:编写屏幕110 120的PBO事件,为他们填充数据
步骤18:在屏幕130中放置一个表,用来显示sflight下面的sbook表里面的数据,字段如下:
步骤19:编写PBO和PAI事件,填充表格里面的数据。规定缓存数据的内表名称为IT_SDYN_BOOK,声明相应的工作区,类型为sdyn_book
步骤20(从这里开始,拓展作业,上课没讲):
在子屏幕130上,增加三个pushbutton按钮,具体如下:
步骤21:前两个按钮为全选和全不选,通过控制每一行的MARK字段来达到
步骤22:实施删除的功能:具体步骤如下:
建立内表 IT_SBOOK_UPD,以及相关的工作区,类型为sbook,
从IT_SBOOK_SDYN里面,将用户选中的行,拷贝到IT_SBOOK_UPD内表中
在IT_SBOOK_UPD中,设置这些数据的flag字段为’X’。
调用BC_GLOBAL_UPDATE_BOOK Function Module,将两个内表都传过去。
执行之后,数据就可以删除了
想想看,为什么不直接从表中删除数据,而要用一个功能模块来做?(数据库中的标准表不允许直接删除,因为标准表的数据通常是相互关联的,需要用对应的function 操作)
一、主程序代码:
二、screen 1001.attributes->normal
2.element list 添加ok_code ,painter如下
3.flow logic
三、screen 1101.attributes->subscreen
2.flow logic
四、screen 120
1.attributes->subscreen
2.flow logic
五、screen 130
1.attributes->subscreen
2.flow logic