向用户展示消息,在任何软件中都是十分重要的。

  在SAP CRM WEB UI中展示消息,不是一项很难的任务,只需要创建消息并在之后调用方法来显示它

消息类和消息号:

  我在SE91中创建了如下的消息类和消息号。

  

  我们需要在合适的地方写代码以在Web UI中显示消息。这里我就在DO PREPARE OUTPUT方法放置代码了。

  cl_bsp_wd_message_service用于在Web UI中显示消息。在上面的代码中,我们获取了一个消息服务的实例,接着调用它的ADD_MESSAGE方法并传入消息号id 消息号和消息类型。

  消息类型指出了消息的种类:E是错误,S是成功,W是警告,I则是信息。

  所有的E类型会显示为红色,所有的W类型会显示为黄色。

  这是我运行应用后获取的输出结果。

长文本:

  有时,我们也许想要随着错误提示展示更多的信息。在这种情况下,需要为消息类中的消息维护长文本。

  在消息的长文本得到维护后,框架会自动地在消息后面显示一个名为“DETAILS”的链接条。如果用户点击,他会被得到一个带有详细信息的弹出框。

  前往消息类,维护长文本。别忘记关闭弹出框的自我解释。

  

  保存,运行应用。

可导航的消息:

  在上面的部分,我们已经创建了简单的消息。有些时候,我们不得不执行某些特定的行为,来处理错误消息。

  比如,点击错误消息,用户会被导航到某些其它屏幕上面,或者触发某些特定的代码。

  在下面这个例子中我将展示如何在点击消息栏中的消息导航到另一个视图中。

  我已经创建了两个视图,制作了一个从源视图到目标视图的导航链接,并且把两个视图都分配给了窗口。源视图为默认视图,因此在显示窗口时,源视图会首先显示。请看下面的截图:

  第一步,我们需要添加一个接口“IF_BSP_WD_MESSAGE_HANDLER”在你的视图实现类里面,如果它不是可用的。

  

  添加后,激活类。

  接下来,我们需要把消息订阅到全局消息服务。我在DO PREPARE OUTPUT中写下了如下代码:

  首先使用subscribe message方法来订阅消息,之后让消息在Web UI中可见。保存并激活方法。

  如果你现在测试应用,可以看到消息将显示为超链接。

  无论何时,当用户点击超链接,IF_BSP_WD_MESSAGE_HANDLER~HANDLE_MESSAGE会触发。我们需要在该方法中写代码。

  前往视图实现类,添加如下代码。 

  在这个方法中,我简单地触发了导航,把导航链接的值作为参数传递给外向插件。

  测试应用。  

  点击消息,你就可以导航到目标视图了。

  

本文链接:http://www.cnblogs.com/hhelibeb/p/6019699.html

原文链接:DISPLAYING MESSAGES 

