协作头脑风暴
brainstorming
在实现前澄清需求、探索设计选择,并形成清晰的开发方向。
btp-abap-environment【开发与工程】Help with SAP BTP ABAP Environment setup and development including service instance creation, ADT connectivity, communication arrangements, communication scenarios, inbound/outbound services, destination configuration, identity and access management, software components, and first-project scaffolding. Use when users ask about BTP ABAP Environment, SA…
独立 GitHub 快照 · 自动分类 · 以原作者文档为准
Guide for setting up and developing in the SAP BTP ABAP Environment (Steampunk).
Determine the user's goal:
Identify the phase:
Guide implementation step by step
| Requirement | Description |
|---|---|
| SAP BTP Account | Global account with entitlements for ABAP Environment |
| Subaccount | Cloud Foundry-enabled subaccount |
| ADT | Eclipse with ABAP Development Tools installed |
| User | Platform user with Space Developer role |
| Entitlements | abap/standard or abap/saas_oem service plan |
my-abap-instance{
"admin_email": "admin@example.com",
"description": "Development ABAP System",
"is_development_allowed": true,
"sapsystemname": "DEV",
"size_of_runtime": 1,
"size_of_persistence": 4
}
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)
| Component | Description |
|---|---|
ZLOCAL | Local development — not transportable (like $TMP) |
| Custom | Transportable components — managed via gCTS or Manage Software Components app |
+ button)Z_MY_COMPONENTZ_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)
| Artifact | Purpose |
|---|---|
| Communication Scenario | Template defining inbound/outbound services and auth methods |
| Communication System | Represents the external system (host, port, credentials) |
| Communication Arrangement | Binds scenario + system + user, activating the integration |
| Communication User | Technical user for inbound communication |
"Defined via ADT: New → Other → Communication Scenario
"Name: Z_MY_COMM_SCENARIO
Communication scenario definition (in ADT):
| Property | Value |
|---|---|
| Scenario ID | Z_MY_COMM_SCENARIO |
| Scenario Type | Managed by Customer |
| Inbound Services | List of inbound OData services |
| Outbound Services | List of outbound HTTP services |
| Allowed Auth Methods | 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( ).
IAM App → Business Catalog → Business Role → Business User
ADT: New → Other → IAM App
Name: Z_MY_APP_IAM
Service Binding: Z_MY_SERVICE_BINDING
Quick steps to create a minimal RAP-based Fiori app:
| App | Purpose |
|---|---|
| Manage Software Components | Create, clone, pull software components |
| Communication Arrangements | Configure inbound/outbound integrations |
| Communication Systems | Register external systems |
| Maintain Business Roles | Create and assign roles |
| Application Jobs | Schedule and monitor background jobs |
| Custom Business Configurations | Maintain configuration tables |
When helping with BTP ABAP Environment topics, structure responses as:
## BTP ABAP Environment Guidance
### Phase
- [Setup / Development / Integration / Deployment]
### Steps
[Step-by-step instructions]
### Configuration
[Relevant settings or code]