zoukankan      html  css  js  c++  java
  • webdynpro的select_option示例

    需求,输入航线代码和航线编号区间,查询记录存在表中显示,并不是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( &1 ).
        wd_this->m_handler->add_selection_field(
          i_id = &1                                "字段参考类型
          i_description = &2                       "描述
          it_result = lr_field
          i_read_only = &3 ).
      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、效果展示

  • 相关阅读:
    SecondiosAppTutorial--学习笔记
    Your First iOS App--苹果官方iOS文档学习
    使用cocoapods碰到的难题
    xcode6 使用pch出错解决办法
    Mac上安装与更新Ruby,Rails运行环境
    对contentoffset的理解
    CALayer笔记
    StoryBoard解惑
    post和get请求
    程序内部让用户直接上appstore评价游戏的链接地址以及跳转方法
  • 原文地址:https://www.cnblogs.com/caizjian/p/3769937.html
Copyright © 2011-2022 走看看