屏幕事件控制器

SAP程序的执行时通过事件来驱动的

1.INITIALIZATION事件,这个事件是在屏幕未显示之前执行,对程序设置值及屏幕元素进行初始化赋值

2.START-OF-SELECTION事件

该事件是单击执行按钮时触发的

3.END-OF-SELCTION事件

该事件应用于所有事件数据处理完成,即START-OF-SELECTION事件执行完成,但是输出屏幕还未显示之前。在实际开发中,主要应用于一直执行结果的检验等,其输出数据叠加于同一输出屏幕。

下面说说AT SELECTION-SCREEN事件

1.AT SELECTION-SCREEN OUT

在程序执行前会优先检查该事件下的所有代码,可以用于对屏幕输入值得校验,当回执错误信息时,程序会终止并退出。


 1 REPORT ztest_sum.
2
3 TABLES:mara,spfli.
4 *TABLES sscrfields. "引用屏幕字段属性
5
6 PARAMETERS p_carr TYPE spfli-carrid.
7
8 AT SELECTION-SCREEN OUTPUT.
9 IF p_carr IS INITIAL.
10 MESSAGE ‘please enter a value‘ TYPE ‘I‘.
11 ENDIF.

以上的检测不加OUTPUT也是可以的,但是加了OUTPUT程序在选择屏幕显示前先执行了AT SELECTION-SCREEN
OUTPUT下的检查代码,如果不加的话程序在屏幕显示前是不会检查的,需要点击执行按钮后才会去执行该段代码

2.AT
SELECTION-SCREEN ON{para|selcrit}

可以实现程序执行前对指定输入域数据的检查,执行该事件时,其他输入域的输入状态会被锁定,如下所示


REPORT ztest_sum.

TABLES:mara,spfli.
*TABLES sscrfields. "引用屏幕字段属性

PARAMETERS p_carr TYPE spfli-carrid.
PARAMETERS p_carr2 TYPE spfli-carrid.

AT SELECTION-SCREEN ON p_carr.
IF p_carr IS INITIAL.
MESSAGE ‘please enter a value1‘ TYPE ‘E‘.
ENDIF.

AT SELECTION-SCREEN ON p_carr2.
IF p_carr IS INITIAL.
MESSAGE ‘please enter a value2‘ TYPE ‘E‘.
ENDIF.

3.AT SELECTION-SCREEN

该事件和前两个事件类似但是执行顺序的优先级低于前两个,OUTPUT最先执行 再者就是 ON  了

4.AT SELECTION-SCREEN ON END OF (selcrit)

该事件仅仅针对SELECT-OPTIONS所定义的输入域,并且该输入域对象在进行多行数据输入操作时将触发该事件。

5.AT SELECTION-SCREEN ON BLOCK(block)

该事件应用于包含线结构的屏幕中,非指定框线的所有输入域对象输入状态都将被锁定

6.AT SELECTION-SCREEN ON RADIOBUTTON GROUP(radi)

该事件针对屏幕中的单选按钮组进行控制,执行时,非指定按钮组的输入状态都将被锁定

7.AT SELECTION-SCREEN ON {HELP-REQUEST|VALUE-REQUEST}FOR
{para|selrit-low|selcrit-high}

用于实现屏幕输入域的自定义F1和F4帮助

屏幕事件控制器

时间: 2024-11-08 17:12:55

屏幕事件控制器的相关文章

《零死角玩转STM32》-17-EXTI外部中断/事件控制器

/* * 本文中的相关图片来自火哥的教程,只作为随笔记录,无侵权之意 * 21:25:46, 2017-04-08 */ EXTI:外部中断/事件控制器.STM32F429共有23根,其中EXTI0~EXTI15,分别对应GPIO中的PX0 ~ PX15,另外7根线有如下用途: (中间省略了EXTI1 ~ EXTI15) EXTI功能框图如下所示: 按照图中的序号标识,可以清晰的看出外部GPIO引脚上的电平变化是如何传递到内核,即GPIO -> EXTI -> NVIC,并触发相应的中断/事件

第17章 EXTI—外部中断/事件控制器

