公众号:SAP Technical
本文作者:matinal
 

前言部分

大家可以关注我的公众号,公众号里的排版更好,阅读更舒适。

正文部分


用这两个函数Function DYNP_VALUES_READ, DYNP_VALUES_UPDATE
参考代码:
MODULE ztmdno_dr_help INPUT.
DATA:
l_lifnr TYPE ztmt018-lifnr,
l_zvehtab TYPE ztmt018-zvehtab,
l_zvehid TYPE ztmt018-zvehid. CLEAR: gt_dynfields,gh_dynfields,it_return[],it_ztmdno[],ih_ztmdno. gh_dynfields-fieldname = 'PRE_DATA-LIFNR'.
APPEND gh_dynfields TO gt_dynfields.
CLEAR gh_dynfields.
gh_dynfields-fieldname = 'PRE_DATA-ZVEHTAB'.
APPEND gh_dynfields TO gt_dynfields.
----------------------获取屏幕的值
CALL FUNCTION 'DYNP_VALUES_READ'
EXPORTING
dyname = sy-repid
dynumb = sy-dynnr
translate_to_upper = 'X'
TABLES
dynpfields = gt_dynfields
EXCEPTIONS
invalid_abapworkarea =
invalid_dynprofield =
invalid_dynproname =
invalid_dynpronummer =
invalid_request =
no_fielddescription =
invalid_parameter =
undefind_error =
double_conversion =
stepl_not_found =
OTHERS = .
IF sy-subrc <> .
MESSAGE '函数DYNP_VALUES_READ,未能取值' TYPE 'E'.
EXIT.
ENDIF.
READ TABLE gt_dynfields INTO gh_dynfields WITH KEY fieldname = 'PRE_DATA-LIFNR'.
IF sy-subrc = .
l_lifnr = gh_dynfields-fieldvalue.
ENDIF. READ TABLE gt_dynfields INTO gh_dynfields WITH KEY fieldname = 'PRE_DATA-ZVEHTAB'.
IF sy-subrc = .
IF gh_dynfields-fieldvalue IS INITIAL.
MESSAGE '请先输入车牌号' TYPE 'I'.
EXIT.
ENDIF.
l_zvehtab = gh_dynfields-fieldvalue.
ENDIF. SELECT SINGLE zvehid
INTO l_zvehid
FROM ztmt018
WHERE lifnr = l_lifnr
AND zvehtab = l_zvehtab. SELECT ztmdno
ztmdname
ztmmob
zvehid
INTO TABLE it_ztmdno
FROM ztmt025
WHERE zvehid = l_zvehid.
IF it_ztmdno[] IS NOT INITIAL.
CALL FUNCTION 'F4IF_INT_TABLE_VALUE_REQUEST'
EXPORTING
retfield = 'ZTMDNO_DR'
dynpprog = sy-repid
dynpnr = sy-dynnr
value_org = 'S'
TABLES
value_tab = it_ztmdno[]
return_tab = it_return[]
EXCEPTIONS
parameter_error =
no_values_found =
OTHERS = .
IF sy-subrc <> .
MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
ENDIF. READ TABLE it_return INDEX .
IF sy-subrc = .
pre_data-ztmdno_dr = it_return-fieldval.
READ TABLE it_ztmdno INTO ih_ztmdno WITH KEY zvehid = l_zvehid.
IF sy-subrc = .
CLEAR gh_dynfields.
gh_dynfields-fieldname = 'PRE_DATA-ZTMDNAME_DR'.
gh_dynfields-fieldvalue = ih_ztmdno-ztmdname_dr.
APPEND gh_dynfields TO gt_dynfields.
CLEAR gh_dynfields.
gh_dynfields-fieldname = 'PRE_DATA-ZTMMOB'.
gh_dynfields-fieldvalue = ih_ztmdno-ztmmob.
APPEND gh_dynfields TO gt_dynfields.
---------------------更新屏幕的值
CALL FUNCTION 'DYNP_VALUES_UPDATE'
EXPORTING
dyname = sy-repid
dynumb = sy-dynnr
TABLES
dynpfields = gt_dynfields
EXCEPTIONS
invalid_abapworkarea =
invalid_dynprofield =
invalid_dynproname =
invalid_dynpronummer =
invalid_request =
no_fielddescription =
undefind_error =
OTHERS = .
IF sy-subrc <> .
ENDIF.
ENDIF.
ENDIF.
ENDIF.
ENDMODULE. " ZTMDNO_DR_HELP INPUT ​

