select option是方便用户和数据处理的,就是丑了点。。。

前面使用的input直接做查询条件有哥弊端,就是查询的时候需要判断字段是否有选择条件,然后要将选择条件做成range table。。。有点麻烦

1.select options 组件引入WDA程序

保存,激活。

2.将组件加入使用的视图中

双击视图,选择属性页签,在使用组件表格中点击创建,将组件对应的两个列表加进来

3.在视图的INIT中,初始化SELECT OPTIONS

3.1在视图的Attributes页签中,添加组件对象

GD_HANDLE   typr ref to IF_WD_SELECT_OPTIONS.

3.2在init中初始化

DATA:LO_CP_USAGE  TYPE REF TO IF_WD_COMPONENT_USAGE,
LO_SELECT_OP TYPE REF TO IWCI_WDR_SELECT_OPTIONS,
LT_RANGE TYPE REF TO DATA. "get the component usage
LO_CP_USAGE = WD_THIS->WD_CPUSE_SELECT_OPTION( ).
IF LO_CP_USAGE->HAS_ACTIVE_COMPONENT( ) IS INITIAL.
LO_CP_USAGE->CREATE_COMPONENT( ).
ENDIF.
"get the select option usage
LO_SELECT_OP = WD_THIS->WD_CPIFC_SELECT_OPTION( ). "init the select option
WD_THIS->GD_HANDLE = LO_SELECT_OP->INIT_SELECTION_SCREEN( ).
WD_THIS->GD_HANDLE->SET_GLOBAL_OPTIONS(
I_DISPLAY_BTN_CANCEL = ABAP_FALSE
I_DISPLAY_BTN_CHECK = ABAP_FALSE
I_DISPLAY_BTN_RESET = ABAP_FALSE
I_DISPLAY_BTN_EXECUTE = ABAP_FALSE ).
"CREATE ONE RANGE TABLE
* LT_RANGE = WD_THIS->GGD_HANDLE->CREATE_RANGE_TABLE( ).
CALL METHOD WD_THIS->GD_HANDLE->CREATE_RANGE_TABLE
EXPORTING
I_TYPENAME = 'BU_PARTNER'
RECEIVING
RT_RANGE_TABLE = WD_THIS->RANGE. "LT_RANGE.
CALL METHOD WD_THIS->GD_HANDLE->ADD_SELECTION_FIELD
EXPORTING
I_ID = 'PARTNER'
* I_WITHIN_BLOCK = MC_ID_MAIN_BLOCK
I_DESCRIPTION = 'Partner'
* I_IS_AUTO_DESCRIPTION = ABAP_TRUE
IT_RESULT = WD_THIS->RANGE "LT_RANGE
* I_OBLIGATORY = ABAP_FALSE "必输
* I_COMPLEX_RESTRICTIONS =
* I_USE_COMPLEX_RESTRICTION = ABAP_FALSE
* I_NO_COMPLEX_RESTRICTIONS = ABAP_FALSE
* I_VALUE_HELP_TYPE = IF_WD_VALUE_HELP_HANDLER=>CO_PREFIX_NONE
* I_VALUE_HELP_ID =
* I_VALUE_HELP_MODE =
* I_VALUE_HELP_STRUCTURE =
* I_VALUE_HELP_STRUCTURE_FIELD =
* I_HELP_REQUEST_HANDLER =
* I_LOWER_CASE =
* I_MEMORY_ID =
* I_NO_EXTENSION = ABAP_FALSE
* I_NO_INTERVALS = ABAP_FALSE
* I_AS_CHECKBOX = ABAP_FALSE
* I_AS_DROPDOWN = ABAP_FALSE
* IT_VALUE_SET =
* I_READ_ONLY = ABAP_FALSE
* I_DONT_CARE_VALUE =
* I_EXPLANATION =
* I_TOOLTIP =
* I_IS_NULLABLE = ABAP_TRUE
* I_FORMAT_PROPERTIES =
* I_SUGGEST_VALUES =
* I_SUGGEST_FILTER_METHOD =
.

效果:

4.在查询得时候取值(其他代码已删除,仅取得RANGE table得代码)

METHOD ONACTIONSEARCH .
DATA:RT_RANGE TYPE REF TO DATA.
FIELD-SYMBOLS:<FS> TYPE TABLE. RT_RANGE = WD_THIS->GD_HANDLE->GET_RANGE_TABLE_OF_SEL_FIELD( I_ID = 'PARTNER' )."此处ID对应上面INIT中的ID
ASSIGN RT_RANGE->* TO <FS>.
ENDMETHOD.

5.在窗口中将SELECT-OPTION组件嵌套视图

WDA基础四:Select-option的使用的更多相关文章

  1. WDA 新SELECT OPTION

    感谢肖总的提示,不然还不知道wda的新select option... 使用前提:SE24类:CL_WDR_SELECT_OPTIONS_20 核对了多个版本,ERP系统版本要S4 1701往上,CR ...

  2. WDA基础十八:Select option配置

    为了省代码...为了方便管理WDA的查询条件... 首先建配置表: 说明: 上面的KEY基本都是维护的维度,可以根据销售组织,根据用户组,根据组件,根据SELECT OPTION的不同...等等,可以 ...

  3. SQL语法基础之SELECT

    SQL语法基础之SELECT 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.SELECT查看帮助信息 1>.查看SELECT命令的帮助信息 mysql> ? SEL ...

  4. jquery获得select option的值 和对select option的操作

    jQuery获取Select元素,并选择的Text和Value: 1. $("#select_id").change(function(){//code...});   //为Se ...

  5. mysql基础篇 - SELECT 语句详解

    基础篇 - SELECT 语句详解         SELECT语句详解 一.实验简介 SQL 中最常用的 SELECT 语句,用来在表中选取数据,本节实验中将通过一系列的动手操作详细学习 SELEC ...

  6. WDA基础十二:FREE PROGRAM SH (WDA TREE)

    一个需要用TREE展示搜索帮助的需求: 1.创建WDA程序:ZCATEGORY 2.Component Controller中添加节点: (说明,此节点仅在搜索帮助程序中使用,可以不用interfac ...

  7. WDA基础十:OVS搜索帮助的使用

    对于WDA来说,常用的搜索帮助有OVS,标准SH,Interface view等.今天来说说两种常用的OVS的使用: 一:普通字段,表字段的搜索帮助(在创建节点的时候指定搜索帮助OVS,或者后面加上去 ...

  8. WDA基础五:ALV组件的使用

    说明,因为ALV的功能比TABLE强大,所以在很多时候都习惯性的选择ALV显示. ALV是WDA的组件,封装好的,和SELECT OPTION一样.所以使用的方法一般就是:引入组件,初始化组件,数据绑 ...

  9. Django基础四之测试环境和ORM查询

    Django基础四之测试环境和ORM查询 目录 Django基础四之测试环境和ORM查询 1. 搭建测试环境 1.1 测试环境搭建方法: 1.2 使用测试环境对数据库进行CURD 1.3 返回Quer ...

随机推荐

  1. 《WEB渗透一.信息收集》

    一.操作系统 Windows服务器  和 Linux服务器. 1.大小写敏感 Windows大小写不敏感 , Linux大小写敏感 如    www.xxxx.com/index.php   和  w ...

  2. pgAdmin的数据导入之CSV

    在向数据库批量导入数据时,可以参考此过程 1.对于现有的Excel文件,首先应另存为 .csv文件,记住分割符(逗号分割),在后边导入用到. 2.用记事本打开保存后的csv文件,以utf-8格式另存为 ...

  3. CommandLineParser命令行解析类

    目的:方便用户在命令行使用过程中减少工作量 以前版本没这个类时,如果要运行带参数的.exe,必须在命令行中输入文件路径以及各种参数,并且输入的参数格式要与代码中的if语句判断内容格式一样,一不小心就输 ...

  4. 用Qemu模拟vexpress-a9 --- 配置 qemu 的网络功能

    转载:http://wiki.sylixos.com/index.php/Linux%E7%8E%AF%E5%A2%83%E5%BC%80%E5%8F%91%E6%8C%87%E5%8D%97 环境介 ...

  5. elastic-job的原理简介和使用

    转载:http://blog.csdn.net/fanfan_v5/article/details/61310045 elastic-job是当当开源的一款非常好用的作业框架,在这之前,我们开发定时任 ...

  6. 每天一个小程序—0014题(txt 转 Excel)

    基础知识:Excel文件的后缀有xls和xlsx,前者是针对2003版本的,2007及其之后的版本是xlsx. 在python中对于这两种不同后缀的文件有不同的库来处理,对于xls用wlrd.xlwt ...

  7. git项目,VSCode显示不同颜色块的含义

    一. 概念 代码里的左侧颜色标识: 红色,未加入版本控制; (刚clone到本地) 绿色,已经加入版本控制暂未提交; (新增部分) 蓝色,加入版本控制,已提交,有改动: (修改部分) 白色,加入版本控 ...

  8. Cross Validation(交叉验证)

    交叉验证(Cross Validation)方法思想 Cross Validation一下简称CV.CV是用来验证分类器性能的一种统计方法. 思想:将原始数据(dataset)进行分组,一部分作为训练 ...

  9. nginx 启动报错 1113: No mapping for the Unicode character exists in the target multi-byte code

    failed (1113: No mapping for the Unicode character exists in the target multi-byte code page) 因为路径有中 ...

  10. tf一些函数

    1. tf.reduce_mean(a) : 求平均值 2. tf.truncated_normal([3,2],stddev=0.1) : 从正态分布中输出随机值,标准差为0,1,构造矩阵为3*2的 ...