需求,输入航线代码和航线编号区间,查询记录存在表中显示,并不是alv显示

1、使用组件WDR_SELECT_OPTIONS.

2.在组件控制器中加入以下组件

3、在视图属性中也添加该组件

4、创建节点

5、控件设计

6、窗口下的视图中嵌套这个视图

7、设计视图初始化方法WDDOINIT

method WDDOINIT .
DATA lo_cmp_usage TYPE REF TO if_wd_component_usage.
lo_cmp_usage = wd_this->wd_cpuse_select_options( ).
IF lo_cmp_usage->has_active_component( ) IS INITIAL.
lo_cmp_usage->create_component( ).
ELSE.
EXIT.
ENDIF.
*---选择屏幕的引用
DATA lo_interfacecontroller TYPE REF TO iwci_wdr_select_options .
lo_interfacecontroller = wd_this->wd_cpifc_select_options( ).
"修改SELECT_OPTIONS
wd_this->m_handler = lo_interfacecontroller->init_selection_screen( ).
*---设置全局信息
CALL METHOD wd_this->m_handler->set_global_options
EXPORTING
i_display_btn_cancel = abap_false
i_display_btn_check = abap_false
i_display_btn_reset = abap_false
i_display_btn_execute = abap_false. DATA: lr_field TYPE REF TO data. DEFINE mcr_sel.
free lr_field.
lr_field = wd_this->m_handler->create_range_table( & ).
wd_this->m_handler->add_selection_field(
i_id = & "字段参考类型
i_description = & "描述
it_result = lr_field
i_read_only = & ).
END-OF-DEFINITION. mcr_sel 'S_CARR_ID' '航线代码' abap_false.
mcr_sel 'S_CONN_ID' '航班编号' abap_false. endmethod.

8、设计按钮SEARCH事件方法

method ONACTIONSEARCH .
*获取SELECT OPTIONS
FIELD-SYMBOLS: <fs_CARRID> TYPE ANY TABLE,
<fs_CONNID> TYPE ANY TABLE.
DATA lv_CARRID TYPE S_CARR_ID . "屏幕上输入的
DATA lv_CONNID TYPE S_CONN_ID . "屏幕上输入的
DATA:lo_data TYPE REF TO data.
FREE lo_data.
lo_data = wd_this->m_handler->get_range_table_of_sel_field( 'S_CARR_ID' ).
ASSIGN lo_data->* TO <fs_CARRID>.
FREE lo_data.
lo_data = wd_this->m_handler->get_range_table_of_sel_field( 'S_CONN_ID' ).
ASSIGN lo_data->* TO <fs_CONNID>. *数据绑定
DATA lo_nd_sflight TYPE REF TO if_wd_context_node. DATA lo_el_sflight TYPE REF TO if_wd_context_element.
DATA lt_sflight TYPE wd_this->Elements_sflight. lo_nd_sflight = wd_context->get_child_node( name = wd_this->wdctx_sflight ). SELECT * INTO TABLE lt_sflight from sflight
WHERE CARRID in <fs_CARRID>
AND CONNID in <fs_CONNID>. lo_nd_sflight->BIND_TABLE(
NEW_ITEMS = lt_sflight ). endmethod.

9、效果展示

