SAP Cloud Application Programming 里的@(path) 注解
标题:SAP Cloud Application Programming 里的@(path:’/browse’) service 实现的 .cds 文件源代码: using { sap.capire.bookshop as my } from '../db/schema'; service CatalogService @(path:'/browse') {
使用 Visual Studio Code SQLite 扩展来浏览 SAP CAP 数据库
在 SAP Cloud Application Programming 编程模型里,我们可以使用下面的命令行,使用持久化数据库( persistent database ) 来存储 entity 的数据。 cds deploy —to sqlite:my.db cds deploy —to sqlite:my.dbfilling sap.capire.bookshop.Authors fr
SAP Cloud Application Programming bookshop 例子 Vue页面不能正常显示的原因分析
我在本地用cds run 命令启动 SAP Cloud Application Programming 应用后,访问如下 url: http://localhost:4004/vue/index.html 发现 Chrome 开发者工具里有一些错误消息,导致页面无法正常渲染: 仔细观察这个vue应用,发现它调用了下列这个endpoint: endpoint返回的结果里,genre和
SAP Cloud Application Programming bookshop 例子的 Fiori Preview
进入 bookshop 文件夹,命令行 cds watch,以 development mode 启动应用: 点击超链接,即可通过 Fiori Elements 预览这些 service: 预览的 url 具有如下格式: http://localhost:4004/$fiori-preview/AdminService/Authors#preview-app&/?sap-iapp
SAP Cloud Application Programming CDS 模型间 association 的设置
本文提到的在线书店的例子,参考 Jerry 的文章:SAP Cloud Application Programming 介绍 - 2021 更新版 我定义了两个业务模型,名称分别为 Books 和 Authors, 其中 Books 模型有一个名为 author 的字段,该字段通过 Association, 关联到 Authors 模型。因为这里使用的是 Association to,而非 As
SAP Cloud Application Programming 介绍(2021 更新版)
本文提到的在线书店的例子,参考 Jerry 的文章:SAP Cloud Application Programming 介绍 - 2021 更新版 我定义了两个业务模型,名称分别为 Books 和 Authors, 其中 Books 模型有一个名为 author 的字段,该字段通过 Association, 关联到 Authors 模型。因为这里使用的是 Association to,而非 As
ABAP初学者如何系统地学习ABAP编程?
有很多 ABAP 的从业人员,在各种社交媒体平台上,向我询问过这个问题。 先说说我自己的实际情况。我是2007年硕士毕业加入 SAP 成都研究院的,本科和研究生做的项目,一直是用 C/C++ 开发。进入 SAP 之后,从事 SAP Business ByDesign 的标准开发,因此需要从零开始学 ABAP. 我是怎么和SAP结缘的 - Jerry的SAP校园招聘之路 我当时是按照使用
如何把 Kitten编程猫上开发出来的项目打包成安卓平台上可以安装的apk文件
我们使用 Kitten编程猫这款少儿编程工具,开发出来的项目,另存成本地工程文件,格式为bcm: bcm文件打开可以发现,内容是json格式的明文数据,包含了该项目内使用到的scene(场景),素材(styles), 积木(blocks)等等。 通过编程猫另一款名叫格式工厂的开发工具,可以基于 bcm 转换成 windows 操作系统下的exe执行文件。 然而,我们可以通过一个叫做 AP
Kitten编程猫的工程文件 bcm,能发布成Android平台的apk文件吗
根据Kitten编程猫社区的这个帖子: https://shequ.codemao.cn/community/367019 产生的不是可执行文件或者源码,产生的是配置文件,告诉执行文件的框架该怎么做的配置文件。 必须依赖编程猫软件,可以在网上下载编程猫格式工厂来把bcm文件转为exe文件。 不能直接转换成安卓的apk文件。可以参照这个帖子: https://shequ.codem
Kitten编程猫里如何先后播放不同的背景音乐
Kitten编程猫 里说 XXX 直到结束 这个积木,在语音结束之前,不会执行下一块的对话积木。 如果此时收到其他事件,比如上图的“转盘停止”的事件,那么“转盘停止” 事件处理函数里的对话积木,会先于“说 XXX 直到结束” 下一块的对话积木而执行,而这并不是我们想要的效果。 持续播放的背景音乐根据Kitten编程猫的帮助文档,如果想给作品添加持续的背景音乐,我们可以通过重复执行和播放音乐
ABAP 数据结构激活时的错误消息 - combination reference table field does not exist
看看这种错误消息的一个例子: combination reference table/field XXX does not exist 引起错误的字段类型为LOSMENGE,字段名为INSLO: 该字段的基本数据类型(Data Type)为 QUAN,长度为13. 根据ABAP帮助文档, QUAN类型需要和某种单位字段结合在一起,用于描述实际业务流程中的数量,比如 一本书,一件啤酒
一个好用的Visual Studio Code扩展 - Live Server,适用于前端小工具开发
Jerry 平时在写一些简单的 SAP UI5 应用时,喜欢从这篇文章里介绍的脚手架应用作为模板,开始编程: 一个用于SAP UI5学习的脚手架应用,没有任何后台API的依赖 上面这篇文章的SAP UI5脚手架应用,使用到了nodejs express库作为本地服务器,来预览 SAP UI5 应用运行时的效果。 今天我找到了另一个 Visual Studio Code 扩展:Live S
一个好用的 SAP UI5 本地打包(build)工具,自动生成Component-preload.js
在阅读本文之前,推荐先阅读 Jerry 这篇文章,以了解必要的前置知识: 什么是 SAP UI5 的 Component-preload.js, 什么是Minification和Ugification 本文使用的出于演示目的的 SAP UI5 应用源代码,位于我的Github 仓库里: https://github.com/wangzixi-diablo/ui5-toolset 将其克隆到
一个好用的 SAP UI5 本地打包(build)工具,自动生成Component-preload.js
在阅读本文之前,推荐先阅读 Jerry 这篇文章,以了解必要的前置知识: 什么是 SAP UI5 的 Component-preload.js, 什么是Minification和Ugification 本文使用的出于演示目的的 SAP UI5 应用源代码,位于我的Github 仓库里: https://github.com/wangzixi-diablo/ui5-toolset 将其克隆到
SAP Spartacus B2B 页面信息提示图标的弹出窗口显示实现逻辑
这个弹出窗口的技术实现,通过SAP Spartacus 自定义的popover Component实现而成: 注意,当我刚接触Angular时,误以为下图标号为1的a标签,和标号为2的自定义标签cx-org-toggle-status, 会按照其在unit-details.component.html里出现的先后顺序,出现在最终的页面里。 实际上,我这种理解是错误的。 SAP Spa
SAP Spartacus 自定义Popover指令,如何实现弹出对话框自动关闭功能
Popover Component的 appendToBody如果设置成true: 则其 DOM 元素会出现在 body 节点的 末尾: 当我点击屏幕任意空白位置时,这个Popover 对话框会自动消失。 准确的说,是从 DOM tree中移除,而不是设置成invisible. Popover 自定义指令的实现源代码里,会通过@HostListener来监控宿主元素的 docu
SAP成都开发的一个SAP C4C POC - 通过名片扫描的方式录入联系人数据到系统
该POC实现的功能:通过名片扫描的方式录入联系人数据到系统,由SAP成都研究院Cloud for Customer开发团队开发。 登录C4C系统,选择Card Scan工作中心: 通过C4C标准的attachment控件将需要扫描的名片以图片的格式上传到SAP C4C系统: 待扫描的图片如下: 名片上传成功之后,点击Scan Card按钮: 扫描完毕后,名片信息自动录
SAP Cloud for Customer UI Designer里如何消费Object Value Selector(OVS)
先看最后实现的效果: 我有一个字段,用户既手动输入Employee ID,也可以点击字段的矩形框,打开Value help: 假设我选中ID为1的Employee,则其first name和last name,会自动填充到UI 对应字段上,即SAP 从业人员经常说的“自动带出来”。 下面是详细的实现步骤。 按照这篇文章SAP Cloud for Customer(C4C)里
SAP Cloud for Customer Cloud(C4C)Application Studio里的代码调试
和其他IDE使用方式一样,首先在需要设置断点的代码行数前面双击,设置断点: 使用菜单Debug->Start Debugging,切换成调试模式: 看到Show output from:Debug里,显示了提示信息: Debugger has been started for user WANGJERRY1: 之后,一旦使用该user在UI上操作,只要该UI操作会触发我们
如何分辨 SAP Fiori Launchpad 里的真假 Fiori 应用
这是Jerry 2021年的第 23 篇文章,也是汪子熙公众号总共第 294 篇原创文章。 本文标题里的“真假” Fiori 应用,改成业内术语应该是:基于 SAP UI5 的原生应用(包括 Fiori Elements 实现的应用) 和其他所有采用非 SAP UI5 框架实现的 Fiori-Like 应用,比如嵌入到浏览器里执行的 SAP GUI 应用和基于 SAP WebClient UI