如何在 SAP BTP 平台上重用另一个已经开发好的 service

简介: 如何在 SAP BTP 平台上重用另一个已经开发好的 service

假设我们的 SAP Business Technology Platform 平台上已经开发好了一个 products-service 项目:


我们希望在另一个 bookstore 项目里,重用 products-service 项目。

打开 products-service 项目,在 package.json 里找到其 name 的值:@sap/capire-products

创建一个 bookstore 项目:


mvn -B archetype:generate -DarchetypeArtifactId=cds-services-archetype -DarchetypeGroupId=com.sap.cds

-DarchetypeVersion=1.17.0

-DgroupId=com.sap.cap -DartifactId=bookstore


使用 open workspace 的功能打开这个项目:

执行如下命令行,安装指向 products-service 项目的依赖:

npm install $(npm pack …/products-service -s)

成功安装完毕,现在在 bookstore 项目里,就能看到其依赖 products-service 的实现了:


npm pack 从 products-service 创建一个 tarball,然后直接将其用作书店应用程序中的依赖项。 有关 npm 包的更多信息:https://docs.npmjs.com/cli-commands/pack.html


使用下面的命令行安装依赖:

npm install && npm dedupe

现在 bookstore 项目的 package.json 里,就能看到 products-service 项目的依赖了。



在 db 文件夹下新建一个 schema.cds 文件,维护 domain model:

在 srv 文件夹下创建一个 services.cds 文件:


在 db 文件夹下新建一个 data 文件夹,然后把 4 个 sample data 的 csv 文件放置进去。

使用命令行部署 domain model 到 sqlite

cds deploy --to sqlite

自动生成了一个 sqlite.db 文件,该文件名维护在 package.json 文件里,文件位于项目根目录下:


修改项目里的 Application.yaml 文件,将数据库的位置指向刚刚运行的命令行 cds deploy --to sqlite 生成的 sqlite.db 文件。


第 11 行设置成 never 的原因是因为我们已经用命令行 cds deploy --to sqlite 对数据库进行了初始化操作。

修改 Business Application Studio 的 settings.json 文件,添加如下内容:

     "sqltools.connections": [
         {
             "name": "sqlite",
             "dialect": "SQLite",
             "database": "/home/user/projects/bookstore/sqlite.db"
         }
     ]

选择 SQLTools

可以看到刚才通过 csv 文件插入的数据:

使用如下 url:

https://workspaces-ws-pdwk4-app1.us10.trial.applicationstudio.cloud.sap/odata/v4/BooksService/Books

就能访问到之前通过 sap.capire.bookstore-Books.csv 插入到 SQLite 里的数据了:

相关文章
|
1月前
|
Linux 开发工具 开发者
关于 SAP HANA 开发那些事
关于 SAP HANA 开发那些事
24 0
|
3月前
|
供应链 BI 项目管理
SAP 业务顾问和开发顾问的各自职责
SAP 业务顾问和开发顾问的各自职责
49 0
|
6月前
|
前端开发 JavaScript Java
如何在 SAP BTP 上创建 Module 之间具有依赖关系的 SAP MTA 应用
如何在 SAP BTP 上创建 Module 之间具有依赖关系的 SAP MTA 应用
71 0
|
2月前
|
机器学习/深度学习 人工智能 监控
SAP Sales Cloud,Service Cloud 和 SAP BTP 平台上的 AI 集成场景
SAP Sales Cloud,Service Cloud 和 SAP BTP 平台上的 AI 集成场景
67 0
|
3月前
|
UED
SAP UI5 开发项目 package.json 文件里的 @sap/ux-specification 依赖
SAP UI5 开发项目 package.json 文件里的 @sap/ux-specification 依赖
20 0
|
6月前
|
JavaScript 前端开发 Java
如何使用 SAP ABAP Development Tool 连接 SAP BTP 上的免费 ABAP 编程环境试读版
如何使用 SAP ABAP Development Tool 连接 SAP BTP 上的免费 ABAP 编程环境试读版
38 0
|
6月前
|
存储 JavaScript 前端开发
使用纯 ABAP 开发 SAP UI5 应用(一):abap2UI5 开发环境搭建介绍
使用纯 ABAP 开发 SAP UI5 应用(一):abap2UI5 开发环境搭建介绍
98 2
|
6月前
|
存储 API 数据库
SAP BTP 平台 ABAP 编程环境如何维护自定义 Unit Of Measure 数据库表 T006
SAP BTP 平台 ABAP 编程环境如何维护自定义 Unit Of Measure 数据库表 T006
60 0
|
6月前
|
XML SQL JavaScript
使用纯 ABAP 开发 SAP UI5 之一:概述
使用纯 ABAP 开发 SAP UI5 之一:概述
49 0
|
6月前
动手开发第一个 SAP Fiori Elements 应用
动手开发第一个 SAP Fiori Elements 应用
27 0