上一章节我们已经详细介绍了NVIC,对STM32F7xx中断管理系统有个全局的了解,我们这章的内容是NVIC的实例应用,也是STM32F7xx控制器非常重要的一个资源.学习本章时,配合<STM32F76xxx参考手册>系统配置控制器以及中断和事件章节一起阅读,效果会更佳,特别是涉及到寄存器说明的部分. 特别说明,本书内容是以STM32F767xx系列控制器资源讲解. 17.1  EXTI简介 外部中断/事件控制器(EXTI)管理了控制器的25个中断/事件线.每个中断/事件线都对应有一个边沿检测

屏幕事件监听

1 oLl.addEventListener("touchstart",oLlScroll,false); 2 3 function oLlScroll(ev) { 4 var touch = ev.touches[0], //第一次触摸点 5 startY = touch.clientY, 6 speedY = 0, 7 maxTop = oLl.offsetHeight - oLl.parentNode.offsetHeight, 8 percent = 0; 9 10 oLl.a

屏幕元素属性的控制盒屏幕事件的中止

1.屏幕元素属性的控制 SCREEN 是一个系统标准结构体,其常用的属性及参数如下: name:屏幕对象的名称 input:0表示不可输入:1表示可以输入,默认为1 invisible:0表示可见,1表示不可见,若需要使其不可见必须先使其INPUT为属性为0不可输入,再设置invisible属性为1. 2.屏幕的中止 EXIT中止某一事件模块,如start-of-selection但是不影响其他事件的执行. STOP:强制中止所有事件 3.REJECT 用于逻辑数据库中,因为逻辑数据库是通过GE

屏幕事件穿透和拦截分析

事件穿透和拦截机制同样并不是deviceone平台独有的,这个机制几乎是所有和UI相关的技术都共有,了解一下非常有必要.我们会以一个简单的例子来描述事件处理机制运行的过程. 屏幕事件处理机制 我们先假定是手机屏幕显示一个UI,里面包括了4个View,这些View都是树状结构,父View下包含一个或多个子View,其中最上层的View和屏幕大小是一致的,参考下图: 我们可以看到view1有一个子节点view2,view2包含2个子节点view3和view4. 假如我们点击屏幕一个位置,会产生一个事

each处理一维数组二维数组和JS改变屏幕事件

改变屏幕大小事件 window.onresize=function(){ var w=$(window).width(); if((w<1189)){ $('.one').hide(); } } each处理一维数组 $.each(arr,function(i,val)){ alert(i);alert(val) } each处理二维数组 $.each(arr2,function(i,item){ alert(i)输出二维数组有几个数组元素 alert(item) 将输出每一个数组 }) var

javascript判断移动应用手势滑动屏幕方向

方案思路: 1.滑动屏幕事件使用HTML5 的 touchstart 滑动开始事件和 touchend 滑动结束事件. 2.方向的判断,以起点做平面坐标系,与终点连线做直线,直线与x正半轴计算角度:我们以45度角为方向分割线,如:只要滑动角度大于等于45度且小于135度,则判断它方向为向上滑. 3.使用Math.atan2()来计算起点与终点形成的直线角度. 4.仔细对比标准坐标系与屏幕坐标系,我们发现,标准坐标系,上半轴为负值,要实现转换,只需要调换Y坐标起点与终于位置即可. 代码实现: [网

列表屏幕(List Screen)

声明:原创作品,转载时请注明文章来自SAP师太技术博客:www.cnblogs.com/jiangzhengjun,并以超链接形式标明文章原始出处,否则将追究法律责任!原文链接:http://www.cnblogs.com/jiangzhengjun/p/4292407.html 列表屏幕(List Screen). 205 生成列表屏幕... 205 复杂LIST. 206 标准LIST. 206 standard page header. 206 自定义LIST. 207 自定义Page H

屏幕 Dynpro

声明:原创作品,转载时请注明文章来自SAP师太技术博客:www.cnblogs.com/jiangzhengjun,并以超链接形式标明文章原始出处,否则将追究法律责任!原文链接:http://www.cnblogs.com/jiangzhengjun/p/4292250.html 对话屏幕Dynpro(SE51). 11 屏幕元素... 11 屏幕属性... 11 PAI事件的触发.屏幕元素Function Code设置... 12 屏幕流逻辑Screen Flow Logic. 12 对话屏幕