求助:Web Dynpro for ABAP的Table如何得到被选中的多行
对于WebDynproforABAP的TableUIElement,现在允许用户选中多行,那么怎么样才能知道哪些行是被选中的呢,请高手指教。...
对于Web Dynpro for ABAP的Table UI Element,现在允许用户选中多行,那么怎么样才能知道哪些行是被选中的呢,请高手指教。
展开
展开全部
一般情况下,在Web Dynpro for ABAP的Table中,不推荐使用行多选,
因为Web Dynpro for ABAP的Table于abap中alv的mark选择方式不同。
alv无论单选还是多选,只要判断mark就是选择的行。
但是在Web Dynpro for ABAP的Table中单选个多选的获取方式不一样,
你如果注意看的话,单选跟多选的颜色有点不一样。
所以无论是业务上还是程序上,会导致无法正确判断用是是否是 多选+单选 选择了数据,
还是只选择 多选的。
建议该用checkbox。
最后解答你的问题。。
多选的时候Web Dynpro for ABAP的Table是以elements形式存到一个内表中的。。
上面的兄弟说的对。。
IF_WD_CONTEXT_NODE 中有method:GET_SELECTED_ELEMENTS
但是不包括单选的行。。
如果想取数据,就得循环了。。
loop at <ELEMENTS> into <ELEMENT>
ELEMENT->get_static_attributes(
... ...
).
endloop.
因为Web Dynpro for ABAP的Table于abap中alv的mark选择方式不同。
alv无论单选还是多选,只要判断mark就是选择的行。
但是在Web Dynpro for ABAP的Table中单选个多选的获取方式不一样,
你如果注意看的话,单选跟多选的颜色有点不一样。
所以无论是业务上还是程序上,会导致无法正确判断用是是否是 多选+单选 选择了数据,
还是只选择 多选的。
建议该用checkbox。
最后解答你的问题。。
多选的时候Web Dynpro for ABAP的Table是以elements形式存到一个内表中的。。
上面的兄弟说的对。。
IF_WD_CONTEXT_NODE 中有method:GET_SELECTED_ELEMENTS
但是不包括单选的行。。
如果想取数据,就得循环了。。
loop at <ELEMENTS> into <ELEMENT>
ELEMENT->get_static_attributes(
... ...
).
endloop.
展开全部
两种常用方法,只提供思路,具体代码就不多说了。
1:此TABLE的第一个项目绝大多数情况下是‘选择行’,LOOP当前TABLE,HEAD中此项目为'X'的行,就是选中的行。
2:调用METHOD,获取当前选择行数。
1:此TABLE的第一个项目绝大多数情况下是‘选择行’,LOOP当前TABLE,HEAD中此项目为'X'的行,就是选中的行。
2:调用METHOD,获取当前选择行数。
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
一种方法:node节点selection设置为0~n,选择的时候按ctrl点击,可以选中多行,另一种方法加checkbox,这个更简单。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
接口:IF_WD_CONTEXT_NODE 中有method:GET_SELECTED_ELEMENTS
1.获取相应的context node
2.调用上面的方法,接收的参数就是选中的context element
1.获取相应的context node
2.调用上面的方法,接收的参数就是选中的context element
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询