mcpField
B
btp-abap-environment

btp-abap-environment

github.com/likweitan云与 DevOps7282 次安装2 周前更新
代码仓库

关于 btp-abap-environment

btp-abap-environment 是一项指导技能,介绍如何设置和开发 SAP BTP ABAP Environment。内容包括实例配置、ADT 连接、软件组件、通信、访问管理及 RAP 应用初始搭建。

主要功能

  1. 01设置 ABAP Environment 实例
  2. 02将 ADT 连接到 BTP ABAP 系统
  3. 03管理软件组件和包
  4. 04配置入站与出站通信
  5. 05设置 IAM 角色和目录
  6. 06搭建 RAP Fiori 应用框架

适用场景

  1. 01帮助开发者接入 BTP ABAP 系统
  2. 02配置与外部系统的集成
  3. 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)的设置和开发指南。

工作流

  1. 确定用户的目标:

    • 设置新的 ABAP Environment 实例
    • 将 ADT 连接到 BTP ABAP 系统
    • 配置用于集成的通信安排
    • 创建第一个 ABAP Cloud 项目
    • 管理软件组件和包
    • 设置出站/入站连接
  2. 确定阶段:

    • 初始配置和设置
    • 开发者入门
    • 集成配置
    • 应用开发
  3. 分步指导实现

设置概览

先决条件
要求描述
SAP BTP 账户具有 ABAP Environment 权益的全局账户
子账户已启用 Cloud Foundry 的子账户
ADT已安装 ABAP Development Tools 的 Eclipse
用户具有 Space Developer 角色的平台用户
权益abap/standard 或 abap/saas_oem 服务计划
创建服务实例
  1. 前往 BTP Cockpit → 子账户 → Cloud Foundry → 空间
  2. 创建服务实例:
    • 服务:ABAP Environment
    • 计划:standard
    • 实例名称:例如,my-abap-instance
  3. 提供参数(JSON):
{
  "admin_email": "[email protected]",
  "description": "Development ABAP System",
  "is_development_allowed": true,
  "sapsystemname": "DEV",
  "size_of_runtime": 1,
  "size_of_persistence": 4
}
  1. 创建用于 ADT 连接的服务密钥
将 ADT 连接到 BTP ABAP
  1. 在 Eclipse/ADT 中:文件 → 新建 → ABAP Cloud Project
  2. 选择 SAP BTP ABAP Environment
  3. 输入服务密钥(JSON)或服务实例 URL
  4. 通过浏览器进行身份验证(SAP Identity Authentication)
  5. 项目创建完成 — 开始开发

系统架构

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 应用管理
创建软件组件
  1. 打开 Manage Software Components Fiori 应用
  2. 点击 创建(或使用 + 按钮)
  3. 输入:
    • 名称:Z_MY_COMPONENT
    • 描述:例如,“我的自定义组件”
    • 类型:开发
  4. 克隆组件,使其可在 ADT 中使用
  5. 在组件中创建包
包结构
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 中):

属性值
场景 IDZ_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( ).
入站通信(公开服务)
  1. 创建 OData 服务(基于 RAP)
  2. 将服务绑定添加到通信场景,作为入站服务
  3. 在 Fiori 应用中创建通信安排:
    • 选择场景
    • 创建或分配通信系统
    • 创建通信用户(用于 Basic 身份验证)或配置 OAuth
  4. 外部系统现在可以调用该服务

身份与访问管理

业务角色和目录
IAM App → Business Catalog → Business Role → Business User
  1. 在 ADT 中创建 IAM 应用(用于你的服务绑定)
  2. 创建业务目录,其中包含 IAM 应用
  3. 在 Fiori 中创建业务角色,并包含该目录
  4. 将业务角色分配给用户
创建 IAM 应用
ADT: New → Other → IAM App
Name: Z_MY_APP_IAM
Service Binding: Z_MY_SERVICE_BINDING

首个项目脚手架

创建最简 RAP Fiori 应用的快速步骤:

  1. 创建数据库表
  2. 在该表上创建 CDS 根视图实体
  3. 创建 CDS 投影视图(消费视图)
  4. 创建行为定义(托管型,带草稿)
  5. 创建行为实现类
  6. 创建服务定义,公开投影
  7. 创建服务绑定(OData V4 - UI)
  8. 在 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]

参考资料

相关技能

  • abap-cloud:用于 ABAP Cloud 开发概念和限制
  • authorization-iam:用于设置 IAM 应用和业务角色
  • rap:用于在 BTP ABAP Environment 中构建 RAP 业务对象
  • abapgit:用于在 BTP ABAP Environment 中进行版本控制

评论

支持 Markdown