【ABAP系列】SAP ABAP DYNP_VALUES_UPDATE 更新屏幕字段的函数及用法的更多相关文章

  1. 【ABAP系列】ABAP CL_ABAP_CONV_IN_CE

    公众号:SAP Technical 本文作者:matinal 原文出处:http://www.cnblogs.com/SAPmatinal/ 原文链接:[ABAP系列]ABAP CL_ABAP_CON ...

  2. SAP物料主数据的屏幕字段控制,必输,隐藏

    http://www.cnblogs.com/275147378abc/p/5699077.html 1.事务码MM01,把物料组设为选填字段. 2.找到物料组的屏幕字段. 3.在后台根据屏幕字段找到 ...

  3. 【FICO系列】SAP ABAP&FI FI/CO接口:待更新的不一致的FI/CO凭证标题数据

    公众号:SAP Technical 本文作者:matinal 原文出处:http://www.cnblogs.com/SAPmatinal/ 原文链接:[FICO系列]SAP ABAP&FI ...

  4. 【ABAP系列】SAP abap dialog screen屏幕参数简介

    公众号:SAP Technical 本文作者:matinal 原文出处:http://www.cnblogs.com/SAPmatinal/ 原文链接:[ABAP系列]SAP abap dialog ...

  5. 【MM系列】SAP ABAP 编辑字段出现:对象编辑中的错误

    公众号:SAP Technical 本文作者:matinal 原文出处:http://www.cnblogs.com/SAPmatinal/ 原文链接:[ABAP系列]SAP ABAP 编辑字段出现: ...

  6. 【ABAP系列】SAP 使用特殊的技术更新数据库(ABAP)

    公众号:SAP Technical 本文作者:matinal 原文出处:http://www.cnblogs.com/SAPmatinal/ 原文链接:[ABAP系列]SAP 使用特殊的技术更新数据库 ...

  7. 【ABAP系列】SAP ABAP WRITE字段隐藏的方法

    公众号:SAP Technical 本文作者:matinal 原文出处:http://www.cnblogs.com/SAPmatinal/ 原文链接:[ABAP系列]SAP ABAP 字段隐藏的方法 ...

  8. 【ABAP系列】SAP ABAP选择屏幕(SELECTION SCREEN)事件解析

    公众号:SAP Technical 本文作者:matinal 原文出处:http://www.cnblogs.com/SAPmatinal/ 原文链接:[ABAP系列]SAP ABAP选择屏幕(SEL ...

  9. 【ABAP系列】SAP smartforms金额字段产生空格,除去空格的方法

    公众号:SAP Technical 本文作者:matinal 原文出处:http://www.cnblogs.com/SAPmatinal/ 原文链接:[ABAP系列]SAP smartforms金额 ...

随机推荐

  1. 007-SaltStack之修改salt-minion id

    1. 需求背景 之前使用saltstack添加的主机默认使用了hostname作为salt-minion id,而主机名如果没有做规范和规划,是比较难区分属于什么业务或者机器的.我们需要修改salt- ...

  2. 最简单的Android项目

    这是我在windows环境下,试验过的最简单Android项目,只用记事本和命令行即可完成. 环境准备 开发环境需要Java SDK(官网下载),Android SDK(官网下载). 首先安装Java ...

  3. 格兰杰因果 Granger causality

    格兰杰因果关系(Granger causality )是基于预测的因果关系统计概念.根据格兰杰因果关系,如果信号X1“格兰杰Causes”(或“G-Causes”)信号X2,则X1的过去值应该包含有助 ...

  4. Codeforces 911 三循环数覆盖问题 逆序对数结论题 栈操作模拟

    A #include <bits/stdc++.h> #define PI acos(-1.0) #define mem(a,b) memset((a),b,sizeof(a)) #def ...

  5. Sublime Text2 常用快捷键总结

    Ctrl+Tab 当前窗口中的标签页切换 Ctrl+Shift+D 复制光标所在整行,插入在该行之前 Ctrl+Shift+K 删除整行 Ctrl+Shift+/ 注释已选择内容 Ctrl+Shift ...

  6. Ubuntu安装DroidCamX网络摄像头

    1.安装依赖项 sudo apt-get install gcc make linux-headers-`uname -r` 2.安装 cd /tmp/ bits=`getconf LONG_BIT` ...

  7. 在Rails中最方便集成使用Bootstrap的方式

    创建项目 rails new BootstrapProject 创建模型 rails g scaffold xxx --skip-stylesheets 运行迁移 rake db:migrate -- ...

  8. shell练习--PAT题目1008:数组元素循环右移问题 (失败案例,运行超时)

    一个数组A中存有N(>)个整数,在不允许使用另外数组的前提下,将每个整数循环向右移M(≥)个位置,即将A中的数据由(A​0​​A​1​​⋯A​N−1​​)变换为(A​N−M​​⋯A​N−1​​A ...

  9. GO语言学习笔记5-defer的使用

    1. 什么是defer defer是Go语言提供的一种用于注册延迟调用的机制:让函数或语句可以在当前函数执行完毕后(包括通过return正常结束或者panic导致的异常结束)执行. 2. defer的 ...

  10. Redis实战(十五)Redis实现接口调用频率限制

    序言 登录次数 资料