关于 btp-abap-environment
btp-abap-environment 是一项指导技能,介绍如何设置和开发 SAP BTP ABAP Environment。内容包括实例配置、ADT 连接、软件组件、通信、访问管理及 RAP 应用初始搭建。
主要功能
- 01设置 ABAP Environment 实例
- 02将 ADT 连接到 BTP ABAP 系统
- 03管理软件组件和包
- 04配置入站与出站通信
- 05设置 IAM 角色和目录
- 06搭建 RAP Fiori 应用框架
适用场景
- 01帮助开发者接入 BTP ABAP 系统
- 02配置与外部系统的集成
- 03启动 RAP Fiori 应用开发
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ likweitan/ abap-skills --skill btp-abap-environment安装后在 Claude Code 中输入/btp-abap-environment确认已加载。
附带文件references/setup-scripts.md
详细介绍
SAP BTP ABAP Environment
SAP BTP ABAP Environment(Steampunk)的设置和开发指南。
工作流
-
确定用户的目标:
- 设置新的 ABAP Environment 实例
- 将 ADT 连接到 BTP ABAP 系统
- 配置用于集成的通信安排
- 创建第一个 ABAP Cloud 项目
- 管理软件组件和包
- 设置出站/入站连接
-
确定阶段:
- 初始配置和设置
- 开发者入门
- 集成配置
- 应用开发
-
分步指导实现
设置概览
先决条件
| 要求 | 描述 |
|---|---|
| SAP BTP 账户 | 具有 ABAP Environment 权益的全局账户 |
| 子账户 | 已启用 Cloud Foundry 的子账户 |
| ADT | 已安装 ABAP Development Tools 的 Eclipse |
| 用户 | 具有 Space Developer 角色的平台用户 |
| 权益 | abap/standard 或 abap/saas_oem 服务计划 |
创建服务实例
- 前往 BTP Cockpit → 子账户 → Cloud Foundry → 空间
- 创建服务实例:
- 服务:ABAP Environment
- 计划:standard
- 实例名称:例如,
my-abap-instance
- 提供参数(JSON):
{
"admin_email": "[email protected]",
"description": "Development ABAP System",
"is_development_allowed": true,
"sapsystemname": "DEV",
"size_of_runtime": 1,
"size_of_persistence": 4
}
- 创建用于 ADT 连接的服务密钥
将 ADT 连接到 BTP ABAP
- 在 Eclipse/ADT 中:文件 → 新建 → ABAP Cloud Project
- 选择 SAP BTP ABAP Environment
- 输入服务密钥(JSON)或服务实例 URL
- 通过浏览器进行身份验证(SAP Identity Authentication)
- 项目创建完成 — 开始开发
系统架构
SAP BTP Subaccount
└── Cloud Foundry Space
└── ABAP Environment Service Instance
├── ABAP System (development/production)
├── Software Components (ZLOCAL, custom)
├── Communication Arrangements (integrations)
└── Business Services (OData, RFC)
软件组件
| 组件 | 描述 |
|---|---|
ZLOCAL | 本地开发 — 不可传输(类似于 $TMP) |
| 自定义 | 可传输组件 — 通过 gCTS 或 Manage Software Components 应用管理 |
创建软件组件
- 打开 Manage Software Components Fiori 应用
- 点击 创建(或使用
+按钮) - 输入:
- 名称:
Z_MY_COMPONENT - 描述:例如,“我的自定义组件”
- 类型:开发
- 名称:
- 克隆组件,使其可在 ADT 中使用
- 在组件中创建包
包结构
Z_MY_COMPONENT (Software Component)
└── Z_MY_APP (Structure Package)
├── Z_MY_APP_MODEL (Sub-package: CDS views, database tables)
├── Z_MY_APP_BIZ (Sub-package: business logic, RAP BOs)
└── Z_MY_APP_SRV (Sub-package: service definitions, bindings)
通信管理
概念
| 构件 | 用途 |
|---|---|
| 通信场景 | 定义入站/出站服务和身份验证方法的模板 |
| 通信系统 | 表示外部系统(主机、端口、凭据) |
| 通信安排 | 绑定场景 + 系统 + 用户,从而激活集成 |
| 通信用户 | 用于入站通信的技术用户 |
创建通信场景
"Defined via ADT: New → Other → Communication Scenario
"Name: Z_MY_COMM_SCENARIO
通信场景定义(在 ADT 中):
| 属性 | 值 |
|---|---|
| 场景 ID | Z_MY_COMM_SCENARIO |
| 场景类型 | 由客户管理 |
| 入站服务 | 入站 OData 服务列表 |
| 出站服务 | 出站 HTTP 服务列表 |
| 允许的身份验证方法 | Basic、OAuth 2.0、x.509 |
出站通信(调用外部服务)
"Get HTTP destination from communication arrangement
DATA(lo_dest) = cl_http_destination_provider=>create_by_comm_arrangement(
comm_scenario = 'Z_MY_COMM_SCENARIO'
service_id = 'Z_MY_OUTBOUND_SERVICE' ).
"Create HTTP client
DATA(lo_client) = cl_web_http_client_manager=>create_by_http_destination( lo_dest ).
"Execute request
DATA(lo_request) = lo_client->get_http_request( ).
lo_request->set_uri_path( '/api/resource' ).
lo_request->set_header_field( i_name = 'Content-Type' i_value = 'application/json' ).
DATA(lo_response) = lo_client->execute( if_web_http_client=>get ).
DATA(lv_status) = lo_response->get_status( ).
DATA(lv_body) = lo_response->get_text( ).
lo_client->close( ).
入站通信(公开服务)
- 创建 OData 服务(基于 RAP)
- 将服务绑定添加到通信场景,作为入站服务
- 在 Fiori 应用中创建通信安排:
- 选择场景
- 创建或分配通信系统
- 创建通信用户(用于 Basic 身份验证)或配置 OAuth
- 外部系统现在可以调用该服务
身份与访问管理
业务角色和目录
IAM App → Business Catalog → Business Role → Business User
- 在 ADT 中创建 IAM 应用(用于你的服务绑定)
- 创建业务目录,其中包含 IAM 应用
- 在 Fiori 中创建业务角色,并包含该目录
- 将业务角色分配给用户
创建 IAM 应用
ADT: New → Other → IAM App
Name: Z_MY_APP_IAM
Service Binding: Z_MY_SERVICE_BINDING
首个项目脚手架
创建最简 RAP Fiori 应用的快速步骤:
- 创建数据库表
- 在该表上创建 CDS 根视图实体
- 创建 CDS 投影视图(消费视图)
- 创建行为定义(托管型,带草稿)
- 创建行为实现类
- 创建服务定义,公开投影
- 创建服务绑定(OData V4 - UI)
- 在 Fiori Elements 中发布并预览
实用的 Fiori 应用
| 应用 | 用途 |
|---|---|
| 管理软件组件 | 创建、克隆、拉取软件组件 |
| 通信安排 | 配置入站/出站集成 |
| 通信系统 | 注册外部系统 |
| 维护业务角色 | 创建并分配角色 |
| 应用作业 | 安排和监控后台作业 |
| 自定义业务配置 | 维护配置表 |
输出格式
在帮助处理 BTP ABAP Environment 相关主题时,请按以下结构组织回复:
## BTP ABAP Environment Guidance
### Phase
- [Setup / Development / Integration / Deployment]
### Steps
[Step-by-step instructions]
### Configuration
[Relevant settings or code]
参考资料
- SAP BTP ABAP Environment:https://help.sap.com/docs/btp/sap-business-technology-platform/abap-environment
- 通信管理:https://help.sap.com/docs/btp/sap-business-technology-platform/communication-management
- 入门教程:https://developers.sap.com/group.abap-env-get-started.html
相关技能
- abap-cloud:用于 ABAP Cloud 开发概念和限制
- authorization-iam:用于设置 IAM 应用和业务角色
- rap:用于在 BTP ABAP Environment 中构建 RAP 业务对象
- abapgit:用于在 BTP ABAP Environment 中进行版本控制
评论
支持 Markdown