创建一个简单的ALV实例。
先看一下效果。
下面是创建步骤:
先创建一个Web Dynpro组件。
添加ALV组件
在COMPONENTCONTROLLER 的Properties中添加ALV组件。
在View中添加两个控件,一个Button一个ViewContainerUIElement。
设置VCU_ALV
设置Button的Text和事件onAction。
添加Context
页面加载时绑定ALV控件
1 2 3 4 5 |
DATA: dyn_node TYPE REF TO if_wd_context_node. dyn_node = wd_context->get_child_node( name = 'LT_MARA' ). DATA: lo_interfacecontroller type ref to iwci_salv_wd_table. lo_interfacecontroller = wd_this->wd_cpifc_alv( ). lo_interfacecontroller->set_data( dyn_node ). |
点击Search按钮时显示数据。
1 2 3 4 5 6 7 8 9 10 11 12 |
DATA lo_nd_lt_mara TYPE REF TO if_wd_context_node. DATA lt_lt_mara TYPE wd_this->Elements_lt_mara. * navigate from <CONTEXT> to <LT_MARA> via lead selection lo_nd_lt_mara = wd_context->get_child_node( name = wd_this->wdctx_lt_mara ). * @TODO handle non existant child * IF lo_nd_lt_mara IS INITIAL. * ENDIF. ** @TODO compute values ** e.g. call a model function * SELECT * INTO TABLE lt_lt_mara FROM MARA UP TO 50 ROWS. lo_nd_lt_mara->bind_table( new_items = lt_lt_mara set_initial_elements = abap_true ). |
然后保存激活各项。
创建测试程序
点击Test测试结果OK。
附:
事件响应顺序
页面加载
WDDOINIT
WDDOMODIFYVIEW 页面加载
按钮事件
WDDOBEFOREACTION
ONACTIONSEARCH 按钮事件
WDDOAFTERACTION
WDDOMODIFYVIEW
注:也需要在view main的properties选项添加上述两个alv组件
以上.
发表评论