`
JerryWang_SAP
  • 浏览: 1002882 次
  • 性别: Icon_minigender_1
  • 来自: 成都
文章分类
社区版块
存档分类
最新评论

SAP CRM WebClient UI的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.

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

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

 

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

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

为什么要加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。

2743 register了2818的new focus事件

这里2818 抛了new focus的事件,

2743 收到事件,处理:

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

0
1
分享到:
评论

相关推荐

    SAP CRM WebClient UI ON_NEW_FOCUS的用途

    Sent: Thursday, May 9, 2013 6:30 PM Subject: ON_NEW_FOCUS的用途 ROOT ———————————— Product ID PRODshortText ———————————— Product Description Genil Model hierarchy

    CRM7.0 WebClient UI config

    在SAP CRM 7.0版本中,WebClient UI配置是一项关键任务,它涉及到了用户界面的定制和优化,以提升用户体验和业务效率。WebClient UI是SAP CRM的一个核心组件,提供了一个基于Web的交互界面,使得用户能够访问和操作...

    Creating a Dropdown in SAP CRM WebUI.docx

    在SAP CRM WebUI中创建下拉列表是一个关键任务,特别是在设计用户界面以提供更高效、用户友好的交互时。本教程将引导你通过一系列步骤来实现这一目标,特别是针对SEX(性别)属性创建一个下拉框。 首先,你需要获取...

    WebClientDemo_webclient_

    【WebClientDemo_webclient_】项目是一个C#编程示例,展示了如何使用`WebClient`类来实现文件的下载功能。在.NET Framework中,`WebClient`是System.Net命名空间下的一个类,它提供了一种简便的方法来上传和下载数据...

    SAP CRM WebClient UI cross component跳转的一个具体例子

    Sent: Thursday, April 18, 2013 3:59 PM Subject: 为什么design time时候看到的是ICQR,点了service之后看到02QR的代码被call到 这是cross component navigation在起作用。 Result list是model在ICQR里面,如果点...

    SAPCRM基础培训教材.doc

    《SAP CRM基础培训教材详解》 ...总结来说,SAP CRM的基础培训涵盖了WebClient UI的演变及其丰富元素,以及CRM与ERP的集成策略。了解这些知识,有助于更好地理解和使用SAP CRM系统,提升企业的运营效率和服务质量。

    UI Guidelines for CRM WebClient User Interface

    UI Guidelines for CRM WebClient User Interface

    SAPCRM基础培训.doc

    总之,SAP CRM的基础培训着重于WebClient UI的使用,通过理解其发展历程、特点、组件和布局,用户能够更好地掌握如何有效地利用CRM系统,优化企业的客户关系管理。这种深入的培训有助于提升员工的工作效率,确保企业...

    Setup_WebClient.exe

    Setup_WebClient.exe,是一款很好用的虚拟光驱,他专用内存很小,真的很不错了,哈哈

    用Visual Csharp实现文件下载.rar_c# webclient_csharp 下载_下载_文件下载_文件传输

    using (WebClient client = new WebClient()) { // 可以添加事件监听下载进度,如DownloadProgressChanged client.DownloadFileCompleted += new AsyncCompletedEventHandler(DownloadCompleted); client....

    yacy_webclient_bootstrap, YaCy搜索客户端使用 bootstrapcss.zip

    yacy_webclient_bootstrap, YaCy搜索客户端使用 bootstrapcss yacy_webclient_bootstrap这是一个YaCy搜索客户端使用 Bootstrap,可以用作你自己的搜索门户的模板 !这可以在github页面上托管。 下面是这里知识库的...

    WebClient下载文件展示进度条

    private void WebClient_DownloadProgressChanged(object sender, DownloadProgressChangedEventArgs e) { if (e.ProgressPercentage >= 0) { bytesReceived = e.BytesReceived; progressBar.Value = (int)(...

    sap 简介及关键提示

    产品建议不仅能在标准订单等销售事务中应用,还能在CRM WebClient UI(交互中心)和Web渠道中实时呈现,帮助销售人员在与客户的互动中快速响应并提供个性化建议。 通过灵活地配置产品联想规则,企业可以设定复杂的...

    WebClient.rar_单片机开发_Visual_C++_

    总之,"WebClient.rar_单片机开发_Visual_C++_"项目展示了如何利用现代编程工具和技术,结合硬件设备,实现单片机的网络功能,从而获取并显示互联网数据。这不仅涉及到硬件层面的接口设计,还包括软件层面的网络编程...

    TZO_WebClient2_API

    ### TZO WebClient2 API 关键知识点 #### 一、概述 **TZO WebClient2 API** 是由 Tzolkin Corporation 提供的一种动态域名系统 (DDNS) 更新服务接口。该 API 的版本为 2.02,发布日期为 2006 年 6 月 30 日。它...

    C#中WebClient实现文件下载

    using (WebClient wc = new WebClient()) { wc.DownloadFile("http://example.com/file", "localFilePath"); } ``` 2. **使用代理访问网络**: 当需要通过代理服务器访问网络时,WebClient也提供了支持。...

    NetBackup80_WebClient_Plug-in_Guide.pdf

    NetBackup 8.0 WebClient 插件指南概述 VERITAS NetBackup 8.0 WebClient 插件指南是 Veritas Technologies LLC 发布的一份关于 NetBackup 8.0 WebClient 插件的使用指南。该指南详细介绍了 NetBackup 8.0 ...

    NetBackup81_WebClient_Plug-in_Guide.pdf

    NetBackup 8.1 WebClient 插件指南 本文档提供了 Veritas NetBackup 8.1 WebClient 插件的使用指南,旨在帮助用户快速了解该插件的安装、配置和使用方法。本指南适用于 VMware vSphere Web Client 的用户,旨在帮助...

    WebClientDemo

    【WebClientDemo】是一个示例项目,展示了如何在Eclipse集成开发环境中使用`WebClient`进行网络通信。`WebClient`是Java中的一个类,主要用在Spring Framework的WebFlux模块,它允许开发者发送HTTP请求并处理响应,...

Global site tag (gtag.js) - Google Analytics