SAP CRM 显示消息/在消息中进行导航的更多相关文章

  1. SAP CRM和Cloud for Customer中的Event handler(事件处理器)

    SAP CRM可以在开发工具中用右键直接创建一个新的事件处理器: 这些事件处理器实际上就是UI控制器(Controller)上具有特定接口类型的方法. C4C UI的event handler 在C4 ...

  2. SAP CRM 通过调试观察CL_CRM_BOL_ENTITY中的数据

    这个(BOL里面)最重要的类值得一看. BOL中的每条记录都会在CL_CRM_BOL_ENTIT中表示.至今,我们已经写过一些事件处理器,并且我们已经直接或间接的通过这个类工作.在业务场景中,我们也许 ...

  3. 【Python学习笔记】-APP图标显示未读消息数目

    以小米手机系统为例,当安装的某个APP有未读消息时,就会在该APP图标的右上角显示未读消息的数目.本文主要解说怎样用Python语言实现图标显示未读消息的数目.首先,还是要用到Python中PIL库, ...

  4. 如何在 messager/alert/confirm等消息提示框中 获取 / 设置 嵌入 html内容中的 input[type=checkbox]等的选中状态?

    总结, 有3点: 不能/不要 在 这些消息框 / 提示框/ 对话框中的 回调函数中去写代码: 获取嵌入 内容中input.checkbox的选中状态, 因为 虽然在这些框存在的时候, 这个 check ...

  5. SAP CRM 7.0中的BOL(Business Object Layer)

    业务对象层(BOL)和通用交互层(GenIL)属于业务层. 业务对象层:   在CRM WebClient会话运行期间,业务对象层存储业务对象的数据以及它们属性和关系的定义. 通用交互层 通用交互层将 ...

  6. Windows中的消息与消息队列

    消息 在Windows中,消自由MSG结构体表示 typedef struct tagMSG { HWND hwnd; UINT message; WPARAM wParam; LPARAM lPar ...

  7. 【MM系列】SAP MM模块-控制采购订单中某些项目的输出显示

    公众号:SAP Technical 本文作者:matinal 原文出处:http://www.cnblogs.com/SAPmatinal/ 原文链接:[MM系列]SAP MM模块-控制采购订单中某些 ...

  8. FreeSWITCH 处理Refer盲转时,UUI传递不对(没有将SIP 消息头Refer-To中的User-to-User传递给B-Leg)

    运行环境:     CentOS 7.6     FreeSWICH 1.6.18   一.问题场景:     FreeSWITCH收到REFER命令后,重新发起的INVITE消息中的 "U ...

  9. SAP CRM 将组件整合至导航栏中

    到现在,我们已经可以让组件独立地显示.我们只是运行它.让它显示在Web UI中.让我们把组件整合进导航栏,使我们可以在正常登录Web UI时访问它. 步骤一: 为你的UI组件主窗体创建一个内向插件. ...

随机推荐

  1. 黑云压城城欲摧 - 2016年iOS公开可利用漏洞总结

    黑云压城城欲摧 - 2016年iOS公开可利用漏洞总结 作者:蒸米,耀刺,黑雪 @ Team OverSky 0x00 序 iOS的安全性远比大家的想象中脆弱,除了没有公开的漏洞以外,还有很多已经公开 ...

  2. 如何优雅的使用RabbitMQ

    RabbitMQ无疑是目前最流行的消息队列之一,对各种语言环境的支持也很丰富,作为一个.NET developer有必要学习和了解这一工具.消息队列的使用场景大概有3种: 1.系统集成,分布式系统的设 ...

  3. [NodeJS] 优缺点及适用场景讨论

    概述: NodeJS宣称其目标是“旨在提供一种简单的构建可伸缩网络程序的方法”,那么它的出现是为了解决什么问题呢,它有什么优缺点以及它适用于什么场景呢? 本文就个人使用经验对这些问题进行探讨. 一. ...

  4. SQLServer地址搜索性能优化例子

    这是一个很久以前的例子,现在在整理资料时无意发现,就拿出来再改写分享. 1.需求 1.1 基本需求: 根据输入的地址关键字,搜索出完整的地址路径,耗时要控制在几十毫秒内. 1.2 数据库地址表结构和数 ...

  5. 如何远程关闭一个ASP.NET Core应用?

    在<历数依赖注入的N种玩法>演示系统自动注册服务的实例中,我们会发现输出的列表包含两个特殊的服务,它们的对应的服务接口分别是IApplicationLifetime和IHostingEnv ...

  6. 关于python的bottle框架跨域请求报错问题的处理

    在用python的bottle框架开发时,前端使用ajax跨域访问时,js代码老是进入不了success,而是进入了error,而返回的状态却是200.url直接在浏览器访问也是正常的,浏览器按F12 ...

  7. EF6 对多个数据库,多个DBContext的情况 进行迁移的方法。

    参见: http://stackoverflow.com/questions/21537558/multiple-db-contexts-in-the-same-db-and-application- ...

  8. Android Studio快捷键

      一.android studio 默认快捷键 刚开始接触一款开发软件,想必很想了解它的快捷方式,这会对你的编程起到很好的帮助,提高工作效率,接下来给你介绍下Android Studio一些常用的快 ...

  9. 和我一起看API(一)你所不知道的LinearLayout补充

    楼主英语水平差,翻译的不好的话请多多指正,嘿嘿... A Layout that arranges its children in a single column or a single row. T ...

  10. github入门到上传本地项目【网上资源整合】

    [在原文章的基础上,修改了描述的不够详细的地方,对内容进行了扩充,整合了网上的一些资料] [内容主要来自http://www.cnblogs.com/specter45/p/github.html#g ...