向用户展示消息,在任何软件中都是十分重要的。
在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 显示消息/在消息中进行导航的更多相关文章
-
SAP CRM和Cloud for Customer中的Event handler(事件处理器)
SAP CRM可以在开发工具中用右键直接创建一个新的事件处理器: 这些事件处理器实际上就是UI控制器(Controller)上具有特定接口类型的方法. C4C UI的event handler 在C4 ...
-
SAP CRM 通过调试观察CL_CRM_BOL_ENTITY中的数据
这个(BOL里面)最重要的类值得一看. BOL中的每条记录都会在CL_CRM_BOL_ENTIT中表示.至今,我们已经写过一些事件处理器,并且我们已经直接或间接的通过这个类工作.在业务场景中,我们也许 ...
-
【Python学习笔记】-APP图标显示未读消息数目
以小米手机系统为例,当安装的某个APP有未读消息时,就会在该APP图标的右上角显示未读消息的数目.本文主要解说怎样用Python语言实现图标显示未读消息的数目.首先,还是要用到Python中PIL库, ...
-
如何在 messager/alert/confirm等消息提示框中 获取 / 设置 嵌入 html内容中的 input[type=checkbox]等的选中状态?
总结, 有3点: 不能/不要 在 这些消息框 / 提示框/ 对话框中的 回调函数中去写代码: 获取嵌入 内容中input.checkbox的选中状态, 因为 虽然在这些框存在的时候, 这个 check ...
-
SAP CRM 7.0中的BOL(Business Object Layer)
业务对象层(BOL)和通用交互层(GenIL)属于业务层. 业务对象层: 在CRM WebClient会话运行期间,业务对象层存储业务对象的数据以及它们属性和关系的定义. 通用交互层 通用交互层将 ...
-
Windows中的消息与消息队列
消息 在Windows中,消*MSG结构体表示 typedef struct tagMSG { HWND hwnd; UINT message; WPARAM wParam; LPARAM lPar ...
-
【MM系列】SAP MM模块-控制采购订单中某些项目的输出显示
公众号:SAP Technical 本文作者:matinal 原文出处:http://www.cnblogs.com/SAPmatinal/ 原文链接:[MM系列]SAP MM模块-控制采购订单中某些 ...
-
FreeSWITCH 处理Refer盲转时,UUI传递不对(没有将SIP 消息头Refer-To中的User-to-User传递给B-Leg)
运行环境: CentOS 7.6 FreeSWICH 1.6.18 一.问题场景: FreeSWITCH收到REFER命令后,重新发起的INVITE消息中的 "U ...
-
SAP CRM 将组件整合至导航栏中
到现在,我们已经可以让组件独立地显示.我们只是运行它.让它显示在Web UI中.让我们把组件整合进导航栏,使我们可以在正常登录Web UI时访问它. 步骤一: 为你的UI组件主窗体创建一个内向插件. ...
随机推荐
-
NSOperation创建队列
#pragma mark - NSOperation //NSOperation不能直接进行多线程的创建,需要帮助:NSOperationQueue // 使用NSOperation的第一个子类去创建 ...
-
状压DP POJ 3254 Corn Fields
题目传送门 /* 状态压缩DP:先处理硬性条件即不能种植的,然后处理左右不相邻的, 接着就是相邻两行查询所有可行的种数并累加 写错一个地方差错N久:) 详细解释:http://www.tuicool. ...
-
Linux / Unix Command: bunzip2--reference
http://linux.about.com/library/cmd/blcmdl1_bunzip2.htm NAME bzip2, bunzip2 - a block-sorting file co ...
-
uva 315 Network(无向图求割点)
https://uva.onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&page=show_problem& ...
-
ISA2006 下建立VPN连接时出现“错误800”时的解决办法
[转载]http://social.microsoft.com/Forums/zh-CN/9cfa0c06-0f46-44cb-9e8f-8eba1c3821ba/vpn-vpn800 重启Routi ...
-
【转】java jawin api 中文 invoke方法
org.jawin Class FuncPtr java.lang.Object org.jawin.FuncPtr ----------------------------------------- ...
-
nginx非root安装
nginx非root安装 唯一需要解决的就是指定安装目录 这里使用nginx相关包如下 nginx-1.14.0.tar.gz 安装需要依赖如下2个包 pcre-8.42.tar.gz zlib-1. ...
-
C51单片机_day_01(定时器和中断系统)
c51单片机 51单片机是控制电路系统的开关,当然芯片就是51芯片,现在随着科技的发展,也是出了很多,功能更多,更全的芯片. 51是用c语言做为程序编程的语言 ——我对基本基础 ...
-
electron-vue:Vue.js 开发 Electron 桌面应用
相信很多同学都知道 Electron 可以帮助开发人员使用前端技术开发桌面客户端应用,今天介绍的 electron-vue 框架是一套基于 Vue.js 开发 Electron 桌面应用的脚手架,该项 ...
-
ADO.net 增删改查
ADO.net 一.定义:编程开发语言与数据库连接的一门语言技术 二.链接: 在vs中操作数据库需在开头进行链接 链接内容:using System.Data.SqlClient 三.引用数据库: 四 ...