Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -8,18 +8,18 @@
author_profile: https://github.com/shilpashankar02
---

# ABAP Core Tools for Visual Studio Code
# ABAP Basic Features for Visual Studio Code

Check warning on line 11 in tutorials/abap-environment-adt-coretools-vscode/abap-environment-adt-coretools-vscode.md

View workflow job for this annotation

GitHub Actions / checks / checks

markdown/MD022

Headings should be surrounded by blank lines

Check warning on line 11 in tutorials/abap-environment-adt-coretools-vscode/abap-environment-adt-coretools-vscode.md

View workflow job for this annotation

GitHub Actions / checks / checks

markdown/MD022

Headings should be surrounded by blank lines
<!-- description --> You will explore the ABAP Development Tool (ADT) functionality in Visual Studio Code which do not require Agentic AI capabilities.

## Introduction

Check warning on line 14 in tutorials/abap-environment-adt-coretools-vscode/abap-environment-adt-coretools-vscode.md

View workflow job for this annotation

GitHub Actions / checks / checks

markdown/MD022

Headings should be surrounded by blank lines

Check warning on line 14 in tutorials/abap-environment-adt-coretools-vscode/abap-environment-adt-coretools-vscode.md

View workflow job for this annotation

GitHub Actions / checks / checks

markdown/MD022

Headings should be surrounded by blank lines
ABAP development tools for Visual Studio Code provides an efficient and feature-rich set of tools for ABAP development within the ABAP Cloud development model. It brings modern ABAP development to your editor, enabling you to create, edit, debug, and manage ABAP artifacts directly in VS Code. You need to set up your development environment in **Visual Studio Code** and connect it to your ABAP system.

Check warning on line 15 in tutorials/abap-environment-adt-coretools-vscode/abap-environment-adt-coretools-vscode.md

View workflow job for this annotation

GitHub Actions / checks / checks

markdown/MD009

Trailing spaces

Check warning on line 15 in tutorials/abap-environment-adt-coretools-vscode/abap-environment-adt-coretools-vscode.md

View workflow job for this annotation

GitHub Actions / checks / checks

markdown/MD009

Trailing spaces

This tutorial focus on non-Agentic AI capabilities and do not need any coding agent extension in Visual Studio Code (for e.g: GitHub Copilot)

## Prerequisites

Check warning on line 19 in tutorials/abap-environment-adt-coretools-vscode/abap-environment-adt-coretools-vscode.md

View workflow job for this annotation

GitHub Actions / checks / checks

markdown/MD022

Headings should be surrounded by blank lines

Check warning on line 19 in tutorials/abap-environment-adt-coretools-vscode/abap-environment-adt-coretools-vscode.md

View workflow job for this annotation

GitHub Actions / checks / checks

markdown/MD022

Headings should be surrounded by blank lines
You have connected an ABAP system to Visual Studio Code following the tutorial.

## You will learn

Check warning on line 22 in tutorials/abap-environment-adt-coretools-vscode/abap-environment-adt-coretools-vscode.md

View workflow job for this annotation

GitHub Actions / checks / checks

markdown/MD022

Headings should be surrounded by blank lines

Check warning on line 22 in tutorials/abap-environment-adt-coretools-vscode/abap-environment-adt-coretools-vscode.md

View workflow job for this annotation

GitHub Actions / checks / checks

markdown/MD022

Headings should be surrounded by blank lines
- How to explore and adjust the generated artifacts (CDS views, behavior definitions, metadata extensions) directly in Visual Studio Code
- How to publish the service binding and preview the SAP Fiori elements app in the browser
- How to run ABAP unit tests from Visual Studio Code
Expand All @@ -31,9 +31,9 @@

1. Open the **Command Palette** or **`Ctrl+Shift+P`**.
![Add Package](addpackage.png)
2. Type `ABAP: Add Package as folder to Workspace`

Check warning on line 34 in tutorials/abap-environment-adt-coretools-vscode/abap-environment-adt-coretools-vscode.md

View workflow job for this annotation

GitHub Actions / checks / checks

markdown/MD009

Trailing spaces

Check warning on line 34 in tutorials/abap-environment-adt-coretools-vscode/abap-environment-adt-coretools-vscode.md

View workflow job for this annotation

GitHub Actions / checks / checks

markdown/MD009

Trailing spaces
3. Search the package you have created in ADT.
![Search Package](searchpackage.png)

Check warning on line 36 in tutorials/abap-environment-adt-coretools-vscode/abap-environment-adt-coretools-vscode.md

View workflow job for this annotation

GitHub Actions / checks / checks

markdown/MD009

Trailing spaces

Check warning on line 36 in tutorials/abap-environment-adt-coretools-vscode/abap-environment-adt-coretools-vscode.md

View workflow job for this annotation

GitHub Actions / checks / checks

markdown/MD009

Trailing spaces
4. Enter Workspace folder name.
![Folder Name](folder.png)
5. Folder is added to Workspace
Expand All @@ -44,10 +44,10 @@
During any time if you have been logged out of system, you need to Log On to the Destination to continue the work by following options:

1. Right click on the Package which is added as a Folder to Workspace and choose "Log On to Destination"
![Logon](logon.png)

Check warning on line 47 in tutorials/abap-environment-adt-coretools-vscode/abap-environment-adt-coretools-vscode.md

View workflow job for this annotation

GitHub Actions / checks / checks

markdown/MD009

Trailing spaces

Check warning on line 47 in tutorials/abap-environment-adt-coretools-vscode/abap-environment-adt-coretools-vscode.md

View workflow job for this annotation

GitHub Actions / checks / checks

markdown/MD009

Trailing spaces
OR
1. Open the **Command Palette** or **`Ctrl+Shift+P`**.
2. Type `ABAP: Log On to Destination`

