一個簡單的webdynpro的ALV示例


開發alv的時候需要
1、在web dynpro組件下面 的已使用的組件中添加ALV組件 SALV_WD_TABLE


2、在組件控制器的屬性下面創建ALV組件SALV_WD_TABLE


3、在視圖界面的屬性下面也要添加ALV組件SALV_WD_TABLE


4、在視圖界面下定義控件ViewContainerUIElement名稱是UCV_ALV

5、在窗口下面的視圖下面UCV_ALV下面嵌套選擇ALV 的TABLE

6、定義節點.

7、頁面加載事件WDDOMODIFYVIEW下面綁定ALV控件:

  DATA: dyn_node TYPE REF TO if_wd_context_node.
  dyn_node = wd_context->get_child_node( name = 'LT_SFLIGHT' ).
  DATA: lo_interfacecontroller type ref to iwci_salv_wd_table.
  lo_interfacecontroller = wd_this->wd_cpifc_alv( ). "在視圖中添加ALV組件才會生成此wd_cpifc_alv方法
  lo_interfacecontroller->set_data( dyn_node ).

8、執行SEARCH按鈕事件

    DATA lo_nd_lt_sflight TYPE REF TO if_wd_context_node.

    DATA lo_el_lt_sflight TYPE REF TO if_wd_context_element.
    DATA ls_lt_sflight TYPE wd_this->Element_lt_sflight.
    DATA lt_lt_sflight TYPE wd_this->Elements_lt_sflight.


    lo_nd_lt_sflight = wd_context->get_child_node( name = wd_this->wdctx_lt_sflight ).

    SELECT * INTO TABLE lt_lt_sflight from sflight UP TO 10 ROWS. "NEW_ITEMS  BIND_TABLE  SET_INITIAL_ELEMENTS  ABAP_TRUE
      lo_nd_lt_sflight->BIND_TABLE(
      EXPORTING
        NEW_ITEMS = lt_lt_sflight
        SET_INITIAL_ELEMENTS = ABAP_FALSE ).

 

9、執行效果

 

 

 更新:可以忽視以上的操作,主要有以下三點

         1、需要在組件控制器和視圖控制器上加入ALV組件 SALV_WD_TABLE

         2、需要把需要展示的數據節點設置成全局節點,還需要把該全局節點傳輸到alv組件下節點的DATA節點中去,方法是在alv組件下的上下文菜單下點擊控制器的用法,然后映射全局節點至DATA節點下。

        3、在視圖控制器下的outbound plugs下創建輸出plug name,然后打開窗口控制器,在ALV容器元素組件下添加alv視圖TABLE,把在視圖下創建的輸出plug name和該alv的table視圖下的default連接。因為一個視圖下可能會指向多個alv容器。

 

 

 

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM