首页 > 其他分享 >WDA DEMO 03: 根据选择条件查询并显示

WDA DEMO 03: 根据选择条件查询并显示

时间:2022-10-14 19:08:36浏览次数:56  
标签:WDA wd carrid 03 lo element context DEMO spfli


下面开始干货:

事先声明下,本人没参加过培训,也没看过完整的标准教程,所以一直都是野路子,土八路。

所以文章中不足以及不正确的地方请大家帮忙指正。


SE80 新建。

WDA DEMO 03: 根据选择条件查询并显示_微信


然后新建一个Attribute。

WDA DEMO 03: 根据选择条件查询并显示_数据_02

WDA DEMO 03: 根据选择条件查询并显示_数据_03


再新建一个node。

WDA DEMO 03: 根据选择条件查询并显示_微信_04

依然是 add attributes from structure。


WDA DEMO 03: 根据选择条件查询并显示_微信_05

然后回到view layout界面。

WDA DEMO 03: 根据选择条件查询并显示_数据_06

添加三个 element。

一个输入框。

一个确认button。

一个显示用的table。

WDA DEMO 03: 根据选择条件查询并显示_微信_07

WDA DEMO 03: 根据选择条件查询并显示_微信_08

WDA DEMO 03: 根据选择条件查询并显示_拖拽_09

哦丢了个label

WDA DEMO 03: 根据选择条件查询并显示_数据_10


然后顺序自己拖拽调整下。

维护描述

WDA DEMO 03: 根据选择条件查询并显示_数据_11

绑定value

WDA DEMO 03: 根据选择条件查询并显示_拖拽_12

WDA DEMO 03: 根据选择条件查询并显示_拖拽_13

然后button维护描述和 onaction。

WDA DEMO 03: 根据选择条件查询并显示_微信_14

WDA DEMO 03: 根据选择条件查询并显示_微信_15

WDA DEMO 03: 根据选择条件查询并显示_拖拽_16


进入onaction search 代码界面

WDA DEMO 03: 根据选择条件查询并显示_数据_17


还是使用向导就行。

WDA DEMO 03: 根据选择条件查询并显示_微信_18

WDA DEMO 03: 根据选择条件查询并显示_拖拽_19

会自动生成下面的代码

WDA DEMO 03: 根据选择条件查询并显示_微信_20

然后再给node 赋值。

WDA DEMO 03: 根据选择条件查询并显示_微信_21


method ONACTIONACT_SEARCH .

*& 获取输入的数据
DATA lo_el_context TYPE REF TO if_wd_context_element.
DATA ls_context TYPE wd_this->element_context.
DATA lv_p_carrid TYPE wd_this->element_context-p_carrid.

* get element via lead selection
lo_el_context = wd_context->get_element( ).
* @TODO handle not set lead selection
IF lo_el_context IS INITIAL.
ENDIF.

* get single attribute
lo_el_context->get_attribute(
EXPORTING
name = `P_CARRID`
IMPORTING
value = lv_p_carrid ).

*& 查询数据
CHECK lv_p_carrid IS NOT INITIAL.

DATA lo_nd_n_spfli TYPE REF TO if_wd_context_node.

DATA lt_n_spfli TYPE wd_this->elements_n_spfli.

* navigate from <CONTEXT> to <N_SPFLI> via lead selection
lo_nd_n_spfli = wd_context->get_child_node( name = wd_this->wdctx_n_spfli ).

* @TODO handle non existant child
* IF lo_nd_n_spfli IS INITIAL.
* ENDIF.
SELECT * FROM spfli into CORRESPONDING FIELDS OF table lt_n_spfli
WHERE carrid = lv_p_carrid.
** @TODO compute values
** e.g. call a model function
*
lo_nd_n_spfli->bind_table( new_items = lt_n_spfli set_initial_elements = abap_true ).


endmethod.后面自己调整下代码就行。


保存,激活。

激活报错,原来是table控件忘了绑定数据了。加上就行了。

WDA DEMO 03: 根据选择条件查询并显示_数据_22

WDA DEMO 03: 根据选择条件查询并显示_拖拽_23

新建application。

WDA DEMO 03: 根据选择条件查询并显示_微信_24

测试结果:

WDA DEMO 03: 根据选择条件查询并显示_微信_25

如果大家觉得有用,还有必要继续写完这个WDA的demo系列。

WDA DEMO 03: 根据选择条件查询并显示_数据_26


标签:WDA,wd,carrid,03,lo,element,context,DEMO,spfli
From: https://blog.51cto.com/u_15680210/5757797

相关文章