一、创建Onlie程序

二、Online概览
Online程序:M类型程序

  • 查询数据、录入、修改、删除等
  • Module Pool程序:以Module Pool形态进行业务流程的逻辑处理
  • Online 程序,强调用Online Transaction来处理业务流程进行过程
  • Screen 程序,主要使用Screen(及屏幕对象),并实现界面间Flow Logic(流逻辑)

Online程序的主要对象

  • 界面(Screen)

  • 模块池(Module pool)

      全局字段(Global Data):声明模块池中所有模块都可使用的数据-TOPPBO模块(PBO Modules):屏幕输出前调用的模块-O01PAI模块(PAI Modules):相应用户输入而调用的模块 -I01子程序(Subroutines):可以在模块中任何位置调用的子程序-F01
    
  • 菜单(GUI Status)

  • 标题(GUI TITLE)

  • 事物代码(Transation Code)

  • 用户可以访问的部分是Screen,用户对界面进行操作,相应的操作是通过Screen中的逻辑流控制,而数据声明和界面逻辑代码实现部分是在ABAP程序中。

  • 总结
    Module Pool大致可以分成PBO、PAI两个模块,与界面的逻辑流的顺序一致,对应的流程就是界面显示前和用户输入后。简单来说,就是将画面显示前所需的逻辑和用户对界面进行处理的逻辑分别放置到各自的processing block中。
    默认情况下,系统将模块池分成一个或多个包含程序。

三、界面(Screen)

SAP的屏幕开发

ABAP List代码实现(例:选择界面的创建)

Report程序直接执行即可以显示查询界面或结果界面

Dialog Screen绘制:较复杂,界面丰富

Online程序想要显示查询或结果界面必须建立Screen
事件驱动程序(Event-Driven)

屏幕功能实现

1、 ABAP程序不能直接定义Screen,要通过Screen Painter这个工具来实现。界面元素的设定通过Screen Layout Designer来实现
2、界面的设定:属性/大小/模式
3、界面中的元素:描述或帮助。可以进行有效性检查
4、界面中可以设置独立的Menu Bar或Title,点选按钮或回车可以触发相应功能
功能实现位置:逻辑流中设定

Online程序不能被直接执行,必须通过事务代码,指定界面执行

四、界面中的事件块(Event Block)

  • PROCESS BEFORE OUTPUT.

PBO中的处理逻辑控制界面输出前处理,如更改一些元素的值和属性

  • PROCESS AFTER INPUT

PAI中的处理逻辑控制用户对界面操作后的处理,如按回车键对输入数据进行检查

  • PROCESS ON HELP-REQUEST

Field Help的实现(F1帮助)

  • PROCESS ON VALUES-REQUEST

输入帮助Search Help的实现(F4帮助)

五、界面中的常用关键字

Keyword 功能
MODULE 调用Dialog Module
FIELD 指Element list中特定的Screen field。即,可以判断Screen Field的值或状态是否发生变化。在PAI中对相关Field进行控制时,一定要使用的关键字。
ON FIELD …… ON (Field的连接语)
VALUE FIELD …… VALUE (Field的连接语)
CHAIN CHAIN的开始。CHAIN可以将多个Field捆绑成一个同时进行管理。
ENDCHAIN 结束CHAIN
CALL 调用(CALL a Subscreen)
LOOP 开始处理Screen Table
ENDLOOP 结束Screen Table处理

六、数据处理逻辑

七、Module执行顺序

八、数据检查

1、当SCREEN创建了一个字段,程序代码怎么获取数据?

在程序上定义一个和SCREEN相同的变量,程序对应的变量即可和SCRENN的变量互相传值,两字字段就已进行绑定。

2、数据检查

在一些程序中,当我们设置了输入框后,需要根据用户的输入,进行有效性的检查等,DIALOG界面中提供了针对字段的检查方式:

针对某个字段

FIELD f1 MODULE m1 ON-REQUEST .

检查的字段是 f1 ,执行检查的代码是:M1,ON-REQUEST含义:当变量数据发生改变时。

针对多个字段检查的语法

CHAIN. FIELD f1.FIELD f2.FIELD f3.MODULE m1 ON CHAIN-REQUEST.
ENDCHAIN.

将光标停留在字段上的语法

SET CURSOR FIELD ‘字段名’

E类型按钮

只要点击E类型的按钮时,就会触发AT EXIT-COMMAND这个MODULE,MODULE里的代码不需要判断sy-ucomn功能代码

Online程序学习(一)相关推荐

  1. 微信小程序学习Course 8 本地缓存API

    微信小程序学习Course 8 本地缓存API 本篇随笔主要介绍微信小程序本地缓存API函数,微信小程序可以在本地缓存一些关键词数据,每一条关键词对应一段字符串.微信小程序提供了以下API函数. 8. ...

  2. 三年程序学习之三:(失业了)

    老板的同学从广州过来的,然后不会写代码.曾经是学计算机硬件的.他过来主要是抓公司业务,公司想走正轨,想做站点建设外包工作.话说这人27和老板一样的年龄,当时就数落了他,为什么多年后你就成为了他的员工. ...

  3. 一周小程序学习 第1天

    2019独角兽企业重金招聘Python工程师标准>>> 一周小程序学习 第1天 今日正式开始小程序的学习! 对于刚上手的自学小白,技术选型是很重要的,这在一开始就决定了这条开发学习之 ...

  4. linux应用程序接收文件,Linux应用程序学习之文件编程

    Linux应用程序学习之文件系统调用函数编程 上一篇我们了解了Linux系统下函数库的设计方法,这一章我们就来学习一下linux系统下常用的文件操作函数,在进行系统文件操作函数介绍前,我们首先要明白一 ...

  5. 5.16-在线词识别程序学习(ASR+IAT)

    一些信息 6.bin文件夹是调试路径,里面文件的作用如下: msc.dll是WIN32平台程序必需的动态库: msc_x64.dll是x64平台程序必需的动态库: msc.cfg包含了配置信息,调试. ...

  6. 微信小程序js数组初始化_微信小程序学习Course 3-2 JS数组对象学习

    微信小程序学习Course 3-2 JS数组对象学习 本节主要介绍JS中的数组. 3-2.1 数组的声明 数组声明的方式多种,如下例.一般我们可以先创建一个空数组,然后再填充. var names = ...

  7. 小程序 pagescrollto_微信小程序学习笔记(三)-- 首页及详情页开发

    一.常用组件 在上一个章节中讲解了封装请求数据的模块,在此处请求轮播图的数据 1.首页轮播图数据的请求以及渲染 1.1 轮播图数据的请求 pages/home/home.js import 2 使用组 ...

  8. 外部中断实验 编写程序学习外部中断的电平触发方式。无中断时发光让发光二极管从左到右依次点亮,有外部中断请求时,4位数码管从0000开始加1显示(加到9999后复位为0000),同时蜂鸣器报警。

    编写程序学习外部中断的电平触发方式.无中断时发光让发光二极管从左到右依次点亮,有外部中断请求时,4位数码管从0000开始加1显示(加到9999后复位为0000),同时蜂鸣器报警. 程序: #inclu ...

  9. 单片机 c语言 宏程序,宏程序学习的几点心得.doc

    有关宏程序学习的几点心得 天长市职业教育中心 蒋春飞 HNC-21/22T为用户配备了强有力的类似于高级语言的宏程序功能,用户可以使用变量进行算术运算.逻辑运算和函数的混合运算,此外宏程序还提供了循环 ...

  10. C语言小案例_小程序学习(三)

    小程序学习--页面设置 案例一  float页面布局效果 1.案例的整体介绍 设计一个小程序,利用float布局来实现页面的布局效果.有两种效果分别是上左右下和上左中右下. 2.案例的代码详解 (1) ...

最新文章

  1. 转载《Data Guard Broker基础》
  2. linux下source insight安装以及打开
  3. linux 查看进程id对应的路径,Linux中怎么通过PID号找到对应的进程名及所在目录方法...
  4. python 字典操作
  5. SLAM: 单目视觉SLAM的方案分类《机器人手册》
  6. java 随机生成图,Java中的快速实值随机生成器
  7. 静态注册BroadcastReceiver的注销问题
  8. python提供的三种基本数据类型是()_python基础之基本数据类型
  9. 《Android深入透析》之界面
  10. 华为荣耀 4x 刷机体验 直奔 Android 6.0
  11. 工具推荐-根据IP地址精确定位经纬度(永久免费)
  12. LTE调制方式和编码速率
  13. JAVEWEB 过滤器Filter的实现
  14. LightOj 1336(Sigma Function)
  15. [关系图谱] 一.Gephi通过共现矩阵构建知网作者关系图谱
  16. 计算机类外文翻译论文,计算机专业毕业论文 外文翻译.doc
  17. 【IoT】产品设计:包装盒LOGO设计工艺
  18. 网课python程序设计答案_中国大学MOOCPython程序设计网课答案
  19. Predicting Semantic Map Representations from Images using Pyramid Occupancy Networks 翻译
  20. TCP局域网服务器简易搭建(eps-01s)

热门文章

  1. XTU 1268 Strange Optimization 2017年“嘉杰信息杯” 中国大学生程序设计竞赛全国邀请赛(湖南)
  2. JavaScript charCodeAt() 方法
  3. php 类似charcodeat,charCodeAt与AscW函数的区别说明
  4. 游戏玩家的福音:在 Ubuntu 上安装开源 VoIP 应用 Mumble
  5. [转] 移动信息网商业模式讨论会-文字实录
  6. 哲思沙龙第11期:回归社区
  7. 8. OpenCV--图像直方图 模板匹配
  8. 使用原生JS将html表格保存为excel
  9. 虎牙直播引发行业狂欢,哪些平台投资潜力十足?
  10. Pareto-Efficient Hybridization for Multi-Objective Recommender Systems