Check warning on line 50 in tutorials/abap-environment-adt-coretools-vscode/abap-environment-adt-coretools-vscode.md

View workflow job for this annotation

GitHub Actions / checks / checks

markdown/MD029

Ordered list item prefix

Check warning on line 50 in tutorials/abap-environment-adt-coretools-vscode/abap-environment-adt-coretools-vscode.md

View workflow job for this annotation

GitHub Actions / checks / checks

markdown/MD009

Trailing spaces

Check warning on line 50 in tutorials/abap-environment-adt-coretools-vscode/abap-environment-adt-coretools-vscode.md

View workflow job for this annotation

GitHub Actions / checks / checks

markdown/MD029

Ordered list item prefix

Check warning on line 50 in tutorials/abap-environment-adt-coretools-vscode/abap-environment-adt-coretools-vscode.md

View workflow job for this annotation

GitHub Actions / checks / checks

markdown/MD009

Trailing spaces
![Logon](logon1.png)
3. Select the Destination. This will prompt to open the system in browser to enter the logon credentials
![Logon](logon2.png)
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,140 @@
---
parser: v2
auto_validation: true
primary_tag: software-product>sap-btp-abap-environment
tags: [ tutorial>beginner, programming-tool>abap-development, software-product>sap-btp-abap-environment]
time: 30
author_name: Shilpa Shankar
author_profile: https://github.com/shilpashankar02
---

# Creating SAP Fiori App Using Quick Fiori Application Generator
<!-- description --> You can create a List Report based SAP Fiori application from service binding using the quick Fiori application generator.
This tutorial was written for SAP BTP ABAP Environment. However, you should also be able to use it in SAP S/4HANA Cloud Environment in the same way.
Always replace `###` with your initials or group number.

## Prerequisites
- You need an SAP BTP, ABAP Environment [trial user](abap-environment-trial-onboarding) or a license.
- You have completed [Create Database Table and Generate UI Service](https://developers.sap.com/tutorials/abap-environment-rap100-generate-ui-service.html).
- Your system has the ABAP flight reference scenario. If your system hasn't this scenario. You can download it [here](https://github.com/SAP-samples/abap-platform-refscen-flight). The trial systems have the flight scenario included.

## You will learn

- How to create a List Report based SAP Fiori Application from service binding using the quick Fiori application generator.

### Create SAP Fiori application


1. In the service binding editor, select an entity and choose **Create Fiori App....**

![Service Binding](servicebinding.png)

2. To create SAP Fiori application using the Quick Fiori Application generator, choose the option **Create SAP Fiori app with Quick Fiori Application generator in ADT** and choose **Create**

![Create a SAP Fiori App](generatorOption.png)

3. In the Generate ABAP Repository Object dialog, enter the Package.

![Enter Package](package.png)

4. In the Configure Generator dialog, enter the details in the fields. Ensure the repository name is unique and within 15 characters including namespace. Like in SAP Business Application Studio, the repository name corresponds to the name of the BSP application that gets generated post deployment.

![Configure Generator](genconfig.png)

5. Choose Next. You can see the list of objects that will be generated.

6. Choose a transport request if required and choose Finish.

7. The ABAP repository objects will be generated in the background, and you get a popup message once the objects are generated successfully. Choose Open to open or refresh the service binding.

![Objects](objects.png)

8. In the service binding editor, you now see a clickable Fiori App URL.

![Fiori App URL](appurl.png)

**Note** that the Fiori App URL will not work immediately after creation in cloud systems. The app needs to be part of an IAM App and Business Catalog before the URL works.

### Check BSP library and SAP Fiori Launchpad app descriptor item in Eclipse

1. The BSP application and Fiori Launchpad App Descriptor item are generated in the chosen package along with two SICF objects. You now have a basic deployed Fiori app. If you are not able to see BSP applications and SAP Fiori Launchpad app description items, refresh your package by pressing `F5`.

![list](list.png)

### Create IAM App and Business Catalog

1. In Eclipse right-click your package and select **New** > **Other Repository Object**.

2. Search for **IAM App**, select it and click **Next >**.

![IAM App](iam.png)

3. Create a new IAM App:
- Name: **`ZTRAVEL_IAM_XXX`**
- Description: IAM App

![IAM App properties](iamname.png)

Click **Next >**.

4. Click **Finish**.

5. Select **Services** and add a new one.
![Add Service](iam2.png)

6. Select following:

- Service Type: `OData V4`
- Service Name: `<your_service_definition>`

![Choose Service](addservice.png)

Click **OK**.

**Save** and choose **Publish Locally** to Activate your IAM app.

![Publish IAM App](iam4.png)

7. Right-click your package **`ZTRAVEL_APP_XXX`** and select **New** > **Other Repository Object**.

8. Search for **Business Catalog**, select it and click **Next >**.

![Business Catalog](catalog2.png)

9. Create a new Business Catalog:
- Name: **`ZTRAVEL_BC_XXX`**
- Description: Business catalog

![Business Catalog](catalog3.png)

Click **Next >**.

10. Choose Transport Request is required and Click **Finish**.

11. Select **Apps** and add a new one.

![Add IAM App](catalog5.png)

12. Create a new Business Catalog:
- IAM App: `ZTRAVEL_IAM_XXX_EXT`
- Name: `ZTRAVEL_BC_XXX_0001`

![Add IAM App](catalog6.png)

Click **Next >**.

13. Click **Finish**.

14. Click **Publish Locally** to publish your business catalog.

![Publish Catalog](catalog8.png)


### Launch the Fiori App URL

1. In the service binding editor, click on the Fiori App URL.

![Fiori App URL](appurl.png)
2. This will launch the preview of the Fiori Application.

### Test yourself
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading