浅谈Java和SAP ABAP的静态代理和动态代理,以及ABAP面向切面编程的尝试
文章目录Java的静态代理静态代理的优缺点ABAP的静态代理Spring AOP的动态代理JDK动态代理的优缺点CGLIB动态代理的优缺点ABAP CGLIB的模拟实现ABAP Pre和Post ExitJerry之前一篇文章 SAP产品增强技术回顾,提到基于Java编程语言实现的SAP Commerce,借助Spring框架的支持,能使用面向切面编程的理念(Aspect Orient
一个小技巧,让您的ABAP OPEN SQL具有自描述效果
ABAP开发人员想必都和图一这种让人摸不着头脑的数据库表字段打过交道。要了解其含义得打开SE11查看字段描述才行。如果在查看了描述信息后,编写代码时使用AS给这些字段名设置可读性更好的别名,下次自己或他人维护,阅读起来就方便多了。这个小技巧或者说倡议,出自SAP社区博客:不用花多大功夫,就能极大提高代码可读性,减轻了将来的维护人员阅读代码的负担。书写可读性良好的代码,也是开发人员职业素养的体现之一
一个ABAP调试器里查看类的静态属性的小技巧
我们知道,像如图一这种类的静态属性,因为不属于类的实例所有,因此调试到这个类的方法内部时,只能通过图二演示的两种方式在调试器显示该属性的值。而一旦调试到该类方法的外部,通常就只能通过"类名=>属性名"的方式来显示静态属性值(图三)。其实还有一种方式,如图四和图五所示。图一:ABAP类的静态属性图二:如何在ABAP调试器里查看类的静态属性图三:在调试器里跳出类的方法之后,如
SAP产品增强技术回顾
Jerry最近的工作和SAP某云产品的扩展性设计相关,因此借这个机会,把我过去工作中积累的SAP产品扩展技术相关的知识做一个梳理和回顾。文章目录SAP产品标准SAP Field Extensibility简述SAP Side-by-Side Extensibility简述SAP In-App Extensibility介绍SAP Business Addin增强概念在多种SAP产品中的应用ABAP
一文让您搞清楚@Resources, @Inject和@Autowired的区别
@TOC本文简述这三个Spring应用里常用的注解区别。@Resources官方文档里对@Resources的说明:The @Resource annotation is part of the JSR-250 annotation collection and is packaged with Jakarta EE.什么是JSR-250呢?访问这个链接:https://jcp.org/en/js
SAP Commerce Impex语法
Header:上图蓝色和浅绿色文字。A header is a single line defining a mapping of the following value lines to the type system. A header applies to all processed value lines until the next header or until the end of
SAP Commerce Extension Module
Extension modules are structural elements of an extension. 类似ABAP开发包的概念。An extension may include several extension modules serving as structural elements. Each of them offers a certain set of function
在SAP分析云里根据业务数据绘制词云(Word Cloud)
词云(WordCloud)的概念,据网络上搜索到的资料,最早由美国一位新闻学专业的副教授提出,对文本中出现频率较高的关键词予以视觉上的突出,一般采取“出现频次越高,关键词渲染尺寸越大”的规则。由这些尺寸不一的关键词形成类似云状的彩色图形,能帮助浏览者一眼扫过图形,就能领略该词云背后文本的主旨。比如周杰伦《双截棍》歌词的词云如下:其中出现频率排前三位的词高亮如下:词云除了广泛应用在互联网前端外,在S
如何使用R语言在SAP Analytics Cloud里绘制各种统计图表
插入一个R visualization:一定要确保图形出现这个model的小图标,代表这个R visualization的模型数据成功绑定之后才能进行下一步操作:模型绑定成功后,在R script编辑器Environment标签页的Data下拉菜单里能看到模型数据。使用这个SAP Analytics Cloud官方教程里提供的excel文件作为数据源:https://www.sapanalytic
SAP Analytics Cloud Model的delta upload(增量导入)功能
初始导入到Model中的数据,一共8行:准备导入增量数据:在本地csv文件新建一条增量记录(2020-3-13):重命名为formatted2-delta1.csv, 导入系统:点击这个draft sources,确保Model Requirements没有issue出现。Import Method选择Update,如果选成Append,仅仅会简单的将第二次上传的csv文件里所有的内容添加到mod
使用SAP Analytics Cloud统计SAP C4C系统创建Lead里包含的产品信息分布情况
从SAP Cloud for Customer系统导出的csv文件:将该csv文件导入到SAP Analytics Cloud去,创建一个新的Model.再创建三个calculation measure,其值用公式填充如下:基于model创建一个新的Story,插入一个comparison bar chart,将model里创建的三个calculation measures设置成该图的measur
如何使用SAP Analytics Cloud统计C4C系统每天新建的Lead个数和预测趋势
从SAP Cloud for Customer系统导出的csv文件,包含每天系统新创建的Lead明细:将该csv导入SAP Analytics Cloud,新建一个modele和story. 在Story的page 1新建一个line chart,dimension设置成creationDate,Left Y-Axis里设置一个Calculation,取名为Lead Number:给该Calcul
使用类似搭积木的低代码开发方式进行SAP API开发
Jerry之前的文章SAP API开发方法大全 介绍的第七种SAP API开发方式,SAP Data Intelligence Graph,实际上是Low Code Development(低代码开发)的一种体现。本文通过一个具体的例子来介绍,如何在SAP Data Intelligence Modeler的图形化界面里,通过类似小朋友玩积木的方式,将各种SAP发布的标准Operator
SAP SAP Data Intelligence Graph json源代码的结构分析
以SAP Data Intelligence标准的示例Graph com.sap.demo.http.server为例,将其json代码保存到本地,使用json编辑器查看:operator之间有8条线连接,对应json文件里connections数组里的8个元素:每个元素包含source和target两个对象。以下图为例:src对象代表图中的get port:target代表名为request的m
SAP Data Intelligence API执行出错的排错之道
使用HTTP GET访问SAP Data Intelligence graph API时,遇到500 internal server error的错误:返回SAP Data Intelligence Modeler,发现graph实例执行状态处于Dead:找到具体引起错误的process:Object Store下载diagnosis information找到错误根源:Graph failure
SAP Data Intelligence API如何获得Access Token
试图使用postman访问SAP Data Intelligence graph API时,遇到401 unauthorized的错误: no authentication means foundAPI url:https://vsystem.ingress.http://dh-l5uukgih.dhaas-live.shoot.live.k8s-hana.ondemand.com/app/pip
SAP Data Intelligence Graph使用浏览器访问的url规范
假设我想使用浏览器访问这个处于运行状态的Graph实例:将其Runtime handle抄下来: 43d854735c3b48a0b786905154c44817https://vsystem.ingress.http://dh-l5uukgih.dhaas-live.shoot.live.k8s-hana.ondemand.com/app/pipeline-modeler/service/v1/
用SAP WebIDE将CRUD Master-Detail应用打包成Hybrid App
登录api.sap.com, 找到自己想用ABAP调用的API:API References里,点击Code Snippt,即可看到API Hub自动生成的使用ABAP调用该API的代码:在SAP WebIDE里,选择Tools->Preferences,启用Hybrid App Toolkit:选择WebIDE里的Master-Detail应用文件夹,右键菜单里选择Mobile->E
如何导入某网站的certificate证书到SAP ABAP系统
以Github网站为例,F12打开Chrome开发者工具,Security标签页,View certificate,点击view detais,选择Copy to file.事务码STRUST,打开SSL client SSL Client (Standard),切换到编辑模式:选择import certificate,选择之前从Chrome导出的certificate,点击Add to cert
利用ES6标准化JavaScript proxy对象拦截SAP C4C页面的HTML div原生操作
SAP Cloud for Customer的UI实现里,有不少使用JavaScript在运行时动态创建div标签的例子。如果想研究这些情形发生的上下文,我们可以使用ES6提供的标准Proxy对象,给浏览器原生的document.createElement方法注入一个proxy,里面设置一个断点。这样每当div标签页被动态创建时,我们注入的proxy将会取代标准的document.createEl