SAP Commerce Cloud B2B Organization 功能简介
Spartacus B2B Commerce Organization 允许公司管理通过 Spartacus 商务网站进行的采购。 可以将公司的采购经理设置为商业组织的管理员。 管理员可以创建代表组织、地区、城市、部门或公司中任何其他组织实体的单位。 然后将这些单位与买家、送货地址和成本中心相关联,所有这些都是为了允许、控制和跟踪支出。 本节中的以下页面描述了如何使用 B2B Commerce
什么是 SAP Commerce Cloud 的 catalog
hybris 的目录实际上是业务元素的集合。因此,Catalog 可以看作是商品的容器,这些产品在 SAP Commerce Cloud 里是可销售的实体(产品),最终用户可以针对这些实体进行交易。 目录不仅限于项目列表,还包括基于这些项目不同的排列方式。举个例子,如果你去美食餐厅,你可以参考他们的菜单(这实际上是一个通用目录,即所谓的 Generalized catalog)。你会注意到,
ABAP 调用第三方 API,遇到乱码该怎么办?
这是 Jerry 2022 年第二篇原创文章,也是本公众号第 370 篇原创文章。 之前有一个朋友在知乎上向我咨询过这个问题,我觉得很有代表性,所以专门用一篇文章来讲述一些相关知识点。 先看这位朋友遇到的具体问题。 用 Postman 调用第三方接口,里面的中文字符能够正常显示。 然而当用 ABAP 的 HTTP 工具类 CL_HTTP_CLIENT 的 response->g
使用 RxJs 实现一个支持 infinite scroll 的 Angular Component
首先看看我这个支持 infinite scroll 的 Angular 应用的运行时效果: https://jerry-infinite-scroller.stackblitz.io/ 滚动鼠标中键,向下滚动,可以触发 list 不断向后台发起请求,加载新的数据: 下面是具体的开发步骤。 (1) app.component.html 的源代码: <div> <
combineLatest 使用的一个陷阱和基于 debounceTime 的解决方案
首先了解 combineLatest 这个操作符的作用: 组合多个 Observable 以创建一个 Observable,其值是根据其每个输入 Observable 的最新值计算得出的。 其弹珠图如下图所示: 我们有一个限制值流和一个偏移值流。 我们使用 combineLatest 组合这些流以创建一个流,该流将在每次源流之一更改时具有一个新值。 然后我们使用 switchMap 根据
如何在浏览器里开发并运行 SAP UI5 应用
除了 SAP 公司官方支持的 WebIDE,SAP Business Application Studio 这些运行在浏览器端的开发工具,可以进行 SAP UI5 的开发之外,我们还可以使用 StackBlitz 这款在线 web 应用的开发工具,来开发 SAP UI5 应用。 我这里做了一个例子,大家可以通过这个链接 访问。 我们打开这个页面,观察到的屏幕可以分成四个区域,下面逐一介绍。
什么是 StackBlitz 的 web container
如下图所示,我们可以利用 StackBlitz,在浏览器里开发 Node.js 应用: 这一切归功于所谓的 WebContainer,如下图 Booting WebContainer 和 Installing dependencies 的信息: 几年前,我们就能感觉到,web 开发正在走向一个关键的拐点。 WebAssembly 和新的 capabilities API 的出现,
SAP UI5 初学者教程之十七 - 聚合绑定在 UI5 复合控件中的使用试读版
一套适合 SAP UI5 初学者循序渐进的学习教程教程目录 SAP UI5 本地开发环境的搭建 SAP UI5 初学者教程之一:Hello World SAP UI5 初学者教程之二:SAP UI5 的引导过程 Bootstrap SAP UI5 初学者教程之三:开始接触第一个 SAP UI5 控件 SAP UI5 初学者教程之四:XML 视图初探 SAP UI5 初学者教程之五:视图
SAP UI5 初学者教程之十六 - 图标 icon 的使用
一套适合 SAP UI5 初学者循序渐进的学习教程教程目录 SAP UI5 本地开发环境的搭建 SAP UI5 初学者教程之一:Hello World SAP UI5 初学者教程之二:SAP UI5 的引导过程 Bootstrap SAP UI5 初学者教程之三:开始接触第一个 SAP UI5 控件 SAP UI5 初学者教程之四:XML 视图初探 SAP UI5 初学者教程之五:视图
使用 Rxjs 解决 Angular Component 之间的通信问题
本文讨论如果两个 Angular Component 彼此不知道对方的存在,并且也没有共享的父子 Component 时,如何进行通信。 在包括 Angular 在内的许多前端框架中,当我们将应用程序或页面划分为许多小的 UI 组件并将事件绑定到一个嵌套了很多层的组件时,总是存在通信问题。 在 Angular 中,我们使用 @Output() 和 @Input()。 这在正常情况下能够很好的工
什么是 SAP HANA XS JavaScript
SAP HANA XS Javascript (简称 XSJS) 是一种编程模型,应用程序开发人员可以使用它来创建原生 SAP HANA 应用程序,按需向 UI 客户端暴露数据。 应用程序开发人员定义了用于暴露数据以响应通过 HTTP 请求来获取数据的客户端业务逻辑。 使用 XSJS 编程模型,我们可以: 使用 XS JavaScript 创建应用程序创建可重用的 XS JavaScri
SAP UI5 初学者教程之十五 - 对话框和 Fragments 的使用方式
一套适合 SAP UI5 初学者循序渐进的学习教程教程目录 SAP UI5 本地开发环境的搭建 SAP UI5 初学者教程之一:Hello World SAP UI5 初学者教程之二:SAP UI5 的引导过程 Bootstrap SAP UI5 初学者教程之三:开始接触第一个 SAP UI5 控件 SAP UI5 初学者教程之四:XML 视图初探 SAP UI5 初学者教程之五:视图
谈谈 JavaScript 中的空值合并操作符 Nullish coalescing operator
空值合并运算符 (??) 是一个逻辑运算符,仅当左侧(第一个参数)为空或未定义时才返回运算符(第二个参数)的右侧。 在所有其他情况下,它返回第一个参数。 下列这两行测试代码,分别输出 Hello 和 132 因此,正如您在上面的示例中看到的那样,返回 Hello 是因为 undefined 位于运算符的左侧。 如果 null 代替 undefined,结果将是相同的。 在第二个示例中,
如何从 ABAP 调试器里提取某个内表的内容用于单元测试
假设我想把内表 gt_tstct 里的所有记录,全部提取出来,用于 ABAP 单元测试里: 我们可以使用 SAP S/4HANA 里自带的 debugger script,把内表的数据以文本的形式提取出来。 点击 Script 面板:Load Script: 选择标准的 script:RSTPDA_SCRIPT_VALUE_POUND: 点击 start script :
SAP UI5 初学者教程之十四 - 嵌入视图的使用方式试读版
一套适合 SAP UI5 初学者循序渐进的学习教程教程目录 SAP UI5 本地开发环境的搭建 SAP UI5 初学者教程之一:Hello World SAP UI5 初学者教程之二:SAP UI5 的引导过程 Bootstrap SAP UI5 初学者教程之三:开始接触第一个 SAP UI5 控件 SAP UI5 初学者教程之四:XML 视图初探 SAP UI5 初学者教程之五:视图
通过在操作系统中实际操作,学习和理解 Unicode 编码相关知识
我们通过在操作系统里进行一些简单的联系,可以加深对 Unicode 编码这些基础知识的理解和记忆。 Windows10 操作系统下,新建一个记事本文件,输入 123ABCabc 默认的 encoding 格式为 UTF8: 使用 winhex 这款 16进制文件编辑器打开该记事本文件: 看到正文区域的 31 32 33 41 42 43 61 62 63。这些数字代表什么含义?
scss 文件里的特殊符号 @ 和 @include 的用法
Jerry 之前的文章.scss 文件里的特殊符号 - % 百分号和 $美元符号,介绍了 scss 文件里两个特殊符号,百分号 % 和美元符号 $ 的用法。 本文介绍另一个特殊符号 @ 的用法。 使用预处理器的优点之一是它们能够处理复杂、冗长的代码并对其进行简化。 这就是 mixins 派上用场的地方! @mixin border-radius($radius) { -webkit-b
什么是 bootstrap 中的 break point
断点是 Bootstrap 中的触发器,用于触发布局响应按照设备或视口大小的变化而变化。 断点是响应式设计的基石。 使用它们来控制您的布局何时可以适应特定的视口或设备大小。 使用 media query 通过断点来构建你的 CSS。 媒体查询是 CSS 的一项功能,它允许您根据一组浏览器和操作系统参数有条件地应用样式。 我们最常在媒体查询中使用 min-width。 移动优先,响应式设计是我
Angular Universal 的演进历史
想象这样一个场景:您已经在您的 Web 项目上工作了几个月,这很可能是一个 Web 应用程序,更具体地说,是一个“单页应用程序”。 但是现在是时候将您的应用程序交付并发布给数百万用户和……搜索引擎了。 为了使您的应用程序成功,它必须被搜索引擎索引,即需要添加 SEO 支持! 我们可以把 Angular Universal 理解成:Universal is Angular for the Head
SAP 电商云 Spartacus UI 的响应式 UI 实现细节
在文件 projects\storefrontlib\layout\config\default-layout.config.ts 里,定义了各个屏幕尺寸所对应的 breakpoint: export const defaultLayoutConfig: LayoutConfig = { breakpoints: { xs: 576, sm: 768, md: