屏幕中有四个主要的逻辑流 (PBO,PAI POH,POV)

PROCESS BEFORE OUTPUT.       该事件在屏幕出来之前被触发

PROCESS AFTER INPUT.       该模块监听用户操作时间

PROCESS ON HELP-REQUEST.

FIELD FIELD_NAME MODULE HELP_MODULE.        "当用户查看帮助信息时(按下F1键)被触发,事件结束后将继续处理当前屏幕

PROCESS ON VALUE-REQUEST.

 FIELD FIELD_NAME MODULE F4_MODULE.             "当用户按下查询帮助按键时(或按下F4)被触发,事件结束后将继续处理当前屏幕。

http://www.mamicode.com/info-detail-1921783.html

在Screen显示之前,系统会自动将程序变量值放到屏幕字段中;在PAI事件中,系统会自动将屏幕字段的值更新到相应的程序变量。

在Screen Logic中我们还有POH和POV事件,所以有时需要调用函数DYNP_VALUES_READ来读取屏幕字段值。
 
比如:屏幕上有两个字段,NAME1 和 NAME2。当字段NAME2触发搜索帮助的时候,必须参照用户在NAME1中的录入值。由于PAI尚未被执行,屏幕字段NAME1的字符串值尚未更新到程序变量NAME1。
此时我们可以调用DYNP_VALUES_READ来实现。
 
DATA: dynpfields TYPE TABLE OF dynpread WITH HEADER LINE.

CLEAR: dynpfields, dynpfields[].
dynpfields-fieldname = 'NAME1'. "填入需要读值的字段名
APPEND dynpfields. CALL FUNCTION 'DYNP_VALUES_READ'
EXPORTING
dyname = sy-repid
dynumb = sy-dynnr
translate_to_upper = 'X'
TABLES
dynpfields = dynpfields
EXCEPTIONS
OTHERS = .
IF sy-subrc = .
READ TABLE dynpfields WITH KEY fieldname = 'NAME1'.
name1 = dynpfields-fieldvalue. "备注
ENDIF.

ABAP POH和POV事件中 获得屏幕字段的值的更多相关文章

  1. GridView控件RowDataBound事件中获取列字段值的几种途径

    前台: <asp:TemplateField HeaderText="充值总额|账号余额"> <ItemTemplate> <asp:Label ID ...

  2. GridView控件RowDataBound事件中获取列字段值的几种途径 !!!

    protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e) { if (e.Row.RowType == ...

  3. ADO.NET实体数据模型中关于数据库字段默认值的处理

    无论是Visual Studio 2010或者2013内置的ADO.NET实体数据模型都有一个小问题:数据库中有些字段已设置了默认值,但ADO.NET实体数据模型工具并不会自动进行设置. 这时需要手工 ...

  4. MySQL数据库中,将一个字段的值分割成多条数据显示

    本文主要记录如何在MySQL数据库中,将一个字符串分割成多条数据显示. 外键有时是以字符串的形式存储,例如 12,13,14 这种,如果以这种形式存储,则不能直接与其他表关联查询,此时就需要将该字段的 ...

  5. GridView控件RowDataBound事件中获取列字段途径

    今天不知道怎么回事怎么也找不到gridview列中的控件,关键是其为编辑时隐藏域中的控件,取值就很成问题了,网上搜了很到,找到这个比较经典的东东了,可能大家都知道,但很少对比整理到一起,有多种方法可以 ...

  6. oracle中的timestamp字段的值乱码问题修改

    我的解决方案: 直接新增一个系统变量: key值为:NLS_TIMESTAMP_FORMATvalue的值为:YYYY-MM-DD HH24:MI:SSFF6 其它解决方案: 在登录PLSQL之后,查 ...

  7. 在jsp中用一数组存储了数据库表中某一字段的值,然后在页面中输出其中的值。

    List<String> list = new ArrayList<String>();  String sql = "select userName from us ...

  8. 关于Java读取mysql中date类型字段默认值'0000-00-00'的问题

    今天在做项目过程中,查询一个表中数据时总碰到这个问题:      java.sql.SQLException:Value '0000-00-00' can not be represented as ...

  9. 如何查询表A中的某字段的值在表B中不存在?

    1.测试表创建,插入数据: create table a (id int, name )); create table b (id int); ,'a'); ,'b'); ,'c'); ,'d'); ...

随机推荐

  1. 团队作业8——第二次项目冲刺(Beta阶段)博客汇总

    一.冲刺计划安排 http://www.cnblogs.com/teamworkers/p/6875742.html 二.七天冲刺汇总 http://www.cnblogs.com/teamworke ...

  2. 201521123035《Java程序设计》第八周学习总结

    1. 本周学习总结 1.1 以你喜欢的方式(思维导图或其他)归纳总结集合与泛型相关内容. 1.2 选做:收集你认为有用的代码片段 //泛型方法,打印MyStack的所有元素的薪水,不管MyStack中 ...

  3. 201521123116 《java程序设计》第十三周学习总结

    1. 本周学习总结 以你喜欢的方式(思维导图.OneNote或其他)归纳总结多网络相关内容. 2. 书面作业 Q1. 网络基础 1.1 比较ping www.baidu.com与ping cec.jm ...

  4. oracle 删除外键约束 禁用约束 启用约束

    oracle 删除外键约束 禁用约束 启用约束 执行以下sql生成的语句即可 删除所有外键约束 Sql代码  select 'alter table '||table_name||' drop con ...

  5. firebug离线安装方法-拖入法

    这里介绍的是如何在Firefox中离线安装firebug插件. 1, 下载firebug离线包, 一般就是一个*.xpi文件; 2, 打开Firefox浏览器,直接将*.xpi文件拖入Firefox浏 ...

  6. JSP-页面跳转大全

    转自:http://blog.sina.com.cn/s/blog_8c38b8b701013zzz.html (1). forward()方法 使用到javax.servlet.RequestDis ...

  7. showfm练习小项目总结

    Showfm 项目总结: 有一个主页面, 有一个service,启动和结束一般在主页面里面完成. OnCreate启动service OnDestroy关闭service EventBus 信息传递 ...

  8. 异常处理第一讲(SEH),筛选器异常,以及__asm的扩展,寄存器注入简介

    异常处理第一讲(SSH),筛选器异常,以及__asm的扩展 博客园IBinary原创  博客连接:http://www.cnblogs.com/iBinary/ 转载请注明出处,谢谢 一丶__Asm的 ...

  9. java实现excel和数据的交互

    1. 环境要求 本文环境为: 数据库为oracle,jdk为jdk7,依赖jar包为ojdbc6-11.2.0.4.0.jar+poi-3.14.jar 2.POI 使用 1. 建立工作空间 2. 获 ...

  10. Flex布局介绍

    Flex 是 Flexible Box 的缩写,意为"弹性布局",用来为盒状模型提供最大的灵活性 任何一个容器都可以指定为 Flex 布局. .box{ display: -web ...