iis服务器助手广告广告
返回顶部
首页 > 资讯 > 精选 >SAP CRM里的EXT和STRUCT含义是什么
  • 510
分享到

SAP CRM里的EXT和STRUCT含义是什么

2023-06-04 03:06:13 510人浏览 薄情痞子
摘要

本篇内容介绍了“SAP CRM里的EXT和STRUCT含义是什么”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!CRM系统里BSP_WD_CP

本篇内容介绍了“SAP CRM里的EXT和STRUCT含义是什么”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!

CRM系统里BSP_WD_CPMWB这个事务码进入之后,任意打开一个上下文节点(Context node)看到的信息:

SAP CRM里的EXT和STRUCT含义是什么

STRUCT的含义?

SAP CRM里的EXT和STRUCT含义是什么

在Jerry之前的文章 Jerry的WEBClient UI 42篇原创文章合集提到这样一张图:

SAP CRM里的EXT和STRUCT含义是什么

在UI层的CRM BSP component的mvc设计里,Model,即Context node,绑定的是Business Object Layer的模型,因此Context node Attributes文件夹下面,以STRUCT开头的字段,意味着这个字段是绑定到BOL模型节点里的一个字段的,二者存在一一对应关系,如下图箭头所示。而下图蓝色字段LOCKED, 前面没有STRUCT前缀,说明这个字段并非来自BOL模型节点,而是开发者直接创建的,这种字段一般用于应用逻辑里存储临时状态,或是代表当前应用的某个标志位,没有对应的底层存储,在SAP很多产品里也称这种字段为transient field或者calculated field.

SAP CRM里的EXT和STRUCT含义是什么

展开某个字段,看到的GET, GET_M, GET_I, GET_V, GET_P, GET_A是什么意思?

SAP CRM里的EXT和STRUCT含义是什么

要回答这个问题,得从CRM WebClient UI页面的渲染方式说起。

SAP CRM里的EXT和STRUCT含义是什么

如上图这种视图源代码,使用的标签页不是html支持的原生标签,浏览器是无法识别和解析的,因此需要有一个中间层,或者说转换器,将这些SAP封装过的标签转换成浏览器支持的原生HTML标签。

按照这个转换器所处位置的不同,分为服务器端渲染和浏览器端渲染两种方式。SAP CRM WebClient UI基于SAP BSP技术——Business Server Page,光听名字就知道是在服务器端渲染了。而SAP UI5,是典型的浏览器端渲染,我们在其XML视图里书写的那些标签同样无法直接被浏览器使用,需要每个标签对应的渲染器,在浏览器端用javascript代码生成对应原生的HTML标签。

回到CRM WebClient UI,对于Attributes里的这些STRUCT字段们,我们在渲染出的最终页面里,有的是一般的输入字段,有的是超链接,有的是下拉框,有的不可编辑,SAP开发的转换器怎么知道要将每个字段渲染成什么样呢?

奥妙就在这些GET方法里。这里有一个小小的设计模式的思路在内,即SAP CRM WebClient UI的框架代码,负责服务器端渲染80%的工作量,即把整个页面的框架搭出来,包括一个页面有多少字段,字段之间的相对位置等。剩下20%的工作量,比如每个字段的类型,外观等属性,这些信息框架不可能知道,也不应该知道,这些应该由应用程序提供接口(也可以理解成回调),在接口里实现这些属性,然后由框架调用这些接口。我们可以把这个模式看成是设计模式里的一种——模板模式(Template Design Pattern).

看具体的例子。

双击进入CONFIG这个字段的GET_P方法里。P的意思是Property,属性。UI框架在渲染CONFIG这个字段时,会调用GET_P_CONFIG这个接口,询问应用:你想把CONFIG这个字段渲染成什么类型(下图第4行的fieldtype)?

应用程序通过第五行的field_type_checkbox回答框架:我想把CONFIG字段渲染成checkbox, 拜托了。

SAP CRM里的EXT和STRUCT含义是什么

UI框架拿到这个信息后,就可以做对应的渲染工作了。

如果想研究UI拿到这个字段类型后如何渲染的细节,在GET_P方法里打断点,然后打开一个页面,单步调试记录:

SAP CRM里的EXT和STRUCT含义是什么

GET_I: 如果应用逻辑里需要根据某种条件动态决定该字段是否可编辑,将逻辑写在这个接口里。

纯粹的GET_P方法:这里面奥妙很多,尤其是这个CONVERT_TO_STRING方法,将底层数据库表里对应的字段根据BOL模型里的字段类型渲染成最终对用户友好易读的字符串。比如底层数据库表里存储的是不含任何时区的时间戳(timestamp), 那么这个方法会根据用户设置里的时区,自动转换成该时区的本地时间。

SAP CRM里的EXT和STRUCT含义是什么

GET_V: 如果想实现自定义的F4 Value Help,在此实现。

GET_A: 如果某字段的启用与否,依赖于某个Business Switch的开与关,在此实现。在SFW开头的系列事务码里查看和操作Business Switch和Function.

SAP CRM里的EXT和STRUCT含义是什么

EXT开头的字段,代表通过CRM增强工具Application Extension Tool(AET)创建的增强字段。

“SAP CRM里的EXT和STRUCT含义是什么”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注编程网网站,小编将为大家输出更多高质量的实用文章!

--结束END--

本文标题: SAP CRM里的EXT和STRUCT含义是什么

本文链接: https://www.lsjlt.com/news/236384.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • SAP CRM里的EXT和STRUCT含义是什么
    本篇内容介绍了“SAP CRM里的EXT和STRUCT含义是什么”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!CRM系统里BSP_WD_CP...
    99+
    2023-06-04
  • SAP模型里的addressable为true的含义是什么
    本篇内容介绍了“SAP模型里的addressable为true的含义是什么”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!Opportunit...
    99+
    2023-06-04
  • SAP CRM,C4C和Hybris的页面技术是什么
    本篇内容介绍了“SAP CRM,C4C和Hybris的页面技术是什么”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!CRM按F2就能看到页面的...
    99+
    2023-06-04
  • SAP CRM的Genil层和Hybris的jalo模型是什么
    本篇内容介绍了“SAP CRM的Genil层和Hybris的jalo模型是什么”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!在Hybris实...
    99+
    2023-06-04
  • nodejs里nodal的含义是什么
    本文小编为大家详细介绍“nodejs里nodal的含义是什么”,内容详细,步骤清晰,细节处理妥当,希望这篇“nodejs里nodal的含义是什么”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学...
    99+
    2024-04-02
  • SAP CRM中ON_NEW_FOCUS的用途是什么
    本篇内容主要讲解“SAP CRM中ON_NEW_FOCUS的用途是什么”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“SAP CRM中ON_NEW_FOCUS的用途是什么”吧!Subject: O...
    99+
    2023-06-04
  • python中%和~的含义是什么
    本篇内容介绍了“python中%和~的含义是什么”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!%有哪几种含义?查找手册翻看《The Pyth...
    99+
    2023-06-30
  • es6和es7的含义是什么
    今天小编给大家分享一下es6和es7的含义是什么的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下...
    99+
    2024-04-02
  • SAP CRM和Hybris Commerce的懒加载机制是什么
    本篇内容介绍了“SAP CRM和Hybris Commerce的懒加载机制是什么”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!在WebUI里...
    99+
    2023-06-04
  • Golang中struct{}和struct{}{}的区别是什么
    今天小编给大家分享一下Golang中struct{}和struct{}{}的区别是什么的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解...
    99+
    2023-07-05
  • SAP CRM的Composition测试方法是什么
    这篇文章主要讲解了“SAP CRM的Composition测试方法是什么”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“SAP CRM的Composition测试方法是什么”吧!结论是:如果g...
    99+
    2023-06-04
  • SAP UI5和angular里的常量定义方法是什么
    本篇内容介绍了“SAP UI5和angular里的常量定义方法是什么”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!SAP UI5以我们以前负...
    99+
    2023-06-04
  • cascade的含义是什么
    本篇内容介绍了“cascade的含义是什么”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!cascade=”none”,默认值,告诉Hiber...
    99+
    2023-06-03
  • JVM的含义是什么
    这篇文章主要介绍“JVM的含义是什么”,在日常操作中,相信很多人在JVM的含义是什么问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”JVM的含义是什么”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!JVM是什...
    99+
    2023-06-17
  • PHP_EOL的含义是什么
    本文小编为大家详细介绍“PHP_EOL的含义是什么”,内容详细,步骤清晰,细节处理妥当,希望这篇“PHP_EOL的含义是什么”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。PHP_EOL是一个已经定义好的变量,代表...
    99+
    2023-07-05
  • SAP CRM Product category的决定逻辑是什么
    SAP CRM Product category的决定逻辑是什么,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。(1) UI上我们可以看到Category AB里...
    99+
    2023-06-04
  • SAP CRM 事务码CRMV_EVENT的用法是什么
    这期内容当中小编将会给大家带来有关SAP CRM 事务码CRMV_EVENT的用法是什么,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。我怎样才能知道CRM产品变革组织的业务场景#问题:我想知道何时调用CR...
    99+
    2023-06-04
  • CSS的含义是什么
    这篇文章主要介绍了CSS的含义是什么的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇CSS的含义是什么文章都会有所收获,下面我们一起来看看吧。   CSS的含义   CSS(...
    99+
    2024-04-02
  • function的含义是什么
    本篇内容主要讲解“function的含义是什么”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“function的含义是什么”吧!function是什么意思:答:function的意思是一种关键字。...
    99+
    2023-07-02
  • Hyperledger中worldstate和SAP CRM的CRMD_CUMULAT_H是怎么样的
    这篇文章主要介绍Hyperledger中worldstate和SAP CRM的CRMD_CUMULAT_H是怎么样的,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!Hyperledger fabric是基于区块链技术的...
    99+
    2023-06-04
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作