webdynpro的select_option示例的更多相关文章

  1. 一个简单的webdynpro的ALV示例

    开发alv的时候需要1.在web dynpro组件下面 的已使用的组件中添加ALV组件 SALV_WD_TABLE 2.在组件控制器的属性下面创建ALV组件SALV_WD_TABLE 3.在视图界面的 ...

  2. Swift3.0服务端开发(一) 完整示例概述及Perfect环境搭建与配置(服务端+iOS端)

    本篇博客算是一个开头,接下来会持续更新使用Swift3.0开发服务端相关的博客.当然,我们使用目前使用Swift开发服务端较为成熟的框架Perfect来实现.Perfect框架是加拿大一个创业团队开发 ...

  3. .NET跨平台之旅:将示例站点升级至 ASP.NET Core 1.1

    微软今天在 Connect(); // 2016 上发布了 .NET Core 1.1 ,ASP.NET Core 1.1 以及 Entity Framework Core 1.1.紧跟这次发布,我们 ...

  4. 通过Jexus 部署 dotnetcore版本MusicStore 示例程序

    ASPNET Music Store application 是一个展示最新的.NET 平台(包括.NET Core/Mono等)上使用MVC 和Entity Framework的示例程序,本文将展示 ...

  5. WCF学习之旅—第三个示例之四(三十)

           上接WCF学习之旅—第三个示例之一(二十七)               WCF学习之旅—第三个示例之二(二十八)              WCF学习之旅—第三个示例之三(二十九)   ...

  6. JavaScript学习笔记(一)——延迟对象、跨域、模板引擎、弹出层、AJAX示例

    一.AJAX示例 AJAX全称为“Asynchronous JavaScript And XML”(异步JavaScript和XML) 是指一种创建交互式网页应用的开发技术.改善用户体验,实现无刷新效 ...

  7. XAMARIN ANDROID 二维码扫描示例

    现在二维码的应用越来越普及,二维码扫描也成为手机应用程序的必备功能了.本文将基于 Xamarin.Android 平台使用 ZXing.Net.Mobile  做一个简单的 Android 条码扫描示 ...

  8. iOS之ProtocolBuffer搭建和示例demo

    这次搭建iOS的ProtocolBuffer编译器和把*.proto源文件编译成*.pbobjc.h 和 *.pbobjc.m文件时,碰到不少问题! 搭建pb编译器到时没有什么问题,只是在把*.pro ...

  9. Android种使用Notification实现通知管理以及自定义通知栏(Notification示例四)

    示例一:实现通知栏管理 当针对相同类型的事件多次发出通知,作为开发者,应该避免使用全新的通知,这时就应该考虑更新之前通知栏的一些值来达到提醒用户的目的.例如我们手机的短信系统,当不断有新消息传来时,我 ...

随机推荐

  1. [Swust OJ 166]--方程的解数(hash法)

    题目链接:http://acm.swust.edu.cn/problem/0166/ Time limit(ms): 5000 Memory limit(kb): 65535   有如下方程组: A1 ...

  2. Linux 开放服务端口

    CentOS 6.5上安装Tomcat 服务器,需要开放服务端口,供其他计算机访问部署在Tomcat中的Web应用.下面是开放端口的方法. 我知道的方法有两种.下面以开放8080端口为例. 方法一:命 ...

  3. centos 安装lua

    yum install readline-develwget http://www.lua.org/ftp/lua-5.1.4.tar.gztar -xzvf lua-5.1.4.tar.gz3.编译 ...

  4. Chapter 1.简单工厂模式

    该篇文章通过一个写计算器控制台程序,来导入文章主题. 首先,要注意代码规范,变量命名有意义,不能随意用A,B,C;    功能要封装好,不要写在一个主函数里,另外要考虑后期需求的更改,如果出现多个函数 ...

  5. LOVEU

    闲来无事,自己编写一个小程序,自娱自乐 //date: 2013/8/14 //designer :pengxiaoen //function : printf the word love #incl ...

  6. Net::OpenSSH 模块使用

    use Net::OpenSSH; my $host = "$ip"; my $user = 'root'; my $passphrase = 'uxxxxxD'; my $key ...

  7. 批量的单向的ssh 认证

    <pre name="code" class="python">if [ ! $# -eq 2 ] ;then echo "请输入用户密码 ...

  8. 基于visual Studio2013解决算法导论之042单源最短路径

     题目 单源最短路径 解决代码及点评 // 26单源最短路径bellmanford.cpp : 定义控制台应用程序的入口点. // #include <iostream> #incl ...

  9. Use Node.js DDP Client on Arduino Yun to Access Meteor Server

    Use Node.js DDP Client on Arduino Yun to Access Meteor Server 概述 在Arduino Yun上安装 Node.js, 并測试与 Meteo ...

  10. Linux高性能server编程——高级I/O函数

     高级I/O函数 pipe函数 pipe函数用于创建一个管道,实现进程间的通信. #include <unistd.h> int pipe(int pipefd[2]); 通过pipe ...