Initial commit
This commit is contained in:
314
references/connectivity-guide.md
Normal file
314
references/connectivity-guide.md
Normal file
@@ -0,0 +1,314 @@
|
||||
# Connectivity Guide - Complete Troubleshooting Reference
|
||||
|
||||
## Table of Contents
|
||||
|
||||
1. [Overview](#overview)
|
||||
2. [Destination Configuration](#destination-configuration)
|
||||
3. [Cloud Connector Setup](#cloud-connector-setup)
|
||||
4. [Troubleshooting Connectivity Issues](#troubleshooting-connectivity-issues)
|
||||
5. [Specific System Scenarios](#specific-system-scenarios)
|
||||
6. [Service Center](#service-center)
|
||||
7. [Cloud Foundry Tools](#cloud-foundry-tools)
|
||||
8. [Network Requirements](#network-requirements)
|
||||
9. [Documentation Links](#documentation-links)
|
||||
|
||||
---
|
||||
|
||||
## Overview
|
||||
|
||||
SAP Business Application Studio dev spaces include a built-in web proxy for accessing:
|
||||
- On-premise systems (ABAP, databases)
|
||||
- On-premise Git repositories
|
||||
- npm repositories
|
||||
- External services
|
||||
|
||||
**Security Principle**: Always protect access to external systems including Private Artifact Repositories, on-premise systems, and trusted systems.
|
||||
|
||||
---
|
||||
|
||||
## Destination Configuration
|
||||
|
||||
### Required Properties (All Destinations)
|
||||
|
||||
```properties
|
||||
WebIDEEnabled = true
|
||||
HTML5.DynamicDestination = true
|
||||
```
|
||||
|
||||
### WebIDEUsage Property by System Type
|
||||
|
||||
| System Type | WebIDEUsage Value | WebIDEAdditionalData |
|
||||
|-------------|-------------------|---------------------|
|
||||
| ABAP System | `odata_abap,dev_abap` | Do not set |
|
||||
| SAP Cloud for Customer | `odata_c4c` | As required |
|
||||
| Generic Service URL | `odata_gen` | As required |
|
||||
| SAP Business Accelerator Hub | `apihub_sandbox` | As required |
|
||||
|
||||
### ABAP System Additional Properties
|
||||
|
||||
| Property | Value | Required |
|
||||
|----------|-------|----------|
|
||||
| `sap-client` | SAP client number (e.g., `100`) | Yes for ABAP |
|
||||
| `WebIDEUsage` | `odata_abap,dev_abap` | Yes |
|
||||
| URL | Host and port only (no path) | Yes |
|
||||
|
||||
### Creating Destinations
|
||||
|
||||
**Method 1: SAP BTP Cockpit**
|
||||
1. Navigate to subaccount → Connectivity → Destinations
|
||||
2. Click New Destination
|
||||
3. Enter URL, authentication, and additional properties
|
||||
4. Save and test with Check Connection
|
||||
|
||||
**Method 2: Service Center**
|
||||
For OData services, use Service Center to discover and add services.
|
||||
|
||||
---
|
||||
|
||||
## Cloud Connector Setup
|
||||
|
||||
### Prerequisites
|
||||
- Cloud Connector installed and connected to SAP BTP subaccount
|
||||
- System URL exposed in Cloud Connector
|
||||
|
||||
### Configuration Requirements
|
||||
|
||||
1. **Virtual URL Match**: Cloud Connector virtual URL (host:port) must exactly match destination URL property
|
||||
2. **Protocol**: Must be HTTP
|
||||
3. **Internal URL**: Correct internal host and port for your network
|
||||
|
||||
### Required Path Access
|
||||
|
||||
Grant "Path and all sub-paths" access for:
|
||||
|
||||
```
|
||||
/sap/opu/odata/ # OData services
|
||||
/sap/bc/ui5_ui5/ # UI5 resources
|
||||
/sap/bc/adt/ # ABAP Development Tools
|
||||
/sap/bc/ui2/app_index/ # App index
|
||||
```
|
||||
|
||||
### Finding Internal ABAP Port
|
||||
|
||||
1. Open SAP GUI transaction `/NSMICM`
|
||||
2. Go to More → Go to → Services
|
||||
3. Locate port for desired protocol
|
||||
|
||||
---
|
||||
|
||||
## Troubleshooting Connectivity Issues
|
||||
|
||||
### Step 1: Verify Destination in BTP Cockpit
|
||||
|
||||
1. Log into SAP BTP Cockpit
|
||||
2. Navigate to subscribed subaccount
|
||||
3. Go to Connectivity → Destinations
|
||||
4. Verify destination exists with correct properties:
|
||||
- `WebIDEEnabled = true`
|
||||
- `HTML5.DynamicDestination = true`
|
||||
- Correct `WebIDEUsage` value
|
||||
- URL contains host:port only (no path)
|
||||
5. Use Check Connection to test
|
||||
|
||||
### Step 2: Verify Destination from Dev Space
|
||||
|
||||
Run in terminal:
|
||||
|
||||
```bash
|
||||
# Refresh destination list
|
||||
curl localhost:8887/reload
|
||||
|
||||
# Generate destination list
|
||||
curl $H2O_URL/api/listDestinations -o dests.json
|
||||
```
|
||||
|
||||
Open `dests.json`, right-click → Format Document, and verify:
|
||||
- Destination name matches exactly
|
||||
- Host property points to correct URL
|
||||
- Required properties present
|
||||
|
||||
### Step 3: Fiori-Specific Verification
|
||||
|
||||
1. Open Command Palette
|
||||
2. Run `Fiori: Open Environment Check`
|
||||
3. Select destination
|
||||
4. Provide credentials if prompted
|
||||
5. Save and view results in `/home/user/projects`
|
||||
|
||||
Report shows:
|
||||
- All available destinations
|
||||
- OData service catalog retrieval results
|
||||
- Configuration issues
|
||||
|
||||
### Step 4: Cloud Connector Verification
|
||||
|
||||
In Cloud Connector:
|
||||
1. Check Connectivity → Cloud Connectors in BTP Cockpit
|
||||
2. Verify system virtual URL matches destination URL
|
||||
3. Verify protocol is HTTP
|
||||
4. Check Access Control grants required path access
|
||||
5. Review Cloud Connector logs for errors
|
||||
|
||||
### Common Errors
|
||||
|
||||
#### "Tunnel handshake failed"
|
||||
|
||||
**Causes**:
|
||||
- Proxy or network policy blocking connection
|
||||
- No internet access to BAS connectivity service host
|
||||
|
||||
**Solutions**:
|
||||
1. Verify network allows connection to connectivity service
|
||||
2. Check connectivity service host for your region
|
||||
3. See [SAP Note 3035686](https://me.sap.com/notes/3035686)
|
||||
|
||||
#### OData Service List Not Displayed
|
||||
|
||||
1. Test in internal network: `[https://<system-url>/sap/opu/odata/IWFND/CATALOGSERVICE;v=2/ServiceCollection`](https://<system-url>/sap/opu/odata/IWFND/CATALOGSERVICE;v=2/ServiceCollection`)
|
||||
2. Verify `sap-opu-iwfnd-catalogservice` service is active (transaction `/NSICF`)
|
||||
3. Check destination credentials
|
||||
|
||||
#### Workbench Failed to Connect
|
||||
|
||||
Verify network allows websocket connections to SAP Business Application Studio.
|
||||
|
||||
---
|
||||
|
||||
## Specific System Scenarios
|
||||
|
||||
### SAP S/4HANA Cloud
|
||||
|
||||
1. Establish trust with SAP S/4HANA Cloud
|
||||
2. Manually create destination in BTP subaccount
|
||||
3. Follow: [Integrating SAP Business Application Studio](https://help.sap.com/docs/SAP_S4HANA_CLOUD/0f69f8fb28ac4bf48d2b57b9637e81fa/22bc724fd51a4aa4a4d1c5854db7e026.html)
|
||||
|
||||
For Cloud Foundry deployment target, setup can be automated. See [Extending SAP S/4HANA Cloud](https://help.sap.com/docs/btp/sap-business-technology-platform/extending-sap-s-4hana-cloud-in-cloud-foundry-and-kyma-environment).
|
||||
|
||||
### On-Premise ABAP with Principal Propagation
|
||||
|
||||
Follow guides:
|
||||
- [Configuring Principal Propagation](https://help.sap.com/docs/connectivity/sap-btp-connectivity-cf/configuring-principal-propagation)
|
||||
- [Principal Propagation in HTTPS Scenario](https://community.sap.com/t5/technology-blogs-by-sap/how-to-guide-principal-propagation-in-an-https-scenario/ba-p/13325048)
|
||||
|
||||
### SAPUI5 Extension Projects
|
||||
|
||||
For failures during preview or Add Extension wizard:
|
||||
|
||||
1. Locate failing request in browser network trace (filter `/sap/bc/`)
|
||||
2. Get internal host:port from Cloud Connector
|
||||
3. Test URL from internal network with internal host:port
|
||||
4. Verify `/sap/bc/adt` service is active
|
||||
|
||||
---
|
||||
|
||||
## Service Center
|
||||
|
||||
### Access Methods
|
||||
|
||||
1. Click Service Center icon in activity bar
|
||||
2. View → Open View → search "Service Center"
|
||||
3. Click + in External Resources section of Storyboard
|
||||
|
||||
### Available Service Providers
|
||||
|
||||
| Provider | Purpose |
|
||||
|----------|---------|
|
||||
| **SAP System** | Systems from BAS subaccount |
|
||||
| **SAP Business Accelerator Hub** | SAP products, packages, services, events |
|
||||
| **Developer Hub** | Published products and services |
|
||||
| **Unified Customer Landscape** | Registered S/4HANA Cloud systems |
|
||||
|
||||
### Capabilities
|
||||
|
||||
- Explore services, events, business objects, functions
|
||||
- Use services as data sources
|
||||
- Consume events and functions
|
||||
- Create new services from business objects
|
||||
|
||||
---
|
||||
|
||||
## Cloud Foundry Tools
|
||||
|
||||
### Access
|
||||
|
||||
Open Command Palette, type `CF`
|
||||
|
||||
### Key Operations
|
||||
|
||||
**Login**:
|
||||
1. Select authentication method
|
||||
2. Enter credentials
|
||||
3. Choose organization and space
|
||||
|
||||
**Target Management**:
|
||||
- Create list of frequently used CF targets
|
||||
- Switch targets with single click
|
||||
- Reload target tree to refresh
|
||||
|
||||
**Service Instance Creation**:
|
||||
- Marketplace services: Select service, plan, enter name
|
||||
- User-provided services: For services not in marketplace
|
||||
|
||||
**Service Binding**:
|
||||
- Binds service to locally run application
|
||||
- Generates `.env` file with connection info
|
||||
- Available via Command Palette or Targets view
|
||||
|
||||
---
|
||||
|
||||
## Network Requirements
|
||||
|
||||
### Outbound IP Addresses
|
||||
|
||||
Use outbound IPs when connecting FROM BAS to external services.
|
||||
|
||||
Example (eu10 region):
|
||||
- 18.158.7.155
|
||||
- 3.65.235.145
|
||||
- (See availability docs for complete list)
|
||||
|
||||
### Inbound Connectivity
|
||||
|
||||
For firewall allowlisting:
|
||||
- Connectivity service host: `[https://connectivity.[region].applicationstudio.cloud.sap`](https://connectivity.[region].applicationstudio.cloud.sap`)
|
||||
- Inbound IPs listed in availability documentation
|
||||
|
||||
For trial environments, use DNS resolution:
|
||||
```bash
|
||||
nslookup <connectivity_service_host>
|
||||
```
|
||||
|
||||
### Performance Recommendation
|
||||
|
||||
Connect to the data center closest to your physical location.
|
||||
|
||||
---
|
||||
|
||||
## Documentation Links
|
||||
|
||||
| Resource | URL |
|
||||
|----------|-----|
|
||||
| Connectivity Troubleshooting | [https://help.sap.com/docs/bas/sap-business-application-studio/connectivity](https://help.sap.com/docs/bas/sap-business-application-studio/connectivity) |
|
||||
| Connecting to External Systems | [https://help.sap.com/docs/bas/sap-business-application-studio/connecting-to-external-systems](https://help.sap.com/docs/bas/sap-business-application-studio/connecting-to-external-systems) |
|
||||
| Cloud Connector | [https://help.sap.com/docs/connectivity/sap-btp-connectivity-cf/cloud-connector](https://help.sap.com/docs/connectivity/sap-btp-connectivity-cf/cloud-connector) |
|
||||
| Destination Configuration | [https://help.sap.com/docs/connectivity/sap-btp-connectivity-cf/http-destinations](https://help.sap.com/docs/connectivity/sap-btp-connectivity-cf/http-destinations) |
|
||||
| Availability/IP Addresses | [https://help.sap.com/docs/bas/sap-business-application-studio/sap-business-application-studio-availability](https://help.sap.com/docs/bas/sap-business-application-studio/sap-business-application-studio-availability) |
|
||||
| Service Center | [https://help.sap.com/docs/bas/sap-business-application-studio/explore-services-using-service-center](https://help.sap.com/docs/bas/sap-business-application-studio/explore-services-using-service-center) |
|
||||
|
||||
### SAP Guided Answers
|
||||
|
||||
- [Configure SAP BTP Destination](https://ga.support.sap.com/dtp/viewer/index.html#/tree/3046/actions/45995:48363:53594:54336)
|
||||
- [Validate Destination Configuration](https://ga.support.sap.com/dtp/viewer/index.html#/tree/3046/actions/45995:48363:53594:48364:51208)
|
||||
|
||||
### Support Components
|
||||
|
||||
| Issue Area | Component |
|
||||
|------------|-----------|
|
||||
| Connectivity | CA-BAS-CNSM |
|
||||
| S/4HANA Cloud Extension | BC-SRV-APS-EXT-BAS |
|
||||
| S/4HANA Cloud Setup | BC-SRV-APS-COM |
|
||||
|
||||
---
|
||||
|
||||
**Last Updated**: 2025-11-22
|
||||
**Source**: [https://github.com/SAP-docs/sap-btp-business-application-studio/tree/main/docs](https://github.com/SAP-docs/sap-btp-business-application-studio/tree/main/docs)
|
||||
270
references/dev-space-types.md
Normal file
270
references/dev-space-types.md
Normal file
@@ -0,0 +1,270 @@
|
||||
# Dev Space Types - Complete Reference
|
||||
|
||||
## Table of Contents
|
||||
|
||||
1. [Overview](#overview)
|
||||
2. [SAP Fiori](#sap-fiori)
|
||||
3. [Full Stack Cloud Application](#full-stack-cloud-application)
|
||||
4. [Full-Stack Application Using Productivity Tools](#full-stack-application-using-productivity-tools)
|
||||
5. [SAP HANA Native Application](#sap-hana-native-application)
|
||||
6. [SAP Mobile Application](#sap-mobile-application)
|
||||
7. [SAP SME Business Application](#sap-sme-business-application)
|
||||
8. [Basic](#basic)
|
||||
9. [Managing Dev Spaces](#managing-dev-spaces)
|
||||
10. [Documentation Links](#documentation-links)
|
||||
|
||||
---
|
||||
|
||||
## Overview
|
||||
|
||||
Dev spaces are isolated cloud-based development environments functioning as Developer Virtual Appliances. Each contains:
|
||||
- Tailored development tools
|
||||
- Pre-installed runtimes
|
||||
- Scenario-specific configurations
|
||||
- Security and connectivity instruments
|
||||
|
||||
**Key Principle**: Select the dev space type that matches your development scenario. Extensions can be added or removed later.
|
||||
|
||||
---
|
||||
|
||||
## SAP Fiori
|
||||
|
||||
**Purpose**: Develop SAP Fiori applications for Cloud Foundry, ABAP Cloud, and ABAP on-premise environments.
|
||||
|
||||
### Predefined Extensions
|
||||
|
||||
| Extension | Description |
|
||||
|-----------|-------------|
|
||||
| **Basic Tools** | Code editing, file management, split view, window management, preferences |
|
||||
| **Fiori Freestyle Tools** | Fiori templates, UI5 CLI, Grunt CLI, abap-deploy CLI |
|
||||
| **SAP Fiori Tools** | Generators, Application Modeler, Guided Development, Service Modeler, XML Annotation Language Server |
|
||||
| **HTML5 Runner** | Local HTML5 application execution with run configurations |
|
||||
| **MTA Tools** | Cloud Foundry CLI, MTA Build Tool, deployment plugin |
|
||||
| **SAPUI5 Layout Editor** | Visual XML view development |
|
||||
| **SAPUI5 Adaptation Project** | Extend SAPUI5 applications using Adaptation Project |
|
||||
| **SAPUI5 Extensibility** | Extend SAPUI5 ABAP repository applications |
|
||||
| **Startup Server** | Trigger-based actions during development |
|
||||
|
||||
### Use Cases
|
||||
- SAP Fiori Elements applications
|
||||
- Freestyle SAPUI5 applications
|
||||
- SAP Web IDE project migration
|
||||
- ABAP deployment scenarios
|
||||
|
||||
---
|
||||
|
||||
## Full Stack Cloud Application
|
||||
|
||||
**Purpose**: Build business services and applications extending SAP S/4HANA using SAP Cloud Application Programming Model (CAP) with Node.js or Java.
|
||||
|
||||
### Predefined Extensions
|
||||
|
||||
| Extension | Description |
|
||||
|-----------|-------------|
|
||||
| **Basic Tools** | Code editing, file management, split view, preferences |
|
||||
| **CAP Tools** | CDS command-line tools, code editors, database management, application runners |
|
||||
| **CDS Graphical Modeler** | Visual design of CDS models (entities, types, enums, associations) |
|
||||
| **Fiori Application** | Yeoman generator for Fiori applications |
|
||||
| **Fiori Freestyle Tools** | UI5 CLI, Grunt CLI, abap-deploy CLI |
|
||||
| **SAP Fiori Tools** | Code generation, modelers, visualization |
|
||||
| **Java Tools** | Java development, testing, debugging, execution |
|
||||
| **SAP HANA Database Explorer** | Browser interface for HANA runtime objects |
|
||||
| **MTA Tools** | Cloud Foundry CLI, MTA Build Tool |
|
||||
| **SAPUI5 Layout Editor** | Visual XML view development |
|
||||
| **Startup Server** | Trigger-based action execution |
|
||||
|
||||
### Use Cases
|
||||
- CAP Node.js applications
|
||||
- CAP Java applications
|
||||
- S/4HANA Cloud extensions
|
||||
- Full-stack applications with Fiori frontend
|
||||
|
||||
---
|
||||
|
||||
## Full-Stack Application Using Productivity Tools
|
||||
|
||||
**Purpose**: Low-code development with high productivity tools for desktop and mobile applications.
|
||||
|
||||
### Predefined Extensions
|
||||
|
||||
| Extension | Description |
|
||||
|-----------|-------------|
|
||||
| **Basic Tools** | Code editing, file management, split view, preferences |
|
||||
| **Productivity Tools** | Low-code capabilities for full-stack development |
|
||||
| **CAP Tools** | CDS command-line and database management |
|
||||
| **CDS Graphical Modeler** | Visual CDS model design |
|
||||
| **Mobile Services App Development Tools** | OData service modeling, MDK apps, Mobile Cards |
|
||||
| **Fiori Freestyle Tools** | UI5 CLI, Grunt CLI, abap-deploy CLI |
|
||||
| **HTML5 Runner** | Local HTML5 execution |
|
||||
| **Java Tools** | Java development and debugging |
|
||||
| **MTA Tools** | Cloud Foundry CLI, MTA Build Tool |
|
||||
| **SAP Fiori Tools** | Fiori elements development |
|
||||
| **SAPUI5 Layout Editor** | Visual XML view development |
|
||||
| **Startup Server** | Trigger-based actions |
|
||||
|
||||
### Use Cases
|
||||
- Rapid application development
|
||||
- Low-code business applications
|
||||
- Cross-platform (desktop + mobile) apps
|
||||
|
||||
---
|
||||
|
||||
## SAP HANA Native Application
|
||||
|
||||
**Purpose**: Build and deploy native SAP HANA applications and analytical models.
|
||||
|
||||
### Predefined Extensions
|
||||
|
||||
| Extension | Description |
|
||||
|-----------|-------------|
|
||||
| **Basic Tools** | Code editing, file management, split view, preferences |
|
||||
| **SAP HANA Tools** | Graphical and text-based editors, project generators, productivity tools |
|
||||
| **SAP HANA Calculation View Editor** | Edit calculation views, synonyms, analytical privileges |
|
||||
| **SAP HANA Database Explorer** | Access and inspect HANA runtime objects |
|
||||
| **SAP HANA Smart Data Integration Tools** | Data federation, replication, transformation |
|
||||
| **MTA Tools** | Cloud Foundry CLI, MTA Build Tool |
|
||||
| **Startup Server** | Trigger-based action execution |
|
||||
|
||||
### Special Requirements
|
||||
|
||||
**HANA Cloud Connection**: SAP Business Application Studio must connect to your SAP HANA Cloud instance. Configuration needed when:
|
||||
- Working on an Azure account
|
||||
- Connecting to HANA instance in a different region
|
||||
|
||||
Configure SAP HANA Cloud to allow connections from BAS IP addresses. See [Availability](https://help.sap.com/docs/bas/sap-business-application-studio/sap-business-application-studio-availability).
|
||||
|
||||
### Use Cases
|
||||
- Calculation views development
|
||||
- SQLScript procedures
|
||||
- HANA database artifact development
|
||||
- Analytical models
|
||||
|
||||
---
|
||||
|
||||
## SAP Mobile Application
|
||||
|
||||
**Purpose**: Customize, deploy, and manage iOS and Android applications using SAP Mobile Development Kit (MDK).
|
||||
|
||||
### Predefined Extensions
|
||||
|
||||
| Extension | Description |
|
||||
|-----------|-------------|
|
||||
| **Basic Tools** | Code editing, file management, split view, preferences |
|
||||
| **Mobile Services App Development Tools** | OData service modeling, MDK native apps, SAP Mobile Cards |
|
||||
| **HTML5 Runner** | Local HTML5 application execution |
|
||||
| **Java Tools** | Java development and debugging |
|
||||
| **MTA Tools** | Cloud Foundry CLI, MTA Build Tool |
|
||||
| **Startup Server** | Trigger-based action execution |
|
||||
|
||||
### Use Cases
|
||||
- Native iOS applications
|
||||
- Native Android applications
|
||||
- SAP Mobile Cards content
|
||||
- OData-based mobile apps
|
||||
|
||||
---
|
||||
|
||||
## SAP SME Business Application
|
||||
|
||||
**Purpose**: Build and extend SME applications using the SME programming model and Business Application Factory.
|
||||
|
||||
### Predefined Extensions
|
||||
- SME programming model tools
|
||||
- Business Application Factory integration
|
||||
- Basic development tools
|
||||
|
||||
### Use Cases
|
||||
- SME-specific applications
|
||||
- Business Application Factory extensions
|
||||
|
||||
---
|
||||
|
||||
## Basic
|
||||
|
||||
**Purpose**: Minimal development environment for basic development needs.
|
||||
|
||||
### Predefined Extensions
|
||||
|
||||
| Extension | Description |
|
||||
|-----------|-------------|
|
||||
| **SAP Basic Tools** | Core development functionality |
|
||||
|
||||
### Use Cases
|
||||
- Simple development tasks
|
||||
- Custom extension testing
|
||||
- Minimal resource usage
|
||||
|
||||
---
|
||||
|
||||
## Managing Dev Spaces
|
||||
|
||||
### Creating a Dev Space
|
||||
|
||||
1. Open SAP Business Application Studio
|
||||
2. Click **Create Dev Space**
|
||||
3. Enter a name (required before activation)
|
||||
4. Select application type
|
||||
5. Optionally select additional extensions
|
||||
6. Confirm creation
|
||||
|
||||
### Storage Limits
|
||||
|
||||
| Plan | Storage per Dev Space |
|
||||
|------|----------------------|
|
||||
| Standard | 10 GB |
|
||||
| Free | 4 GB |
|
||||
| Trial | 4 GB |
|
||||
|
||||
### Modifying Extensions
|
||||
|
||||
1. Open Dev Space Manager
|
||||
2. Click Edit icon on dev space
|
||||
3. Dev space must be **STOPPED**
|
||||
4. Add or remove extensions
|
||||
5. Save changes
|
||||
|
||||
### Downloading Dev Space Content
|
||||
|
||||
Available when dev space is:
|
||||
- **RUNNING**: To save contents
|
||||
- **ERROR**: To recover data
|
||||
|
||||
Process:
|
||||
1. Click download in Dev Space Manager
|
||||
2. Generates compressed tar file
|
||||
3. Save to local machine
|
||||
|
||||
### Importing Dev Space Content
|
||||
|
||||
1. Create and start new dev space
|
||||
2. Open Explorer → `/home/user/` folder
|
||||
3. Upload tar file to projects folder
|
||||
4. Extract: `tar xvzf <filename.tar.gz>`
|
||||
|
||||
### Dev Space States
|
||||
|
||||
| State | Description |
|
||||
|-------|-------------|
|
||||
| STOPPED | Not consuming resources, files preserved |
|
||||
| STARTING | Transitioning to running |
|
||||
| RUNNING | Active, resources allocated |
|
||||
| ERROR | Problem occurred, data recoverable |
|
||||
| SAFE MODE | After error recovery download |
|
||||
|
||||
---
|
||||
|
||||
## Documentation Links
|
||||
|
||||
| Resource | URL |
|
||||
|----------|-----|
|
||||
| Dev Space Types | [https://help.sap.com/docs/bas/sap-business-application-studio/dev-space-types](https://help.sap.com/docs/bas/sap-business-application-studio/dev-space-types) |
|
||||
| Dev Space Manager | [https://help.sap.com/docs/bas/sap-business-application-studio/working-in-dev-space-manager](https://help.sap.com/docs/bas/sap-business-application-studio/working-in-dev-space-manager) |
|
||||
| SAP Fiori Dev Space | [https://help.sap.com/docs/bas/sap-business-application-studio/sap-fiori](https://help.sap.com/docs/bas/sap-business-application-studio/sap-fiori) |
|
||||
| Full Stack Cloud Application | [https://help.sap.com/docs/bas/sap-business-application-studio/full-stack-cloud-application](https://help.sap.com/docs/bas/sap-business-application-studio/full-stack-cloud-application) |
|
||||
| HANA Native Application | [https://help.sap.com/docs/bas/sap-business-application-studio/sap-hana-native-application](https://help.sap.com/docs/bas/sap-business-application-studio/sap-hana-native-application) |
|
||||
| Mobile Application | [https://help.sap.com/docs/bas/sap-business-application-studio/sap-mobile-application](https://help.sap.com/docs/bas/sap-business-application-studio/sap-mobile-application) |
|
||||
|
||||
---
|
||||
|
||||
**Last Updated**: 2025-11-22
|
||||
**Source**: [https://github.com/SAP-docs/sap-btp-business-application-studio/tree/main/docs](https://github.com/SAP-docs/sap-btp-business-application-studio/tree/main/docs)
|
||||
464
references/development-workflow.md
Normal file
464
references/development-workflow.md
Normal file
@@ -0,0 +1,464 @@
|
||||
# Development Workflow - Complete Reference
|
||||
|
||||
## Table of Contents
|
||||
|
||||
1. [Project Creation](#project-creation)
|
||||
2. [UI Development](#ui-development)
|
||||
3. [Runtime Management](#runtime-management)
|
||||
4. [Task Explorer](#task-explorer)
|
||||
5. [Run Configurations](#run-configurations)
|
||||
6. [Debugging](#debugging)
|
||||
7. [MTA Development](#mta-development)
|
||||
8. [CI/CD Integration](#cicd-integration)
|
||||
9. [Extensions Management](#extensions-management)
|
||||
10. [Security Features](#security-features)
|
||||
11. [Data Management](#data-management)
|
||||
12. [Documentation Links](#documentation-links)
|
||||
|
||||
---
|
||||
|
||||
## Project Creation
|
||||
|
||||
### Methods Available
|
||||
|
||||
| Method | Description |
|
||||
|--------|-------------|
|
||||
| **Template Wizard** | Create from predefined templates based on dev space |
|
||||
| **Terminal** | Command-line project creation |
|
||||
| **Git Clone** | Clone existing repository |
|
||||
| **Import** | Import ZIP/TAR files from local system |
|
||||
| **Yeoman Generators** | Use any Yeoman generator from npm registry |
|
||||
|
||||
### Using the Template Wizard
|
||||
|
||||
**Access Methods**:
|
||||
1. Menu: File → New Project from Template
|
||||
2. Get Started page
|
||||
3. Command Palette: `SAP Business Application Studio: New Project from Template`
|
||||
|
||||
**Process**:
|
||||
1. Select template type (based on dev space extensions)
|
||||
2. Fill in required details
|
||||
3. Navigate with Back/Next or wizard tree
|
||||
4. Review error messages at field and step levels
|
||||
5. Generate project with folder structure and artifacts
|
||||
|
||||
**Important**: When using templates, you become code owner. Implement automated vulnerability scanning in CI/CD pipeline.
|
||||
|
||||
### Importing Projects
|
||||
|
||||
**Supported Formats**: ZIP, TAR (including from SAP Web IDE)
|
||||
|
||||
**Steps**:
|
||||
1. Ensure active workspace exists
|
||||
2. Access Import via Get Started page or Command Palette
|
||||
3. Select compressed file
|
||||
4. Project added to dev space
|
||||
|
||||
---
|
||||
|
||||
## UI Development
|
||||
|
||||
### Layout Editor
|
||||
|
||||
Visual editor for XML views in SAP Fiori projects. **Note**: Safari browser not supported.
|
||||
|
||||
**Components**:
|
||||
|
||||
| Component | Description |
|
||||
|-----------|-------------|
|
||||
| Controls Tab | Drag-and-drop SAPUI5 controls |
|
||||
| Outline Tab | Hierarchical view with semantic controls |
|
||||
| Canvas | Visual representation of XML view |
|
||||
| Properties Pane | Editable properties with data binding |
|
||||
| Events Pane | Event handler management |
|
||||
|
||||
**Opening**: Right-click XML view → Open With → Layout Editor
|
||||
|
||||
**Key Operations**:
|
||||
- Add controls via drag-and-drop
|
||||
- Rearrange controls
|
||||
- Keyboard navigation (double-click to select parent)
|
||||
- Extract controls into fragments
|
||||
|
||||
### Supported SAPUI5 Controls (150+)
|
||||
|
||||
**Input & Selection**: Button, CheckBox, RadioButton, Input, TextArea, ComboBox, Select, DatePicker, TimePicker, SearchField, Slider
|
||||
|
||||
**Containers & Layouts**: App, Page, Panel, FlexBox, HBox, VBox, Grid, Form, SimpleForm, List, Table, Carousel
|
||||
|
||||
**Display**: Label, Text, Icon, Image, Link, Breadcrumbs, IconTabBar, ObjectHeader
|
||||
|
||||
**Smart Controls**: SmartChart, SmartTable, SmartForm, SmartField
|
||||
|
||||
**Outline Tab Only**: Semantic actions (AddAction, EditAction, SaveAction), Suite controls (BusinessCard, Charts), Classic UI controls
|
||||
|
||||
### Data Binding
|
||||
|
||||
**Prerequisites**: Define data set for view first
|
||||
|
||||
**Binding Types**:
|
||||
- Properties of controls
|
||||
- Aggregations of controls
|
||||
|
||||
**Notes**:
|
||||
- Modifying existing data set may invalidate bindings
|
||||
- For non-OData models, use source code directly
|
||||
- Applications can incorporate OData Service component
|
||||
|
||||
**Related Binding Operations**:
|
||||
- Define entity sets
|
||||
- Bind simple controls
|
||||
- Bind aggregate-type controls (templates)
|
||||
- Bind to i18n model
|
||||
- Bind to label annotations
|
||||
|
||||
### Storyboard
|
||||
|
||||
Graphical view of application architecture showing data models, services, and UI front ends.
|
||||
|
||||
**Available in Dev Spaces**:
|
||||
- SAP Fiori
|
||||
- Full-Stack Application Using Productivity Tools
|
||||
- SAP Mobile Application
|
||||
- Full Stack Cloud Application
|
||||
|
||||
**Features**:
|
||||
- Trigger graphical editors
|
||||
- Visualize component relationships
|
||||
- Quick application structure comprehension
|
||||
|
||||
### Keyboard Shortcuts (Layout Editor)
|
||||
|
||||
| Action | Shortcut |
|
||||
|--------|----------|
|
||||
| Select parent | Ctrl + Click |
|
||||
| Navigate to parent | Up Arrow |
|
||||
| Navigate to child | Down Arrow |
|
||||
| Navigate siblings | Left/Right Arrow |
|
||||
| Move control up | Shift + Left Arrow |
|
||||
| Move control down | Shift + Right Arrow |
|
||||
| Drop position up (drag) | Shift |
|
||||
| Drop position down (drag) | Alt |
|
||||
|
||||
---
|
||||
|
||||
## Runtime Management
|
||||
|
||||
SAP Business Application Studio uses **asdf** for runtime version management.
|
||||
|
||||
### Default Versions
|
||||
|
||||
Only one LTS version per runtime officially supported. Check versions:
|
||||
|
||||
```bash
|
||||
java -version
|
||||
node --version
|
||||
python --version
|
||||
```
|
||||
|
||||
### Installing New Versions
|
||||
|
||||
1. Command Palette → Runtime: Install
|
||||
2. Select runtime type
|
||||
3. Choose specific version
|
||||
|
||||
Installed versions persist in dev space storage.
|
||||
|
||||
### Setting Default Versions
|
||||
|
||||
1. Command Palette → Runtime: Set default
|
||||
2. Select runtime type
|
||||
3. Choose preferred version
|
||||
|
||||
Applies across all workspaces in dev space.
|
||||
|
||||
### Java Proxy Certificate
|
||||
|
||||
After installing Java via terminal:
|
||||
```
|
||||
Command Palette → Runtime: Add Proxy Certificate to Java
|
||||
```
|
||||
Enables connectivity to on-premise Java repositories during Maven build.
|
||||
|
||||
### Direct asdf Usage
|
||||
|
||||
asdf can be used directly from terminal for advanced version management.
|
||||
|
||||
---
|
||||
|
||||
## Task Explorer
|
||||
|
||||
Create, modify, and run scenario-specific tasks through dedicated UI.
|
||||
|
||||
**Requirement**: Dev space extensions must provide scenario-specific tasks.
|
||||
|
||||
### Using Task Explorer
|
||||
|
||||
1. Click Task Explorer icon in sidebar
|
||||
2. Click `+` to create task
|
||||
3. Select "Configure" to generate in `tasks.json`
|
||||
4. Modify via right-click menu
|
||||
5. Run via Run icon or Build button
|
||||
|
||||
### Features
|
||||
|
||||
- Tasks organized by user intent groups
|
||||
- Only workspace-relevant tasks displayed
|
||||
- Configurations stored for reuse
|
||||
- Integrates with MTA build/deploy workflows
|
||||
|
||||
---
|
||||
|
||||
## Run Configurations
|
||||
|
||||
Define how projects and unit tests execute.
|
||||
|
||||
### Execution Priority
|
||||
|
||||
1. Default configuration from project creation
|
||||
2. Newly added configuration
|
||||
3. Most recently executed (among multiple)
|
||||
4. User selection for multiple projects
|
||||
|
||||
### Supported Frameworks
|
||||
|
||||
- SAP Fiori Tools applications
|
||||
- CAP Java Modules
|
||||
- CAP Node Applications
|
||||
|
||||
### Creating Configurations
|
||||
|
||||
Access Run and Debug view → Add Configuration → Select framework type
|
||||
|
||||
---
|
||||
|
||||
## Debugging
|
||||
|
||||
Integrated debugging for Node.js runtime (JavaScript, TypeScript, compiled-to-JS languages).
|
||||
|
||||
### Setup
|
||||
|
||||
1. Open Run and Debug view
|
||||
2. Select configuration from dropdown
|
||||
3. Choose Node.js to generate `launch.json`
|
||||
|
||||
### Preset Configurations
|
||||
|
||||
- Launch Program
|
||||
- Create JavaScript Debug Terminal
|
||||
- Run Current File
|
||||
|
||||
### Debugging Modes
|
||||
|
||||
| Mode | Description |
|
||||
|------|-------------|
|
||||
| Launch | Start program in debug state |
|
||||
| Attach | Connect to running program in debug state |
|
||||
|
||||
**Attach via**: Command Palette → Debug: Attach to Node Process
|
||||
|
||||
### Breakpoints
|
||||
|
||||
- Toggle: Click editor margin or press F9
|
||||
- Add function breakpoints via BREAKPOINTS section
|
||||
- Deactivate/remove all at once
|
||||
|
||||
---
|
||||
|
||||
## MTA Development
|
||||
|
||||
### MTA Editor (Visual)
|
||||
|
||||
Edit `mta.yaml` without direct YAML editing.
|
||||
|
||||
**Open**: Right-click `mta.yaml` → Open With → MTA Editor
|
||||
|
||||
**Important Notes**:
|
||||
- Visual editor removes comments and formats file
|
||||
- Use code editor if comments needed
|
||||
- YAML requires spaces (not tabs) for indentation
|
||||
|
||||
### MTA Tools
|
||||
|
||||
| Tool | Description |
|
||||
|------|-------------|
|
||||
| Cloud Foundry CLI | Deploy and manage CF services/apps |
|
||||
| Cloud MTA Build Tool | Build `.mtar` archives from `mta.yaml` |
|
||||
| CF CLI MTA Plugin | MTA operations in CF environment |
|
||||
| CF Targets Plugin | Manage multiple API targets |
|
||||
| CF CLI Copy Env Plugin | Export VCAP_SERVICES locally |
|
||||
| Chisel | TCP tunnel over HTTP via SSH |
|
||||
|
||||
### Basic MTA Commands
|
||||
|
||||
```bash
|
||||
# Build MTA archive
|
||||
mbt build
|
||||
|
||||
# Deploy to Cloud Foundry
|
||||
cf deploy mta_archives/<app>.mtar
|
||||
```
|
||||
|
||||
### Deployment Troubleshooting
|
||||
|
||||
If MTAR deployment fails due to `package-lock.json` conflicts or `node_modules` issues:
|
||||
|
||||
1. Create `.npmrc` file at project level
|
||||
2. Configure to reference npm public registry
|
||||
3. Disable npm cache in SAP BAS
|
||||
|
||||
---
|
||||
|
||||
## CI/CD Integration
|
||||
|
||||
SAP Continuous Integration and Delivery automates build, test, and deployment.
|
||||
|
||||
### Prerequisites
|
||||
|
||||
- Execute "Get started with SAP Business Application Studio" booster
|
||||
- Add CI/CD service via "Get started with SAP Build Code" booster
|
||||
|
||||
### Features
|
||||
|
||||
- One `config.yaml`-based job per project
|
||||
- View build logs and steps
|
||||
- Manually trigger builds (webhooks recommended)
|
||||
- Edit configuration
|
||||
- Delete jobs and config files
|
||||
|
||||
### Usage
|
||||
|
||||
1. Open CI/CD view from activity bar
|
||||
2. Click "Create Job" (disabled if job exists)
|
||||
3. Access actions via job context menu
|
||||
|
||||
---
|
||||
|
||||
## Extensions Management
|
||||
|
||||
### VS Code Extensions
|
||||
|
||||
Install from [Open VSX Registry](https://open-vsx.org/).
|
||||
|
||||
**Disclaimer**: SAP does not certify third-party extensions. Users assume:
|
||||
- Responsibility for maintenance and security
|
||||
- Liability for negative effects
|
||||
- No auto-update support
|
||||
|
||||
**Install**:
|
||||
1. Click Extensions icon or View → Extensions
|
||||
2. Accept disclaimer
|
||||
3. Search and install
|
||||
|
||||
**Manage**:
|
||||
- Uninstall: Search → Manage → Uninstall
|
||||
- Update: Uninstall → Reinstall latest
|
||||
|
||||
### Yeoman Generators
|
||||
|
||||
Install from npm registry for additional templates.
|
||||
|
||||
**Install**:
|
||||
1. Template wizard → Explore and Install Generators
|
||||
2. Accept disclaimer
|
||||
3. Search for template type
|
||||
4. Click Install
|
||||
|
||||
---
|
||||
|
||||
## Security Features
|
||||
|
||||
### Malware Scanning
|
||||
|
||||
- Automatic scan every 10 minutes for running dev spaces
|
||||
- Notification on detection with delete/dismiss options
|
||||
- Audit log entry created with file, dev space, and user details
|
||||
|
||||
### Encryption (CMK)
|
||||
|
||||
Customer-managed key encryption enabled by default since September 18, 2022.
|
||||
|
||||
**Scope**: All content under `/home/user` encrypted in physical storage.
|
||||
|
||||
**If CMK Disabled**:
|
||||
- Existing dev spaces cannot start
|
||||
- New dev spaces cannot be created
|
||||
- Files inaccessible
|
||||
- Dev space deletion still possible
|
||||
- Re-enable to restore access
|
||||
|
||||
### Security Standards
|
||||
|
||||
- Authentication and authorization enforced
|
||||
- Communication encrypted
|
||||
- Untrusted input prevented
|
||||
- Audit logging enabled
|
||||
|
||||
### Recommendations
|
||||
|
||||
- **BTP-BAS-0001**: Limit administrators with full management permissions
|
||||
- Use PATs for Git authentication
|
||||
- Protect external system access
|
||||
- Include only secured artifacts in custom extensions
|
||||
|
||||
---
|
||||
|
||||
## Data Management
|
||||
|
||||
### On-Premise System Access
|
||||
|
||||
Built-in web proxy at `[http://localhost:8887`.](http://localhost:8887`.)
|
||||
|
||||
**Refresh Destinations**:
|
||||
```bash
|
||||
curl [http://localhost:8887/reload](http://localhost:8887/reload)
|
||||
```
|
||||
|
||||
**Git Repositories**: Use exact host:port from destination URL.
|
||||
|
||||
**npm Modules**:
|
||||
```bash
|
||||
npm config set @<scope>:registry <URL>
|
||||
```
|
||||
|
||||
**Maven Dependencies**: Edit `/home/user/.m2/settings.xml`:
|
||||
```xml
|
||||
<repository>
|
||||
<id>corporate.repository</id>
|
||||
<url>REPOSITORY_URL</url>
|
||||
</repository>
|
||||
```
|
||||
|
||||
### Deleting Personal Data
|
||||
|
||||
Requires administrator access and REST API tool.
|
||||
|
||||
**Process**:
|
||||
1. Get workspace list: `[https://<bas-url>/ws-manager/api/v1/workspace?all=true`](https://<bas-url>/ws-manager/api/v1/workspace?all=true`)
|
||||
2. Copy workspace `id` from `config` section
|
||||
3. Optionally export data first
|
||||
4. Get JWT: `[https://<bas-url>/jwt`](https://<bas-url>/jwt`)
|
||||
5. DELETE request: `[https://<bas-url>/ws-manager/api/v1/workspace/<ws-id>?all=true`](https://<bas-url>/ws-manager/api/v1/workspace/<ws-id>?all=true`)
|
||||
6. Header: `X-Approuter-Authorization: Bearer <JWT_Token>`
|
||||
|
||||
---
|
||||
|
||||
## Documentation Links
|
||||
|
||||
| Resource | URL |
|
||||
|----------|-----|
|
||||
| Project Creation | [https://help.sap.com/docs/bas/sap-business-application-studio/create-a-project](https://help.sap.com/docs/bas/sap-business-application-studio/create-a-project) |
|
||||
| Layout Editor | [https://help.sap.com/docs/bas/sap-business-application-studio/layout-editor](https://help.sap.com/docs/bas/sap-business-application-studio/layout-editor) |
|
||||
| Task Explorer | [https://help.sap.com/docs/bas/sap-business-application-studio/task-explorer](https://help.sap.com/docs/bas/sap-business-application-studio/task-explorer) |
|
||||
| Run Configurations | [https://help.sap.com/docs/bas/sap-business-application-studio/creating-run-configurations](https://help.sap.com/docs/bas/sap-business-application-studio/creating-run-configurations) |
|
||||
| Debugging | [https://help.sap.com/docs/bas/sap-business-application-studio/debugging](https://help.sap.com/docs/bas/sap-business-application-studio/debugging) |
|
||||
| MTA Development | [https://help.sap.com/docs/bas/sap-business-application-studio/mta-development](https://help.sap.com/docs/bas/sap-business-application-studio/mta-development) |
|
||||
| CI/CD | [https://help.sap.com/docs/bas/sap-business-application-studio/continuous-integration-and-delivery](https://help.sap.com/docs/bas/sap-business-application-studio/continuous-integration-and-delivery) |
|
||||
| VS Code Extensions | [https://help.sap.com/docs/bas/sap-business-application-studio/explore-and-install-vs-code-extensions](https://help.sap.com/docs/bas/sap-business-application-studio/explore-and-install-vs-code-extensions) |
|
||||
| Malware Scan | [https://help.sap.com/docs/bas/sap-business-application-studio/malware-scan-in-dev-spaces](https://help.sap.com/docs/bas/sap-business-application-studio/malware-scan-in-dev-spaces) |
|
||||
|
||||
---
|
||||
|
||||
**Last Updated**: 2025-11-22
|
||||
**Source**: [https://github.com/SAP-docs/sap-btp-business-application-studio/tree/main/docs](https://github.com/SAP-docs/sap-btp-business-application-studio/tree/main/docs)
|
||||
361
references/git-operations.md
Normal file
361
references/git-operations.md
Normal file
@@ -0,0 +1,361 @@
|
||||
# Git Operations - Complete Reference
|
||||
|
||||
## Table of Contents
|
||||
|
||||
1. [Overview](#overview)
|
||||
2. [Git Views](#git-views)
|
||||
3. [Repository Management](#repository-management)
|
||||
4. [Basic Operations](#basic-operations)
|
||||
5. [Branch Management](#branch-management)
|
||||
6. [Git Stash](#git-stash)
|
||||
7. [Authentication](#authentication)
|
||||
8. [Corporate Git Repositories](#corporate-git-repositories)
|
||||
9. [Gerrit Integration](#gerrit-integration)
|
||||
10. [Troubleshooting](#troubleshooting)
|
||||
11. [Documentation Links](#documentation-links)
|
||||
|
||||
---
|
||||
|
||||
## Overview
|
||||
|
||||
SAP Business Application Studio provides integrated Git capabilities through built-in tools. Key points:
|
||||
|
||||
- Only **HTTPS connections** supported (SSH not available for on-premise)
|
||||
- Built-in web proxy for on-premise Git access
|
||||
- Two interface options: Simplified Git View and Advanced Git View (Source Control)
|
||||
|
||||
**Best Practice**: Always connect projects to Git repositories for long-term persistence.
|
||||
|
||||
---
|
||||
|
||||
## Git Views
|
||||
|
||||
### Simplified Git View
|
||||
|
||||
Default view for basic Git operations. Access via Simplified Git icon in activity bar.
|
||||
|
||||
**Capabilities**:
|
||||
- Clone repositories
|
||||
- Create and manage branches
|
||||
- Commit, pull, push operations
|
||||
- Conflict resolution
|
||||
- Pending changes management
|
||||
|
||||
### Advanced Git View (Source Control)
|
||||
|
||||
Full-featured Git interface. Enable by right-clicking activity bar → deselect Simplified Git → select Source Control.
|
||||
|
||||
**Components**:
|
||||
|
||||
| Section | Purpose |
|
||||
|---------|---------|
|
||||
| Menu Toolbar | Toggle views, commit, refresh, history, more actions |
|
||||
| Message Section | Enter commit descriptions |
|
||||
| Staged Changes | Files ready for commit |
|
||||
| Changes | Modified but unstaged files |
|
||||
| Amend Section | Modify existing commits |
|
||||
|
||||
**Status Bar Indicators**:
|
||||
- `*` - Unstaged changes (dirty)
|
||||
- `+` - Staged changes
|
||||
- `!` - Conflicts
|
||||
- `↑↓` - Ahead/behind commit counts
|
||||
|
||||
**File Status Indicators**:
|
||||
- **A** - Newly staged file
|
||||
- **U** - Unstaged file with changes
|
||||
- **M** - Modified file
|
||||
- **C** - Copied (blue) or conflicted (red)
|
||||
- **D** - Deleted file
|
||||
|
||||
**Visual Change Indicators** (Editor Gutter):
|
||||
- Red triangle - Deleted lines
|
||||
- Green bar - Added lines
|
||||
- Blue bar - Modified lines
|
||||
|
||||
---
|
||||
|
||||
## Repository Management
|
||||
|
||||
### Cloning Repositories
|
||||
|
||||
**Method 1: Terminal**
|
||||
```bash
|
||||
git clone [https://github.com/YOUR-USERNAME/YOUR-REPOSITORY](https://github.com/YOUR-USERNAME/YOUR-REPOSITORY)
|
||||
```
|
||||
|
||||
**Method 2: Command Palette**
|
||||
1. Open Command Palette
|
||||
2. Type `Git: Clone`
|
||||
3. Enter repository URL
|
||||
4. Select destination folder
|
||||
5. Provide credentials if required
|
||||
|
||||
### Opening Projects
|
||||
|
||||
Projects appear in file explorer within workspace or as standalone folders.
|
||||
|
||||
---
|
||||
|
||||
## Basic Operations
|
||||
|
||||
### Stage and Unstage Changes
|
||||
|
||||
**Stage All**: Click stage all icon in Changes section
|
||||
**Stage Individual**: Click `+` icon next to file
|
||||
**Unstage All**: Click unstage all in Staged Changes
|
||||
**Unstage Individual**: Click `-` icon next to file
|
||||
|
||||
### Commit Changes
|
||||
|
||||
1. Stage files
|
||||
2. Enter commit message
|
||||
3. Press `Ctrl+Enter` or click checkmark
|
||||
|
||||
**Commit Types**:
|
||||
|
||||
| Type | Description |
|
||||
|------|-------------|
|
||||
| Standard Commit | Save changes to local repository |
|
||||
| Commit (Amend) | Add changes to the last commit |
|
||||
| Commit (Signed Off) | Add sign-off line certifying authorship |
|
||||
|
||||
### Push Changes
|
||||
|
||||
Incorporates all unsynced committed changes into remote branch.
|
||||
|
||||
```bash
|
||||
git push
|
||||
```
|
||||
|
||||
Or use Source Control menu → Push
|
||||
|
||||
### Pull Changes
|
||||
|
||||
Downloads and merges remote changes into local repository.
|
||||
|
||||
```bash
|
||||
git pull
|
||||
```
|
||||
|
||||
Or use Source Control menu → Pull
|
||||
|
||||
### Fetch Changes
|
||||
|
||||
Downloads objects and references without merging.
|
||||
|
||||
```bash
|
||||
git fetch
|
||||
```
|
||||
|
||||
Then merge or rebase manually.
|
||||
|
||||
### Merge Changes
|
||||
|
||||
Incorporate all changes from one branch into another.
|
||||
|
||||
1. Checkout target branch
|
||||
2. Source Control menu → Merge
|
||||
3. Select source branch
|
||||
|
||||
### Discard Changes
|
||||
|
||||
Removes all changes from active branch. **Warning**: This cannot be undone.
|
||||
|
||||
### View Diffs
|
||||
|
||||
Double-click modified file to open diff editor showing:
|
||||
- Index version (left)
|
||||
- Working tree version (right)
|
||||
|
||||
---
|
||||
|
||||
## Branch Management
|
||||
|
||||
### Create Branch
|
||||
|
||||
```bash
|
||||
git branch <branch-name>
|
||||
```
|
||||
|
||||
Or click branch name in status bar → Create new branch
|
||||
|
||||
### Switch Branch
|
||||
|
||||
```bash
|
||||
git checkout <branch-name>
|
||||
```
|
||||
|
||||
Or use Command Palette: `Git: Checkout`
|
||||
|
||||
### List Branches
|
||||
|
||||
```bash
|
||||
git branch # Local branches
|
||||
git branch -a # All branches including remote
|
||||
```
|
||||
|
||||
### Default Branch
|
||||
|
||||
For migrating from `master` to `main`, refer to Git documentation for default branch configuration.
|
||||
|
||||
---
|
||||
|
||||
## Git Stash
|
||||
|
||||
Temporarily store work-in-progress changes.
|
||||
|
||||
### Stash Operations
|
||||
|
||||
| Operation | Description |
|
||||
|-----------|-------------|
|
||||
| **Stash** | Record current state and return to clean working directory |
|
||||
| **Pop Stash** | Apply and remove single stash entry |
|
||||
| **Pop Latest Stash** | Apply and remove most recent stash |
|
||||
| **Apply Stash** | Apply stash but keep it in stash list |
|
||||
| **Apply Latest Stash** | Apply most recent stash, keep in list |
|
||||
| **Drop Stash** | Remove single stash entry |
|
||||
|
||||
**Note**: If conflicts occur during pop, entry remains in stash. Resolve conflicts manually, then drop stash.
|
||||
|
||||
---
|
||||
|
||||
## Authentication
|
||||
|
||||
### Basic Authentication
|
||||
|
||||
Two credential management approaches:
|
||||
|
||||
| Method | Description |
|
||||
|--------|-------------|
|
||||
| Credential Cache | Cache in memory for short period |
|
||||
| Credential Store | Store indefinitely in dev space file |
|
||||
|
||||
**Security Recommendation**: Use Personal Access Tokens (PATs) instead of passwords. Refresh PATs regularly.
|
||||
|
||||
### OAuth Authentication (GitHub)
|
||||
|
||||
1. Connect to GitHub triggers popup with verification code
|
||||
2. Copy code and open GitHub
|
||||
3. Paste and authorize code
|
||||
4. Configure persistence (per session or per dev space)
|
||||
|
||||
**Preferences**:
|
||||
- `sapbas.git.github.oauth` - GitHub.com OAuth
|
||||
- `sapbas.git.github.enterprise.oauth` - Enterprise GitHub
|
||||
|
||||
### Azure DevOps
|
||||
|
||||
Generate PAT from Azure DevOps and use as password during clone.
|
||||
|
||||
---
|
||||
|
||||
## Corporate Git Repositories
|
||||
|
||||
### Prerequisites
|
||||
|
||||
1. Cloud Connector installed and configured
|
||||
2. Destination created in SAP BTP cockpit
|
||||
3. Administrator configuration complete
|
||||
|
||||
### Cloud Connector Setup
|
||||
|
||||
| Setting | Value |
|
||||
|---------|-------|
|
||||
| Back-end Type | Non-SAP System |
|
||||
| Protocol | HTTPS |
|
||||
| Internal Host/Port | Your Git system's network details |
|
||||
| Virtual Host/Port | Can match internal settings |
|
||||
| Principal Type | None |
|
||||
|
||||
**Resource Access**:
|
||||
- URL Path: `/`
|
||||
- Access Policy: Path and all sub-paths
|
||||
|
||||
### Destination Configuration
|
||||
|
||||
```properties
|
||||
ProxyType = OnPremise
|
||||
WebIDEEnabled = true
|
||||
HTML5.DynamicDestination = true
|
||||
HTML5.Timeout = 60000 # Optional
|
||||
```
|
||||
|
||||
### GitHub Enterprise OAuth
|
||||
|
||||
Create OAuth app with Device Flow enabled, add `GitHubEnterpriseClientID` property to destination.
|
||||
|
||||
### Certificate Requirements
|
||||
|
||||
Upload Git server certificate to Cloud Connector if using certificate-based authentication.
|
||||
|
||||
---
|
||||
|
||||
## Gerrit Integration
|
||||
|
||||
Gerrit provides code review before commits reach the repository.
|
||||
|
||||
### Configuration Steps
|
||||
|
||||
1. **Enable Gerrit**: File → Preferences → Settings → Extensions → Sapbas → Check "Whether gerrit is enabled"
|
||||
|
||||
2. **Add Properties** (from Gerrit administrator):
|
||||
- hookPath
|
||||
- protocol
|
||||
- hostname
|
||||
|
||||
3. **Clone Repository**
|
||||
|
||||
4. **Commit Changes**: Use Commit (Amend)
|
||||
|
||||
5. **Push to Gerrit**: SOURCE CONTROL menu → More Actions → Push to Gerrit
|
||||
|
||||
---
|
||||
|
||||
## Troubleshooting
|
||||
|
||||
### HTTP 502 Error on Clone
|
||||
|
||||
**Error**: `fatal: unable to access '[https://...':](https://...':) Received HTTP code 502 from proxy after CONNECT`
|
||||
|
||||
**Solution**: Set up Cloud Connector and configure Git to work with Gerrit.
|
||||
|
||||
### Refresh Destinations
|
||||
|
||||
After creating destinations, refresh in dev space:
|
||||
|
||||
```bash
|
||||
curl [http://localhost:8887/reload](http://localhost:8887/reload)
|
||||
```
|
||||
|
||||
### Use Correct URL
|
||||
|
||||
Always use the exact same host and port as defined in the destination URL property.
|
||||
|
||||
### Branch Default Name Migration
|
||||
|
||||
When migrating from `master` to `main`:
|
||||
|
||||
```bash
|
||||
git branch -m master main
|
||||
git push -u origin main
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Documentation Links
|
||||
|
||||
| Resource | URL |
|
||||
|----------|-----|
|
||||
| Git Source Control | [https://help.sap.com/docs/bas/sap-business-application-studio/git-source-control](https://help.sap.com/docs/bas/sap-business-application-studio/git-source-control) |
|
||||
| Git Commands | [https://help.sap.com/docs/bas/sap-business-application-studio/git-commands](https://help.sap.com/docs/bas/sap-business-application-studio/git-commands) |
|
||||
| Git Stash | [https://help.sap.com/docs/bas/sap-business-application-studio/git-stash](https://help.sap.com/docs/bas/sap-business-application-studio/git-stash) |
|
||||
| Cloning Repositories | [https://help.sap.com/docs/bas/sap-business-application-studio/cloning-repositories](https://help.sap.com/docs/bas/sap-business-application-studio/cloning-repositories) |
|
||||
| Corporate Git | [https://help.sap.com/docs/bas/sap-business-application-studio/connecting-to-corporate-git-repository](https://help.sap.com/docs/bas/sap-business-application-studio/connecting-to-corporate-git-repository) |
|
||||
| Git Authentication | [https://help.sap.com/docs/bas/sap-business-application-studio/providing-authentication-to-git](https://help.sap.com/docs/bas/sap-business-application-studio/providing-authentication-to-git) |
|
||||
| Gerrit Setup | [https://help.sap.com/docs/bas/sap-business-application-studio/setting-up-git-to-work-with-gerrit](https://help.sap.com/docs/bas/sap-business-application-studio/setting-up-git-to-work-with-gerrit) |
|
||||
|
||||
---
|
||||
|
||||
**Last Updated**: 2025-11-22
|
||||
**Source**: [https://github.com/SAP-docs/sap-btp-business-application-studio/tree/main/docs](https://github.com/SAP-docs/sap-btp-business-application-studio/tree/main/docs)
|
||||
365
references/service-center-and-tools.md
Normal file
365
references/service-center-and-tools.md
Normal file
@@ -0,0 +1,365 @@
|
||||
# Service Center, Extensions & IDE Tools - Complete Reference
|
||||
|
||||
## Table of Contents
|
||||
|
||||
1. [Service Providers](#service-providers)
|
||||
2. [Additional Extensions](#additional-extensions)
|
||||
3. [IDE Features](#ide-features)
|
||||
4. [Advanced Development](#advanced-development)
|
||||
5. [Custom Extensions](#custom-extensions)
|
||||
6. [Troubleshooting](#troubleshooting)
|
||||
7. [Documentation Links](#documentation-links)
|
||||
|
||||
---
|
||||
|
||||
## Service Providers
|
||||
|
||||
The Service Center provides a central entry point to explore services from multiple providers.
|
||||
|
||||
### SAP System Service Provider
|
||||
|
||||
Integrates systems from your BAS subaccount for data sourcing and development.
|
||||
|
||||
**Features**:
|
||||
- Automatic login using BAS user credentials
|
||||
- ABAP Service Catalog and Cloud for Customer Catalog
|
||||
- Explore business objects and ABAP CDS views
|
||||
- Generate custom OData V4 services
|
||||
- RFC (Remote Function Call) support
|
||||
|
||||
**Prerequisites for Business Objects**:
|
||||
- SAMLAssertion authentication
|
||||
- Access to Development Tenant (Client 80)
|
||||
- BR_DEVELOPER business role permissions
|
||||
|
||||
**Project Integration**:
|
||||
| Project Type | Integration |
|
||||
|--------------|-------------|
|
||||
| SAP Fiori | Add via "Add to SAP Fiori Project" button |
|
||||
| CAP Node | External services in srv/external with XML/CDS files |
|
||||
| Java | OData services with Maven dependencies |
|
||||
|
||||
### Developer Hub Service Provider
|
||||
|
||||
Access products and services published in Developer Hub.
|
||||
|
||||
**Prerequisites**:
|
||||
- Business_Application_Studio_Administrator role
|
||||
- Service instance created in Developer Hub
|
||||
- Connection to space with Developer Hub subscription
|
||||
|
||||
**Destination Properties**:
|
||||
```properties
|
||||
Type = HTTP
|
||||
ProxyType = Internet
|
||||
Authentication = OAuth2ClientCredentials
|
||||
HTML5.DynamicDestination = true
|
||||
WebIDEEnabled = true
|
||||
WebIDEUsage = apihub_enterprise
|
||||
```
|
||||
|
||||
**Product Categories**:
|
||||
- SAP S/4HANA Cloud Products (from connected systems)
|
||||
- Custom Products (requires onboarding)
|
||||
|
||||
### Unified Customer Landscape Service Provider
|
||||
|
||||
Aggregates packages and services from registered SAP S/4HANA Cloud systems.
|
||||
|
||||
**Prerequisites**:
|
||||
1. Administrator registers S/4HANA Cloud system in BTP global account
|
||||
2. Create "Developing with SAP Business Application Studio" formation type
|
||||
3. Configure destination for each consumption bundle
|
||||
|
||||
**Destination Properties**:
|
||||
```properties
|
||||
Type = HTTP
|
||||
ProxyType = Internet
|
||||
HTML5.DynamicDestination = true
|
||||
WebIDEEnabled = true
|
||||
x-system-type = SAP S/4HANA Cloud
|
||||
x-correlation-id = sap.s4:communicationScenario:SAP_COM_<XXXX>
|
||||
x-system-id = <System ID name>
|
||||
```
|
||||
|
||||
### SAP Business Accelerator Hub Service Provider
|
||||
|
||||
Access SAP Business Accelerator Hub products, packages, services, and events.
|
||||
|
||||
**Note**: Only products/packages with OData services are displayed.
|
||||
|
||||
**Available Products**:
|
||||
- SAP S/4HANA Cloud
|
||||
- SAP S/4HANA
|
||||
- SAP SuccessFactors
|
||||
- SAP Customer Experience
|
||||
- SAP Business Technology Platform
|
||||
|
||||
**Usage**: One-time authentication per session for service access.
|
||||
|
||||
---
|
||||
|
||||
## Additional Extensions
|
||||
|
||||
### Scenario Extensions
|
||||
|
||||
| Extension | Description |
|
||||
|-----------|-------------|
|
||||
| **Development Tools for SAP Build Work Zone** | Create UI Integration cards for unified information display |
|
||||
| **HTML5 Application Template** | Wizard-based HTML5 application creation |
|
||||
| **HTML5 Runner** | Local HTML5 app execution with run configurations |
|
||||
| **SAP BAS Extension Development** | Create, deploy, manage custom extensions |
|
||||
| **Workflow Module** | Build workflow applications with SAP Workflow Management |
|
||||
|
||||
### Tool Extensions
|
||||
|
||||
| Extension | Description |
|
||||
|-----------|-------------|
|
||||
| **CDS Graphical Modeler** | Visual editor for SAP core data service models |
|
||||
| **Docker Image Builder** | Build docker images (not persistent) |
|
||||
| **Headless Testing Framework** | End-to-end testing for UI5 apps with OPA5 selectors |
|
||||
| **Java Tools** | SapMachine 11/17, SAP JVM 8, Maven 3.8.1, Tomcat 9.0.33 |
|
||||
| **Launchpad Module** | Add launchpad to multitarget applications |
|
||||
| **Python Tools** | IntelliSense, formatting, linting, debugging, Jupyter |
|
||||
| **SAP HANA Tools** | Native HANA development with graphical editors |
|
||||
| **SAP HANA XS Advanced Tools** | Native XS Advanced application development |
|
||||
| **SAPUI5 Adaptation Project** | Extend SAP Fiori applications |
|
||||
| **SAPUI5 Layout Editor & Extensibility** | Visual XML development, extend ABAP repo apps |
|
||||
|
||||
### Runtime Capabilities (Full Stack Projects)
|
||||
|
||||
| Capability | Description |
|
||||
|------------|-------------|
|
||||
| **Audit Logging** | Automated logging of personal data operations (requires premium edition) |
|
||||
| **Change Tracking** | Automated capturing and viewing of entity change records |
|
||||
| **Attachments** | File storage with SAP Object Store and Malware Scanning |
|
||||
| **Telemetry** | Tracing and metrics with SAP Cloud Logging |
|
||||
|
||||
**Usage**: Access via Storyboard → Runtime Capabilities toolbar
|
||||
|
||||
---
|
||||
|
||||
## IDE Features
|
||||
|
||||
### Guide Center
|
||||
|
||||
Step-by-step guidance for SAP development scenarios based on expert best practices.
|
||||
|
||||
**Access**: Command Palette → "Guide Center"
|
||||
|
||||
**Features**:
|
||||
- Guides tailored to dev space type
|
||||
- Interactive steps with action triggers
|
||||
- Opens relevant tools in new tabs
|
||||
- Links to documentation
|
||||
|
||||
### Search
|
||||
|
||||
**Within File** (`Ctrl+F`):
|
||||
- Find and replace in current file
|
||||
- Results highlighted in editor, overview ruler, minimap
|
||||
- Navigate with `Enter`/`Shift+Enter`
|
||||
- Find in selection mode
|
||||
- Multiline search (`Ctrl+Enter` for line breaks)
|
||||
|
||||
**Across Files** (`Ctrl+Shift+F`):
|
||||
- Search all files in opened folder
|
||||
- Results grouped by file with hit counts
|
||||
- Include/exclude patterns supported
|
||||
|
||||
**Glob Syntax**:
|
||||
- `*` - one or more characters
|
||||
- `?` - single character
|
||||
- `**` - any path segments
|
||||
- `{}` - group conditions
|
||||
- `[]` - character ranges
|
||||
- `!` prefix - exclude pattern
|
||||
|
||||
**Default Exclusions**: `node_modules` (configurable)
|
||||
|
||||
### Problems View
|
||||
|
||||
Aggregates errors and warnings from all open files.
|
||||
|
||||
**Access**: View → Problems
|
||||
|
||||
**Features**:
|
||||
- Click item to navigate to code location
|
||||
- Filters for errors, warnings, info
|
||||
|
||||
### Application Preview
|
||||
|
||||
**Preview Running Apps**:
|
||||
1. Command Palette → `Ports: Preview`
|
||||
2. Select from exposed applications
|
||||
3. Opens in new browser tab
|
||||
|
||||
**Configure Notifications**:
|
||||
1. Settings → Ports
|
||||
2. Edit "Exclude Expose Notifications"
|
||||
3. Add port numbers/ranges to suppress
|
||||
|
||||
### Terminal
|
||||
|
||||
Pre-installed tools: Maven, npm, additional tools installable.
|
||||
|
||||
**Access**:
|
||||
- Terminal → New Terminal
|
||||
- Right-click folder → Open in Integrated Terminal
|
||||
|
||||
### Template Wizard
|
||||
|
||||
Uses any Yeoman generator for project/module creation.
|
||||
|
||||
**Access**: Command Palette → "Open Template Wizard"
|
||||
|
||||
**Important**: Using templates makes you code owner. Implement CI/CD vulnerability scanning.
|
||||
|
||||
---
|
||||
|
||||
## Advanced Development
|
||||
|
||||
### Multi-Subaccount Development
|
||||
|
||||
Develop in one subaccount, deploy to another (different regions possible).
|
||||
|
||||
**Steps**:
|
||||
1. Create two regional subaccounts
|
||||
2. Configure design-time subaccount with BAS subscription
|
||||
3. Enable Cloud Foundry on runtime subaccount
|
||||
4. Create matching destinations in both subaccounts
|
||||
5. Configure CF login with runtime subaccount endpoint
|
||||
6. Develop, test, and deploy
|
||||
|
||||
### Running in Incognito Mode
|
||||
|
||||
Test applications with different users.
|
||||
|
||||
**Process**:
|
||||
1. Launch app from BAS
|
||||
2. Copy application URL
|
||||
3. Open private browser window
|
||||
4. Navigate to: `<BAS URL>/login?e=<application URL>`
|
||||
5. Authenticate with BAS credentials
|
||||
6. Provide app-specific credentials if needed
|
||||
|
||||
### Building and Deploying MTAs
|
||||
|
||||
**Build Methods**:
|
||||
- Context menu: Right-click `mta.yaml` → Build MTA Project
|
||||
- Command Palette: Enter "MTA" → Build MTA Project
|
||||
- Task Explorer: Create reusable build task
|
||||
- CLI: Use Cloud MTA Build Tool
|
||||
|
||||
**Deploy Methods**:
|
||||
- Context menu: Right-click `.mtar` file → Deploy MTA Archive
|
||||
- Command Palette: Enter "MTA" → Deploy MTA Archive
|
||||
- Task Explorer: Create reusable deployment task
|
||||
- CLI: Use cf deploy command
|
||||
|
||||
**Output**: MTAR files stored in `mta_archives` folder
|
||||
|
||||
### VS Code Remote Access
|
||||
|
||||
Connect from local VS Code desktop to BAS dev spaces.
|
||||
|
||||
**Benefits**:
|
||||
- Use local VS Code installation
|
||||
- Maintain remote dev space resources
|
||||
- Secure connection
|
||||
|
||||
---
|
||||
|
||||
## Custom Extensions
|
||||
|
||||
### Creating Extensions
|
||||
|
||||
**Prerequisites**:
|
||||
- Extension Deployer role
|
||||
- SAP BAS Extension Development extension enabled
|
||||
|
||||
**Steps**:
|
||||
|
||||
1. **Create extension.json**:
|
||||
```json
|
||||
{
|
||||
"apiVersion": "1.0",
|
||||
"name": "extension-name",
|
||||
"namespace": "your-namespace",
|
||||
"displayName": "Extension Display Name",
|
||||
"description": "Extension description",
|
||||
"author": "Author Name",
|
||||
"version": "1.0.0",
|
||||
"yeomanPackages": [
|
||||
{
|
||||
"name": "@scope/generator-name",
|
||||
"versionRange": "^1.0.0"
|
||||
}
|
||||
],
|
||||
"vscodeExtensions": [
|
||||
{
|
||||
"name": "extension-name",
|
||||
"url": "[https://url-to-vsix-file"](https://url-to-vsix-file")
|
||||
}
|
||||
]
|
||||
}
|
||||
```
|
||||
|
||||
2. **Deploy**: Run `wex deploy` in terminal
|
||||
|
||||
3. **Verify**: Check Dev Space Manager for extension
|
||||
|
||||
### Removing Extensions
|
||||
|
||||
```bash
|
||||
wex delete -x <namespace>/<ext-name>
|
||||
```
|
||||
|
||||
**Note**: Cannot delete if active in any dev space.
|
||||
|
||||
---
|
||||
|
||||
## Troubleshooting
|
||||
|
||||
### Webview Issues
|
||||
|
||||
| Issue | Solution |
|
||||
|-------|----------|
|
||||
| Private Firefox blank page | Use standard Firefox session |
|
||||
| "Could not register service workers" | Disable Kaspersky or use Firefox |
|
||||
| HANA editor won't open | Disable AdBlock extension |
|
||||
|
||||
### File Backup Issues
|
||||
|
||||
**Popup Error**: Content not being backed up.
|
||||
|
||||
**Resolution**:
|
||||
1. Save all open files
|
||||
2. Push Git changes
|
||||
3. Access Dev Space Manager
|
||||
4. Export project
|
||||
5. Restart dev space
|
||||
6. Import project
|
||||
|
||||
**Best Practice**: Always sync to remote Git repository.
|
||||
|
||||
---
|
||||
|
||||
## Documentation Links
|
||||
|
||||
| Resource | URL |
|
||||
|----------|-----|
|
||||
| Service Center | [https://help.sap.com/docs/bas/sap-business-application-studio/explore-services-using-service-center](https://help.sap.com/docs/bas/sap-business-application-studio/explore-services-using-service-center) |
|
||||
| SAP System Provider | [https://help.sap.com/docs/bas/sap-business-application-studio/sap-system-service-provider](https://help.sap.com/docs/bas/sap-business-application-studio/sap-system-service-provider) |
|
||||
| Developer Hub Provider | [https://help.sap.com/docs/bas/sap-business-application-studio/developer-hub-service-provider](https://help.sap.com/docs/bas/sap-business-application-studio/developer-hub-service-provider) |
|
||||
| Unified Customer Landscape | [https://help.sap.com/docs/bas/sap-business-application-studio/unified-customer-landscape-service-provider](https://help.sap.com/docs/bas/sap-business-application-studio/unified-customer-landscape-service-provider) |
|
||||
| Business Accelerator Hub | [https://help.sap.com/docs/bas/sap-business-application-studio/sap-business-accelerator-hub-service-provider](https://help.sap.com/docs/bas/sap-business-application-studio/sap-business-accelerator-hub-service-provider) |
|
||||
| Additional Extensions | [https://help.sap.com/docs/bas/sap-business-application-studio/additional-extensions](https://help.sap.com/docs/bas/sap-business-application-studio/additional-extensions) |
|
||||
| Custom Extensions | [https://help.sap.com/docs/bas/sap-business-application-studio/create-and-deploy-extension](https://help.sap.com/docs/bas/sap-business-application-studio/create-and-deploy-extension) |
|
||||
| Guide Center | [https://help.sap.com/docs/bas/sap-business-application-studio/guide-center](https://help.sap.com/docs/bas/sap-business-application-studio/guide-center) |
|
||||
| Multi-Subaccount | [https://help.sap.com/docs/bas/sap-business-application-studio/develop-app-using-different-subaccounts](https://help.sap.com/docs/bas/sap-business-application-studio/develop-app-using-different-subaccounts) |
|
||||
|
||||
---
|
||||
|
||||
**Last Updated**: 2025-11-22
|
||||
**Source**: [https://github.com/SAP-docs/sap-btp-business-application-studio/tree/main/docs](https://github.com/SAP-docs/sap-btp-business-application-studio/tree/main/docs)
|
||||
252
references/service-plans.md
Normal file
252
references/service-plans.md
Normal file
@@ -0,0 +1,252 @@
|
||||
# Service Plans and Restrictions - Complete Reference
|
||||
|
||||
## Table of Contents
|
||||
|
||||
1. [Overview](#overview)
|
||||
2. [Service Plans](#service-plans)
|
||||
3. [Plan Restrictions Comparison](#plan-restrictions-comparison)
|
||||
4. [Standard Plan Details](#standard-plan-details)
|
||||
5. [Free Plan Details](#free-plan-details)
|
||||
6. [Trial Plan Details](#trial-plan-details)
|
||||
7. [Build-Code Plan Details](#build-code-plan-details)
|
||||
8. [Changing Plans](#changing-plans)
|
||||
9. [Metering](#metering)
|
||||
10. [Documentation Links](#documentation-links)
|
||||
|
||||
---
|
||||
|
||||
## Overview
|
||||
|
||||
SAP Business Application Studio offers four service plans for different use cases. Each plan has specific resource limits optimized for standard SAP application development.
|
||||
|
||||
**Key Principle**: Computing resources (CPU, memory, storage) are limited and optimized for serving standard SAP application development use-cases.
|
||||
|
||||
**Important**: SAP Build Code users should refer to Build Code-specific restrictions.
|
||||
|
||||
---
|
||||
|
||||
## Service Plans
|
||||
|
||||
| Plan | Purpose | Support |
|
||||
|------|---------|---------|
|
||||
| **Standard** | Productive development in pre-configured dev spaces | Full SAP support |
|
||||
| **Free** | Evaluation with restrictions | Community support only, no SLAs |
|
||||
| **Trial** | Evaluation with time limits | Community support only, no SLAs |
|
||||
| **Build-Code** | AI-based development with Joule | Requires SAP Build Code subscription |
|
||||
|
||||
### Subscription Rules
|
||||
|
||||
- Each subaccount supports only **one subscription**
|
||||
- Multiple plans require separate subaccounts
|
||||
- Plan changes require formal transition process
|
||||
|
||||
---
|
||||
|
||||
## Plan Restrictions Comparison
|
||||
|
||||
| Restriction | Standard | Free | Trial |
|
||||
|-------------|----------|------|-------|
|
||||
| **Max Dev Spaces** | 10 | 2 | 2 |
|
||||
| **Running Simultaneously** | 2 | 1 | 1 |
|
||||
| **Storage per Dev Space** | 10 GB | 4 GB | 4 GB |
|
||||
| **Max Projects per Dev Space** | 50 | - | - |
|
||||
| **Max Open Projects/MTA Modules** | 20 | - | - |
|
||||
| **Java Classes per Compilation** | 1000 (27k lines) | - | - |
|
||||
| **HANA Artifacts per Compilation** | 1000 | - | - |
|
||||
| **Session Timeout** | - | - | 1 hour |
|
||||
| **Inactivity Deletion** | - | - | 30 days |
|
||||
| **Max Deployments (Productivity Tools)** | - | 2 | 2 |
|
||||
| **Joule AI Requests** | Monthly quota | Monthly quota | 3-month allocation |
|
||||
|
||||
---
|
||||
|
||||
## Standard Plan Details
|
||||
|
||||
### Purpose
|
||||
Productive development in pre-configured dev spaces with full SAP support.
|
||||
|
||||
### Resource Limits
|
||||
|
||||
| Resource | Limit |
|
||||
|----------|-------|
|
||||
| Dev spaces | Up to 10 |
|
||||
| Running simultaneously | Up to 2 |
|
||||
| Storage per dev space | 10 GB |
|
||||
| Projects per dev space | 50 |
|
||||
| Open projects/MTA modules | 20 at once |
|
||||
| Java classes per compilation | 1000 (up to 27,000 lines) |
|
||||
| HANA database artifacts | 1000 per compilation |
|
||||
|
||||
### AI Features
|
||||
Monthly quota for Joule AI requests.
|
||||
|
||||
### Performance Notes
|
||||
|
||||
- Approaching limits may impact performance
|
||||
- Exceeding thresholds means "performance can't be assured by the SAP Business Application Studio product license"
|
||||
- Recommendation: Select data center geographically closer to your location
|
||||
|
||||
### Deletion Limits
|
||||
|
||||
| Limit | Value |
|
||||
|-------|-------|
|
||||
| Max deletions | 100 dev spaces |
|
||||
| Retention period | 30 days |
|
||||
|
||||
---
|
||||
|
||||
## Free Plan Details
|
||||
|
||||
### Purpose
|
||||
Evaluation with restrictions. Community support only, not subject to SLAs.
|
||||
|
||||
### Resource Limits
|
||||
|
||||
| Resource | Limit |
|
||||
|----------|-------|
|
||||
| Dev spaces | Up to 2 |
|
||||
| Running simultaneously | 1 |
|
||||
| Storage per dev space | 4 GB |
|
||||
| Deployments (Productivity Tools) | 2 maximum |
|
||||
|
||||
### AI Features
|
||||
Limited monthly quota of AI requests per user for Joule.
|
||||
|
||||
### Important Limitations
|
||||
|
||||
- **No Cloud Foundry subscription included**
|
||||
- To deploy applications:
|
||||
1. Deploy to subaccount with existing CF subscription, OR
|
||||
2. Add CF subscription to current subaccount (free or paid)
|
||||
|
||||
### Deletion Limits
|
||||
|
||||
| Limit | Value |
|
||||
|-------|-------|
|
||||
| Max deletions | 50 dev spaces |
|
||||
| Retention period | 14 days |
|
||||
|
||||
### Terms
|
||||
Governed by SAP Business Technology Platform Supplement.
|
||||
|
||||
---
|
||||
|
||||
## Trial Plan Details
|
||||
|
||||
### Purpose
|
||||
Evaluation with time-based limitations. Community support only, not subject to SLAs.
|
||||
|
||||
### Resource Limits
|
||||
|
||||
| Resource | Limit |
|
||||
|----------|-------|
|
||||
| Dev spaces | Up to 2 |
|
||||
| Running simultaneously | 1 |
|
||||
| Storage per dev space | 4 GB |
|
||||
| Deployments (Productivity Tools) | 2 maximum |
|
||||
|
||||
### Time Limits
|
||||
|
||||
| Limit | Value |
|
||||
|-------|-------|
|
||||
| Session timeout | 1 hour of inactivity |
|
||||
| Inactivity deletion | 30 consecutive days without running |
|
||||
|
||||
### AI Features
|
||||
Limited quota allocated for 3 months at trial start.
|
||||
|
||||
### Regional Restrictions
|
||||
SAP Build Code functionality restricted to **US10 region** for trial users.
|
||||
|
||||
### Terms
|
||||
Governed by SAP Business Technology Platform Supplement.
|
||||
|
||||
---
|
||||
|
||||
## Build-Code Plan Details
|
||||
|
||||
### Purpose
|
||||
Productive AI-based development with Joule integration.
|
||||
|
||||
### Prerequisites
|
||||
- Subaccount must be subscribed to **SAP Build Code**
|
||||
|
||||
### Features
|
||||
- AI-assisted development capabilities
|
||||
- Joule integration
|
||||
- All standard plan features
|
||||
|
||||
---
|
||||
|
||||
## Changing Plans
|
||||
|
||||
### Prerequisites
|
||||
- Subaccount administrator access
|
||||
- Understanding of data implications
|
||||
|
||||
### Process
|
||||
|
||||
1. Evaluate target plan restrictions
|
||||
2. Back up critical dev space content to Git
|
||||
3. Follow plan change procedures in SAP BTP Cockpit
|
||||
4. Verify access after transition
|
||||
|
||||
### Considerations
|
||||
|
||||
- Dev spaces exceeding new plan limits may need adjustment
|
||||
- Storage reduction may require cleanup
|
||||
- Running dev space limits apply immediately
|
||||
|
||||
---
|
||||
|
||||
## Metering
|
||||
|
||||
### Metric
|
||||
|
||||
**Users**: Individuals authorized to access the Cloud Service, including those accessing platform applications.
|
||||
|
||||
### Additional Information
|
||||
|
||||
- SAP BTP Service Description Guide, Section 36
|
||||
- Commercial Information Glossary for definitions
|
||||
|
||||
---
|
||||
|
||||
## Regional Availability
|
||||
|
||||
SAP Business Application Studio is available across multiple regions:
|
||||
|
||||
### AWS Regions
|
||||
- Europe: eu10, eu11, eu12 (Frankfurt)
|
||||
- US: us10, us10-trial (East), us11 (West)
|
||||
- Asia-Pacific: Sydney, Singapore, Seoul, Tokyo
|
||||
- Americas: Canada, Brazil
|
||||
|
||||
### Azure Regions
|
||||
- Europe: Netherlands, Switzerland
|
||||
- US: Washington, Virginia
|
||||
- Asia-Pacific: Sydney, Singapore, Japan
|
||||
- Americas: Brazil
|
||||
|
||||
### Google Cloud Regions
|
||||
- Australia, US Central, India, Israel, Europe, Saudi Arabia
|
||||
|
||||
**Recommendation**: Connect to data center closest to physical location for best performance.
|
||||
|
||||
---
|
||||
|
||||
## Documentation Links
|
||||
|
||||
| Resource | URL |
|
||||
|----------|-----|
|
||||
| Service Plans and Metering | [https://help.sap.com/docs/bas/sap-business-application-studio/service-plans-and-metering](https://help.sap.com/docs/bas/sap-business-application-studio/service-plans-and-metering) |
|
||||
| Standard Plan Restrictions | [https://help.sap.com/docs/bas/sap-business-application-studio/standard-plan-restrictions](https://help.sap.com/docs/bas/sap-business-application-studio/standard-plan-restrictions) |
|
||||
| Free Plan Restrictions | [https://help.sap.com/docs/bas/sap-business-application-studio/free-plan-restrictions](https://help.sap.com/docs/bas/sap-business-application-studio/free-plan-restrictions) |
|
||||
| Trial Plan Restrictions | [https://help.sap.com/docs/bas/sap-business-application-studio/trial-plan-restrictions](https://help.sap.com/docs/bas/sap-business-application-studio/trial-plan-restrictions) |
|
||||
| Availability | [https://help.sap.com/docs/bas/sap-business-application-studio/sap-business-application-studio-availability](https://help.sap.com/docs/bas/sap-business-application-studio/sap-business-application-studio-availability) |
|
||||
| Discovery Center | [https://discovery-center.cloud.sap/serviceCatalog/business-application-studio](https://discovery-center.cloud.sap/serviceCatalog/business-application-studio) |
|
||||
|
||||
---
|
||||
|
||||
**Last Updated**: 2025-11-22
|
||||
**Source**: [https://github.com/SAP-docs/sap-btp-business-application-studio/tree/main/docs](https://github.com/SAP-docs/sap-btp-business-application-studio/tree/main/docs)
|
||||
249
references/setup-checklist.md
Normal file
249
references/setup-checklist.md
Normal file
@@ -0,0 +1,249 @@
|
||||
# Setup Checklist - Complete Reference
|
||||
|
||||
## Table of Contents
|
||||
|
||||
1. [Overview](#overview)
|
||||
2. [Prerequisites](#prerequisites)
|
||||
3. [Setup Steps](#setup-steps)
|
||||
4. [Role Assignment](#role-assignment)
|
||||
5. [Optional Configurations](#optional-configurations)
|
||||
6. [Build & Deploy Prerequisites](#build--deploy-prerequisites)
|
||||
7. [Verification](#verification)
|
||||
8. [Documentation Links](#documentation-links)
|
||||
|
||||
---
|
||||
|
||||
## Overview
|
||||
|
||||
This checklist covers setting up SAP Business Application Studio for development.
|
||||
|
||||
**Important Notes**:
|
||||
- SAP Build Code users: Follow [SAP Build Code Initial Setup](https://help.sap.com/docs/build_code) instead
|
||||
- Trial account users: Refer to [Getting Started with a Trial Account](https://help.sap.com/docs/bas/sap-business-application-studio/getting-started-with-trial-account)
|
||||
|
||||
---
|
||||
|
||||
## Prerequisites
|
||||
|
||||
### Required
|
||||
|
||||
| Requirement | Description |
|
||||
|-------------|-------------|
|
||||
| SAP BTP Global Account | Active global account access |
|
||||
| Cloud Foundry Environment | Subaccount must use CF environment |
|
||||
| Administrator Access | Subaccount administrator privileges |
|
||||
| Supported Browser | Mozilla Firefox, Google Chrome, or Microsoft Edge (latest versions) |
|
||||
|
||||
### Recommended
|
||||
|
||||
| Requirement | Description |
|
||||
|-------------|-------------|
|
||||
| Identity Provider | SAML 2.0 compliant IdP for custom authentication |
|
||||
| Git Repository | Public or corporate Git for version control |
|
||||
| Cloud Foundry Space | At least 1 space per development team |
|
||||
|
||||
---
|
||||
|
||||
## Setup Steps
|
||||
|
||||
### Step 1: Create a Subaccount
|
||||
|
||||
1. Log into SAP BTP Cockpit
|
||||
2. Navigate to your global account
|
||||
3. Create new subaccount with Cloud Foundry environment
|
||||
4. Select region based on [BAS availability](https://help.sap.com/docs/bas/sap-business-application-studio/sap-business-application-studio-availability)
|
||||
|
||||
**Region Recommendation**: Choose data center closest to your physical location for best performance.
|
||||
|
||||
### Step 2: Configure Entitlements
|
||||
|
||||
1. In global account, go to Entitlements
|
||||
2. Click Configure Entitlements → Add Service Plans
|
||||
3. Search for "SAP Business Application Studio"
|
||||
4. Select appropriate service plan:
|
||||
- `standard` - Productive development
|
||||
- `free` - Evaluation (no SLA)
|
||||
- `build-code` - AI-based development (requires Build Code)
|
||||
5. Save changes
|
||||
|
||||
### Step 3: Subscribe to the Service
|
||||
|
||||
1. Navigate to your subaccount
|
||||
2. Go to Instances and Subscriptions
|
||||
3. Click Create
|
||||
4. Search for "SAP Business Application Studio"
|
||||
5. Select plan and create subscription
|
||||
|
||||
### Step 4: Assign Roles
|
||||
|
||||
1. Navigate to Security → Role Collections
|
||||
2. Select `Business_Application_Studio_Developer`
|
||||
3. Click Edit
|
||||
4. Add user(s) by email address
|
||||
5. Select Identity Provider
|
||||
6. Save
|
||||
|
||||
**For Administrators**: Also assign administrator role collection.
|
||||
|
||||
---
|
||||
|
||||
## Role Assignment
|
||||
|
||||
### Available Roles
|
||||
|
||||
| Role Collection | Purpose | Capabilities |
|
||||
|-----------------|---------|--------------|
|
||||
| `Business_Application_Studio_Developer` | Development access | Create/manage dev spaces, develop applications |
|
||||
| `Business_Application_Studio_Administrator` | Administration | Export/delete user data, restart dev spaces |
|
||||
| `Business_Application_Studio_Extension_Deployer` | Extension deployment | Create and deploy custom extensions |
|
||||
|
||||
### Assignment Process
|
||||
|
||||
1. Navigate to Security → Role Collections in SAP BTP Cockpit
|
||||
2. Select or create role collection
|
||||
3. Click Edit
|
||||
4. Enter user email address
|
||||
5. Select Identity Provider (e.g., SAP ID Service, custom IdP)
|
||||
6. Save changes
|
||||
|
||||
**Note**: Users needing both development and administration require both role collections assigned.
|
||||
|
||||
### China (Shanghai) Region
|
||||
|
||||
Create new role collections before assigning permissions (pre-built collections not available).
|
||||
|
||||
---
|
||||
|
||||
## Optional Configurations
|
||||
|
||||
### Step 5: Configure Identity Provider (Optional)
|
||||
|
||||
For custom IdP with assertion-based attribute mapping:
|
||||
|
||||
1. Navigate to Security → Trust Configuration
|
||||
2. Add trusted identity provider
|
||||
3. Configure attribute mappings
|
||||
4. Test authentication flow
|
||||
|
||||
### Step 6: Connect Git Repositories (Optional)
|
||||
|
||||
**Public Repositories**:
|
||||
- No additional configuration needed
|
||||
- Clone directly from dev space
|
||||
|
||||
**Corporate Repositories**:
|
||||
1. Administrator configures destination to corporate Git
|
||||
2. Set up authentication (Personal Access Tokens recommended)
|
||||
3. Configure Cloud Connector if on-premise
|
||||
|
||||
**Authentication Recommendation**: Use Personal Access Tokens (PATs) instead of passwords, refresh regularly.
|
||||
|
||||
### Step 7: Create Cloud Foundry Spaces (Optional)
|
||||
|
||||
1. Navigate to Cloud Foundry → Spaces in subaccount
|
||||
2. Create new space
|
||||
3. Recommendation: At least 1 space per development team working on same project
|
||||
|
||||
### Step 8: Assign Team Members (Optional)
|
||||
|
||||
Enable developer access to Cloud Foundry:
|
||||
|
||||
1. Navigate to Cloud Foundry → Space Members
|
||||
2. Add developers with appropriate roles:
|
||||
- Space Developer
|
||||
- Space Manager (for team leads)
|
||||
|
||||
---
|
||||
|
||||
## Build & Deploy Prerequisites
|
||||
|
||||
### General Requirements
|
||||
|
||||
1. Log into Cloud Foundry account from dev space
|
||||
|
||||
### SAP HANA Cloud Applications
|
||||
|
||||
| Requirement | Action |
|
||||
|-------------|--------|
|
||||
| Entitlement | Add "SAP HANA Cloud, SAP HANA Schemas & HDI Containers" |
|
||||
| Database | Create SAP HANA Cloud instance via HANA Cloud Central |
|
||||
| Admin Tools | Subscribe to SAP HANA Cloud Administration Tools |
|
||||
|
||||
**Trial Account Special**: In database wizard, select "Allow all IP addresses" in Advanced Settings.
|
||||
|
||||
### Trial/Free Plan Requirements
|
||||
|
||||
| Requirement | Action |
|
||||
|-------------|--------|
|
||||
| Work Zone | Add "SAP Build Work Zone, standard edition" entitlement and subscribe |
|
||||
| Role | Assign `Launchpad_Admin` role collection |
|
||||
| CF Runtime | Add Cloud Foundry Runtime entitlements (adjustable based on needs) |
|
||||
|
||||
---
|
||||
|
||||
## Verification
|
||||
|
||||
### Test Access
|
||||
|
||||
1. Open SAP Business Application Studio URL
|
||||
2. Authenticate with assigned identity
|
||||
3. Verify Dev Space Manager loads
|
||||
4. Create test dev space
|
||||
|
||||
### Test Development
|
||||
|
||||
1. Create dev space with appropriate type
|
||||
2. Start dev space
|
||||
3. Verify tools and extensions load
|
||||
4. Test Git connectivity (if configured)
|
||||
|
||||
### Test Deployment (Optional)
|
||||
|
||||
1. Create simple project from template
|
||||
2. Build project
|
||||
3. Log into Cloud Foundry
|
||||
4. Deploy to CF space
|
||||
5. Verify application runs
|
||||
|
||||
---
|
||||
|
||||
## Quick Reference
|
||||
|
||||
### URLs
|
||||
|
||||
| Resource | Pattern |
|
||||
|----------|---------|
|
||||
| BAS Access | `[https://<subaccount>.eu10.applicationstudio.cloud.sap`](https://<subaccount>.eu10.applicationstudio.cloud.sap`) (varies by region) |
|
||||
| BTP Cockpit | `[https://cockpit.btp.cloud.sap`](https://cockpit.btp.cloud.sap`) |
|
||||
| Discovery Center | `[https://discovery-center.cloud.sap/serviceCatalog/business-application-studio`](https://discovery-center.cloud.sap/serviceCatalog/business-application-studio`) |
|
||||
|
||||
### Key Commands
|
||||
|
||||
```bash
|
||||
# Cloud Foundry Login
|
||||
cf login -a <api-endpoint>
|
||||
|
||||
# Check CF Target
|
||||
cf target
|
||||
|
||||
# List Services
|
||||
cf services
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Documentation Links
|
||||
|
||||
| Resource | URL |
|
||||
|----------|-----|
|
||||
| Setup Guide | [https://help.sap.com/docs/bas/sap-business-application-studio/set-up-sap-business-application-studio](https://help.sap.com/docs/bas/sap-business-application-studio/set-up-sap-business-application-studio) |
|
||||
| Subscription Guide | [https://help.sap.com/docs/bas/sap-business-application-studio/subscribe-to-sap-business-application-studio](https://help.sap.com/docs/bas/sap-business-application-studio/subscribe-to-sap-business-application-studio) |
|
||||
| Role Assignment | [https://help.sap.com/docs/bas/sap-business-application-studio/manage-authorizations-and-roles](https://help.sap.com/docs/bas/sap-business-application-studio/manage-authorizations-and-roles) |
|
||||
| Trial Account Setup | [https://help.sap.com/docs/bas/sap-business-application-studio/getting-started-with-trial-account](https://help.sap.com/docs/bas/sap-business-application-studio/getting-started-with-trial-account) |
|
||||
| Availability | [https://help.sap.com/docs/bas/sap-business-application-studio/sap-business-application-studio-availability](https://help.sap.com/docs/bas/sap-business-application-studio/sap-business-application-studio-availability) |
|
||||
| Build & Deploy | [https://help.sap.com/docs/bas/sap-business-application-studio/build-and-deploy](https://help.sap.com/docs/bas/sap-business-application-studio/build-and-deploy) |
|
||||
|
||||
---
|
||||
|
||||
**Last Updated**: 2025-11-22
|
||||
**Source**: [https://github.com/SAP-docs/sap-btp-business-application-studio/tree/main/docs](https://github.com/SAP-docs/sap-btp-business-application-studio/tree/main/docs)
|
||||
Reference in New Issue
Block a user