温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

SAP CRM的on_new_focus如何理解

发布时间:2021-12-30 15:56:15 来源:亿速云 阅读:112 作者:iii 栏目:服务器

这篇文章主要介绍“SAP CRM的on_new_focus如何理解”,在日常操作中,相信很多人在SAP CRM的on_new_focus如何理解问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”SAP CRM的on_new_focus如何理解”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!

# 问题

我在做练习16时(第3步的e,f),发现有一句这样的描述:

Double click on method CONNECT_NODES.Make Value node ‘Competitors’

dependent from BTAdminH.

METHOD connect_nodes.

DATA: coll_wrapper TYPE REF TO cl_bsp_wd_collection_wrapper.

coll_wrapper = btadminh->get_collection_wrapper( ).

SET HANDLER me->competitors->on_new_focus FOR coll_wrapper ACTIVATION

iv_activate.

ENDMETHOD.

这种所谓的dependent关系我在debug时发现没发生任何的实际效果,按理说这里设置了handler为on_new_focus应该通过raise event来调用,但是其最后是通过直接调用方法名来调用的。你是怎么理解的?以及这里的所谓dependent有什么特别的应用场景么?

# 回答

UI上两个field放到同一个header view,比如product ID和product description( 相同level),但是他们绑的Genil mode里面的field却不是相同level,而是存在父子关系。

这种情况下需要用到connect_nodes. 目的是parent node发生变化时,自动刷新child node,确保ui上显示的两个field的value是正确的。

总之,如果UI上同一level的field来自不同的UI component context node,这些context node对应绑定到的Genil mode里面的node之间存在父子关系,则UI component context node里面所有的child context node都应该实现on_new_focus.

这是一个比较典型的例子:

SAP CRM的on_new_focus如何理解

你的疑问,我猜你是对这个例子里面直接call event handler,而不是在代码里面用raise event触发它,对吧?

你可以在connect_nodes和create_produom两个方法里面设置一个断点,当你在ui上创建一个新的product时候,后者会先触发,此时前者还未执行,因此new focus的event还未register。

而后者触发的原因正是这个代码里面manual call event handler的地方:

SAP CRM的on_new_focus如何理解

为什么要加21行呢?其实这就牵涉到model node和value node的区别。在product creation scenario里面,我们期望user在ui上的输入没有任何错误之后,才会真正走完4个level,最后在DB创建product。那么在ui 输入通过validation之前,所有ui输入都是存在value node里,然后当ui的输入通过validation 这一时间点之后,由value node转成model node。

SAP CRM的on_new_focus如何理解

2743 register了2818的new focus事件

SAP CRM的on_new_focus如何理解

这里2818 抛了new focus的事件,

SAP CRM的on_new_focus如何理解

2743 收到事件,处理:

SAP CRM的on_new_focus如何理解

你把你highlight的22~25注释掉会有什么问题?我在product的例子里在debugger里面跳过这行,然后再执行下去,似乎没问题。

到此,关于“SAP CRM的on_new_focus如何理解”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注亿速云网站,小编会继续努力为大家带来更多实用的文章!

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI