SAP UI5 的规则构建器控件介绍
SAP 业务规则是一种逻辑,它定义业务的某些方面,并总是解析为真或假的布尔值。非技术用户可以通过简化的规则语言和用户界面维护此逻辑。因此,业务规则允许应用程序的客户添加他们自己的逻辑,而不需要技术定制或编码。 规则构建器控件允许业务用户基于 SAP UI5 在应用程序中创建和编辑业务规则。该控件定义了用于在SAP Fiori 应用程序中创建业务规则的SAP标准UX,并且应该成为SAP Fiori
给 SAP Commerce Cloud Storefront 设置 endpoint
店面端点为客户提供对其架设的店面的访问权限。 端点配置在构建清单(build manifest.json )和云门户(Cloud Portal)中进行管理。 在构建清单中,您可以为店面域(domain)定义可选路径。 在云门户中,您可以编辑域并应用 SSL 证书(certificate)来保护店面。 在构建清单中,可以将路径附加到店面的域。 在 aspect 的 accstorefront 部
SAP Commerce Cloud ASM 模块的登录过程
电商领域里的销售代表(Sales Representative)和卖家审批者(Seller Approver)必须使用辅助服务模块 ASM 登录店面,以处理其客户的报价。 要为客户报价,销售代表登录 ASM 并为该客户启动会话。 同样,卖方批准者登录 ASM 并启动一个会话,让客户批准销售代表提交的供应商报价。 销售代表和卖家审批者登录 ASM 并启动客户会话,如下所示: (1) 通过将 ?
SAP Spartacus 项目开发时需要注意的一些常见错误
SAP Spartacus 的工作原理与 Hybris Accelerator 不同。SAP 不建议直接复制 Spartacus library 的源代码并在源代码级别上进行修改,这会破坏 Spartacus 的可升级性。 正确的做法,应该将 Spartacus 用作库并使用其他方式(例如依赖注入、组件映射、outlet)来更改其行为。 正确的做法示例: 避免 outlet 的滥用outlet
Hybris Accelerator 的一些局限介绍和 Spartacus 项目的诞生
很多做过 SAP Hybris 实施的朋友,对于 Hybris Accelerator 都应该很熟悉了。 Hybris Accelerator 是一个即用型电子商务实现,客户可以快速安装和运行。由于其本身的模板特性,可以方便地进行自定义。Accelerator 基于 Java Spring 开发而成,其 Storefront 开发是使用 JSP(Java 服务器页面)完成的。 如今,单体架构和
Spartacus 开源项目给 SAP Commerce Cloud Storefront 共享的一些有用的特性介绍
Spartacus 的主要构建块是后端集成。 默认情况下,Spartacus 通过 OCC v2 REST API 与 SAP Commerce Cloud 连接。 但是,由于其灵活的架构,我们可以通过添加或替换现有的 OCC 连接器来连接到任何其他系统。 这意味着必须在每个 JavaScript 店面中完成的数据加载和状态管理的所有基础工作都已经完成。 这节省了大量的开发时间。 更重要的是,Sp
关于 Angular 里 module 和 Component 包含粒度的一个讨论
有一位 Angular 开发者提出了这样一个问题: 我们有一个中型 Angular 应用程序,大概包含了 150 个 Component. 其中许多组件需要注入服务类并需要在应用程序中声明其他组件。 我们一直在尝试并寻找对开发人员更友好的一种方法。 目前的做法是,为每个组件创建一个模块。模块导入子组件模块并提供(或导入)组件所需的所有服务。它还导出组件本身,以便其他组件可以通过模块引用它。
关于 Node.js Stream API 的用法概述
多年来,Node.js 开发人员创建了许多包,其目的是让使用流变得更容易。 什么是 Node.js Stream? Node.js 应用程序由单个进程运行,无需为每个请求创建新线程。 Node 在其标准库中提供了一组异步 I/O 原语,可以防止 JavaScript 代码阻塞,通常,Node.js 中的库是使用非阻塞范例编写的,使阻塞行为成为异常而不是正常行为。 流是数据的集合——就像数
使用 Node.js Stream API 减少服务器端内存消耗的一个具体例子
让我们看一个示例,展示在内存消耗方面,采用流的编程思路带来的巨大优越性。 我们先创建一个大文件: const fs = require('fs'); const file = fs.createWriteStream('./big.file'); for(let i=0; i<= 1e6; i++) { file.write('thi
使用 Dynatrace 对 Node.js 应用的性能数据进行分析
JavaScript Storefront 应用程序的性能问题的表现形式有多种,最典型的是响应时间(response time)的恶化,甚至由于资源耗尽导致的网站完全宕机。 由于 JavaScript Storefront 涉及许多组件,因此确定性能问题的根源可能具有挑战性,如下图所示: 一个客户请求发送到 JavaScript Storefront 之后,Storefront 应用对该请求
Node.js 应用高 CPU 占用率的分析方法
我们在本地运行 Node.js 应用,使用 --inspect 标志启动应用程序,再次执行负载测试,在 Chrome 浏览器中打开 chrome://inspect: 单击应用下方的 inspect 按钮,然后开始 CPU 占用率分析: 等待一段时间后,就能看到 CPU profile 的结果: 如何采集生产系统上的 Node.js 应用性能数据呢? 在大多数情况下,如果性能问
如何增强 ABAP 系统,允许开发人员给 ABAP 对象设置标签,方便快速检索
标签(Tag)几乎是信息管理软件的一个必备功能,目的是帮助用户更迅速地检索出自己需要的数据,以及对海量数据进行更有效的管理。 如今在 ABAP Development Tool 里也支持标签功能了,可以像使用各种云笔记一样,给常用类型的ABAP对象添加自定义的标签。这个标签分配的功能并未给 ABAP 对象增添任何新的功能,而是帮助使用者能够按照自己的实际需求,迅速将需要的 ABAP 资源检索出来
SAP 电商云 Spartacus 服务器端渲染的单步调试详细步骤
本文介绍如何在本地调试 SAP Spartacus Node.js 应用。 按照这个链接 安装 Spartacus. 在 package.json 的 scripts 区域,生成了一个名叫 build:ssr 的指令,默认按照 —prod 参数来构建。 如果使用这个 script,我们不得不调试 minified and uglified code, 不太直观。 也就是说,去掉 --p
SAP 电商云 Spartacus UI 的 Product Category Navigation UI 实现
本文研究 SAP 电商云 Spartacus UI Product Category Navigation UI 的实现明细。 selector: cx-category-navigation Component name:CategoryNavigationComponent navigation node 的数据,从 service 里获取的: 根据 Componentdata 拿
关于 SAP ABAP CL_HTTP_CLIENT API 中的 SSL_ID 参数
ABAP HTTP API:CL_HTTP_CLIENT, create_by_url 有一个输入参数 SSL_ID, 类型为 SSFAPPLSSL, 这个参数应该传什么值进去呢? 打开事物码 STRUST, 菜单 Environment -> SSL Client Identifies: 查到一个 ID 为:ANONYM 我们看这张架构图: 上图 CL_HTTP_C
如何使用 ABAP 程序消费 SAP ABAP OData 服务
正如本教程的开篇介绍文章SAP OData 开发教程 - 从入门到提高(包含 SEGW, RAP 和 CDP)所提到的,SAP OData 服务开发,从实现技术上来说,可以分为三大类。因此本教程也分为三大部分,分别进行介绍。本文是本教程的文章目录。 作者简介Jerry Wang,2007 年从电子科技大学计算机专业硕士毕业后加入 SAP 成都研究院工作至今。Jerry 是 SAP 社区导师,SA
一些 Next Generation ABAP Platform 的新语法用例
什么是 NGAP(Next Generation ABAP Platform)? SAP NetWeaver 7.40 发布,并附带其 ABAP 应用服务器 AS ABAP 7.40。 在 AS ABAP 7.40 中,ABAP 语言具有一些不错的新特性。 AS ABAP 7.40 是 AS ABAP 7.31(又名 AS ABAP 7.03)的继承者,后者是基于 AS ABAP 7.0 构
SAP ABAP OData 服务嵌套创建功能的实现步骤(Create Deep)试读版
正如本教程的开篇介绍文章SAP OData 开发教程 - 从入门到提高(包含 SEGW, RAP 和 CDP)所提到的,SAP OData 服务开发,从实现技术上来说,可以分为三大类。因此本教程也分为三大部分,分别进行介绍。本文是本教程的文章目录。 作者简介Jerry Wang,2007 年从电子科技大学计算机专业硕士毕业后加入 SAP 成都研究院工作至今。Jerry 是 SAP 社区导师,SA
SAP CRM Fiori 应用的 Deep Create 行为和实现分析
什么是 OData 的 Deep Create 行为?我们通过一个具体的例子来了解。 下图是 SAP CRM Fiori 应用之一的 My Opportunities 界面。 我们点击 + 按钮,可以创建新的 Opportunity 实例。 在 Opportunity 创建页面里,可以维护 Opportunity 抬头区域的字段值。所谓抬头区域,可以理解成 Opportunity ODa
使用函数节流思想避免 SAP UI5 应用里按钮短时间内被高频重复点击试读版
一套适合 SAP UI5 初学者循序渐进的学习教程作者简介Jerry Wang,2007 年从电子科技大学计算机专业硕士毕业后加入 SAP 成都研究院工作至今。Jerry 是 SAP 社区导师,SAP 中国技术大使。在长达 15 年的 SAP 标准产品开发生涯里,Jerry 曾经先后参与 SAP Business ByDesign, SAP CRM, SAP Cloud for Customer,