SAP应用界面开发:2)PARAMETERS对象

简介: 1.PARAMETERS对象的基本语法及定义      PARAMETERS可以参照数据字典具体字段或者自定义数据类型创建文本输入域以及单选/复选框等。与SELECT-OPTIONS不同的是,PARAMETERS只能创建一个单一的输入域且最多只能输入一行,其对象的命名长度不能超过8位。

      1.PARAMETERS对象的基本语法及定义
     
PARAMETERS可以参照数据字典具体字段或者自定义数据类型创建文本输入域以及单选/复选框等。与SELECT-OPTIONS不同的是,PARAMETERS只能创建一个单一的输入域且最多只能输入一行,其对象的命名长度不能超过8位。显示长度参照数据对象变化。PARAMETERS定义后不会产生内表,可作为变量在程序中运用,基本语法如下:
      PARAMETERS PNAME(不能超过8位)....
      [For Example]

   DATA AGE TYPE I.
   PARAMETERS USER_AGE LIKE AGE.

   DATA NICKNAME TYPE LENGTH 60.  "长度为60  表单域会相对于这个长度
   PARAMETERS NAMEA LIKE NICKNAME.
   *运行界面如下:

PARAMETERS:MATNRR LIKE MARA-MATNR.   "文本域
PARAMETERS:TYPE AS CHECKBOX.         "多选框
PARAMETERS:P1 RADIOBUTTON GROUP GRP1,"单选域
                     P2 RADIOBUTTON GROUP GRP1 DEFAULT 'X'"默认选中 ”X“
                     P3 RADIOBUTTON GROUP GRP1.

*运行界面如下:

 2.PARAMETERS常用的扩展语法
 
...DEFAULT f:定义默认值。
 ...TYPE type:参照某一类型对象定义PARAMETERS。
 ...DECIMALS dec:定义小数位,对输入参数自动格式化,该语法只对P类型有效(参数某一类型定义关键字TYPE)。
 ...LIKE g:參照某一字典对象定义PARAMETERS。
 ...MEMORY ID pi:将PARAMETERS存储在SAP内存,参数名长度不能超过三位
 ...NO-DISPLAY:将PARAMETERS设置为隐藏,不会的屏幕上输出。
 ...LOWER CASE:输入值中不允许输入小写字符,否则会自动转换为大写。
 ...OBLIGATORY:限制该PARAMETERS为必填,否则会提示输入。
 ...AS CHECKBOX:创建CHECKBOX对象。
 ...RADIO BUTTON GROUP radi:创建(RADIO)单选框。
 ...VISIBLE LENGTH vlen:定义显示长度。
 ...USER-COMMAND ucom:为创建对象分配对象名,该值保存在内表中可供其它对象操作。
 ...AS LISTBOX VISIBLE LENGTH vlen:创建一个下拉框,并指定长度。
 以下示例展示如何对下拉框填充数据。
 [For Example]

*定义一个下拉框对象,其可视数据长度一般比输出数据长度大2用于放置下拉图标
PARAMETERS:P_LANG(20) AS LISTBOX VISIBLE LENGTH 22.
*该变量用于记录下拉列表数值是否初始化,否则每次屏幕初始化都会重新加载重复数据
DATA:INIT.

AT SELECTION-SCREEN OUTPUT.
   PERFORM SETLIST.

*子程序用于加载下拉框的数据
FORM SETLIST.
  TYPE-POOLS VRM.
  DATA MYVALUE TYPE VRM_VALUES WITH HEADER LINE.
  
*对内表加载值
MYVALUE-KEY = 'CHINESE'. MYVALUE-TEXT = '中国'APPEND MYVALUE.

MYVALUE-KEY = 'AMERICAN'. MYVALUE-TEXT = '美国'APPEND MYVALUE.

MYVALUE-KEY = 'ENGLISH'. MYVALUE-TEXT = '英国'APPEND MYVALUE.

MYVALUE-KEY = 'FRENCH'. MYVALUE-TEXT = '法国'APPEND MYVALUE.

IF INIT IS INITIAL.
    CALL FUNCTION 'VRM_SET_VALUES' "调用函数对下拉框对象传递数据
       EXPORTING
         ID 'P_LANG' "下拉框对象名
         VALUES = MYVALUE[]  "下拉框中加载的数据
       EXCEPTIONS
         ID_ILLEGAL_NAME = 1
         OTHERS 2.
ENDIF.

INIT = 'X'"记录初始化状态

ENDFORM.


代码执行结果界面如下:

 

引用字典对象 TYPE-POOLS VRM 用于保存列表对象,也可自定义一内表,如
DATA:BEGIN OF VALUES OCCURS 0,
         KEY(40) TYPE C,
         TEXT(40) TYPE C,
END OF VALUES.

 

目录
相关文章
|
4月前
|
Linux C++ Windows
【Azure 应用服务】Azure App Service(Windows)环境中如何让.NET应用调用SAP NetWeaver RFC函数
【Azure 应用服务】Azure App Service(Windows)环境中如何让.NET应用调用SAP NetWeaver RFC函数
【Azure 应用服务】Azure App Service(Windows)环境中如何让.NET应用调用SAP NetWeaver RFC函数
|
4月前
数字化核心构建问题之SAP为应用软件扎根客户打基础如何解决
数字化核心构建问题之SAP为应用软件扎根客户打基础如何解决
29 0
|
SQL 设计模式 前端开发
【置顶】SAP ABAP开发实战——从入门到精通系列目录
本文章为SAP ABAP开发实战——从入门到精通系列的目录以及关于该教程的后续写作计划表
1615 0
【置顶】SAP ABAP开发实战——从入门到精通系列目录
SAP 金额转中文大写自开发函数
关于凭证打印时需将金额转换成中文大写
120 0
|
BI
SAP ABAP在线预览文档对象的开发实现
应用场景:有些定制化开发(报表/功能增强等)完成之后,客户需要将其操作手册或者相关文档放在某个报表的初始画面,供实际操作者在线查阅,当然这个功能也同样类似于模板的下载,这里就以在线预览(直接打开)为例进行说明。
225 0
SAP DALOG开发-代码触发回车事件
对于指定输入框:触发屏幕回车事件
239 0
|
开发者
SAP MM/FI_运费处理方式
常见的采购运费处理方式
SAP MM 途损处理方式
通常客户采购业务需求提到货物运输有损耗,需要针对此业务给出合理方案输出,下面笔者针对此类业务分析下各种实现方案的可行性!