Skip to content

Commit 034179b

Browse files
committed
hands-on exercises added
1 parent 20ced43 commit 034179b

File tree

334 files changed

+29276
-91
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

334 files changed

+29276
-91
lines changed

.eslintrc

+28
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,28 @@
1+
{
2+
"extends": "eslint:recommended",
3+
"env": {
4+
"node": true,
5+
"es6": true,
6+
"jest": true
7+
},
8+
"parserOptions": {
9+
"ecmaVersion": 2021
10+
},
11+
"globals": {
12+
"SELECT": true,
13+
"INSERT": true,
14+
"UPDATE": true,
15+
"DELETE": true,
16+
"CREATE": true,
17+
"DROP": true,
18+
"CDL": true,
19+
"CQL": true,
20+
"CXL": true,
21+
"cds": true,
22+
"sap": true
23+
},
24+
"rules": {
25+
"no-console": "off",
26+
"require-atomic-updates": "off"
27+
}
28+
}

.gitignore

+41
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,41 @@
1+
# CAP sflight
2+
_out
3+
*.db
4+
connection.properties
5+
default-*.json
6+
gen/
7+
node_modules/
8+
target/
9+
10+
# Web IDE, App Studio
11+
.che/
12+
.gen/
13+
14+
# MTA
15+
*_mta_build_tmp
16+
*.mtar
17+
mta_archives/
18+
/Makefile_*.mta
19+
20+
# Other
21+
.DS_Store
22+
.npmrc
23+
*.orig
24+
*.log
25+
26+
*.flattened-pom.xml
27+
28+
srv/src/main/resources/edmx/**
29+
dist/
30+
/app/resources/
31+
/app/router/package-lock.json
32+
33+
34+
# IDEs
35+
.idea
36+
*.iml
37+
.project
38+
.settings
39+
.classpath
40+
# .vscode/*
41+
# IMPORTANT: Do not exclude .vscode please!

README.md

+63-22
Original file line numberDiff line numberDiff line change
@@ -1,41 +1,82 @@
1-
# Session ID - Session Title
1+
# IIS160 - Accelerate the Development of SAP Fiori Apps Using SAP Fiori Elements
22

33
## Description
44

5-
This repository contains the material for the SAP TechEd 2021 session called Session ID - Session Title.
5+
This repository contains the material for the SAP TechEd 2021 session\
6+
**IIS160 - Accelerate the Development of SAP Fiori Apps Using SAP Fiori Elements**.
67

78
## Overview
89

9-
This session introduces attendees to...
10+
The use of SAP Fiori elements with OData V4 and SAP Cloud Application Programming Model allows you to\
11+
improve the efficiency of developing SAP Fiori apps.\
12+
In this session you will get hands-on experience developing a standard list report or object page app\
13+
using SAP Fiori elements, and then extend it using the flexible programming model.\
14+
Learn how to use the new features provided with SAP Fiori Tools to simplify how you add annotations\
15+
and to personalize the appearance of your app.
1016

1117
## Requirements
1218

13-
The requirements to follow the exercises in this repository are...
19+
There are no special requirements to follow the exercises in this repository.
1420

1521
## Exercises
1622

17-
Provide the exercise content here directly in README.md using [markdown](https://guides.github.com/features/mastering-markdown/) and linking to the specific exercise pages, below is an example.
18-
19-
- [Getting Started](exercises/ex0/)
20-
- [Exercise 1 - First Exercise Description](exercises/ex1/)
21-
- [Exercise 1.1 - Exercise 1 Sub Exercise 1 Description](exercises/ex1#exercise-11-sub-exercise-1-description)
22-
- [Exercise 1.2 - Exercise 1 Sub Exercise 2 Description](exercises/ex1#exercise-12-sub-exercise-2-description)
23-
- [Exercise 2 - Second Exercise Description](exercises/ex2/)
24-
- [Exercise 2.1 - Exercise 2 Sub Exercise 1 Description](exercises/ex2#exercise-21-sub-exercise-1-description)
25-
- [Exercise 2.2 - Exercise 2 Sub Exercise 2 Description](exercises/ex2#exercise-22-sub-exercise-2-description)
26-
23+
- [Getting Started - Setting up your Development Environment](exercises/ex0#getting-started---setting-up-your-development-environment)
24+
- [Setting up SAP Business Application Studio in an SAP Cloud Platform Trial Account](exercises/ex0#setting-up-business-application-studio-in-an-sap-business-transformation-platform-trial-account)
25+
- [New Trial Users](exercises/ex0#new-trial-users)
26+
- [Existing Trial Users](exercises/ex0#existing-trial-users)
27+
- [Accessing SAP Business Application Studio](exercises/ex0#accessing-sap-business-application-studio)
28+
- [Creating the Development Space](exercises/ex0#creating-the-development-space)
29+
- [Getting the Sample Scenario](exercises/ex0#getting-the-sample-scenario)
30+
- [Reopening the Exposed Port](exercises/ex0#reopen-the-exposed-port)
2731

28-
**OR** Link to the Tutorial Navigator for example...
29-
30-
Start the exercises [here](https://developers.sap.com/tutorials/abap-environment-trial-onboarding.html).
31-
32-
**IMPORTANT**
33-
34-
Your repo must contain the .reuse and LICENSES folder and the License section below. DO NOT REMOVE the section or folders/files. Also, remove all unused template assets(images, folders, etc) from the exercises folder.
32+
- [Exercise 1 - Generating an SAP Fiori Elements App](/exercises/ex1#exercise-1---generating-an-sap-fiori-elements-app)
33+
- [Exercise 1.1 Using the SAP Fiori tools Application Generator](/exercises/ex1#exercise-11-using-the-sap-fiori-tools-application-generator)
34+
- [Exercise 1.2 Adding an App Preview Script](/exercises/ex1#exercise-12-adding-an-app-preview-script)
35+
- [Exercise 1.3 Starting the App](/exercises/ex1#exercise-13-starting-the-app)
36+
37+
- [Exercise 2 Enhancing the UI by Using the SAP Fiori Tools Page Map](exercises/ex2#exercise-2-enhancing-the-ui-by-using-the-sap-fiori-tools-page-map)
38+
- [Exercise 2.1 Enable Data Load During Start of the App](exercises/ex2#exercise-21-enable-data-load-during-start-of-the-app)
39+
- [Exercise 2.2 Change Sequence of a Table Column in the List Report](exercises/ex2#exercise-22-change-sequence-of-a-table-column-in-the-list-report)
40+
- [Exercise 2.3 Adding Criticality to a Table Column](exercises/ex2#exercise-23-adding-criticality-to-a-table-column)
41+
- [Exercise 2.4 Adding Text and Text Arrangement to a Field](exercises/ex2#exercise-24-adding-text-and-text-arrangement-to-a-field)
42+
- [Exercise 2.5 Change Form Field Order and Display Type](exercises/ex2#exercise-25-change-form-field-order-and-display-type)
43+
- [Exercise 2.6 Adding a new Field Group](exercises/ex2#exercise-26-adding-a-new-field-group)
44+
45+
- [Exercise 3 - Fine-Tuning the UI](exercises/ex3#exercise-3---fine-tuning-the-ui)
46+
- [Exercise 3.1: Add Table Line Criticality](exercises/ex3#exercise-31-add-table-line-criticality)
47+
- [Exercise 3.2: Adding a side effect to the Trees-4-Tickets property](exercises/ex3#exercise-32-adding-a-side-effect-to-the-trees-4-tickets-property)
48+
- [Exercise 3.3: Adding a Semantic Key](exercises/ex3#exercise-33-adding-a-semantic-key)
49+
50+
- [Exercise 4 - Flexible Programming Model: Extending the App with Fiori Elements Building Blocks](exercises/ex4#exercise-4---flexible-programming-model-extending-the-app-with-fiori-elements-building-blocks)
51+
- [Flexible Programming Model Overview](exercises/ex4#flexible-programming-model-overview)
52+
- [Exercise 4.1 Remove Existing Section via Page Map](exercises/ex4#exercise-41-remove-existing-section-via-page-map)
53+
- [Exercise 4.2 Adding a Custom Section via Page Map](exercises/ex4#exercise-42-adding-a-custom-section-via-page-map)
54+
- [Exercise 4.3 Replace Generated XML Fragment Content](exercises/ex4#exercise-43-replace-generated-xml-fragment-content)
55+
- [Exercise 4.4 Testing the Building Block](exercises/ex4#exercise-44-testing-the-building-block)
56+
- [Exercise 4.5 Adding a Side Effect](exercises/ex4#exercise-45-adding-a-side-effect)
57+
58+
- [Exercise 5 - Adding a Micro Chart to the Table Building Block](exercises/ex5#exercise-5---adding-a-micro-chart-to-the-table-building-block)
59+
- [Exercise 5.1 Add Annotations UI.Chart and UI.DataPoint](exercises/ex5#exercise-51-add-annotations-uichart-and-uidatapoint)
60+
- [Exercise 5.2 Enhance UI.LineItem Annotation via Code Completion](exercises/ex5#exercise-52-enhance-uilineitem-annotation-via-code-completion)
61+
- [Exercise 5.3 Add Header Facet to Booking Supplements Page](exercises/ex5#exercise-53-add-header-facet-to-booking-supplements-page)
62+
63+
- [Exercise 6 - Flexible Programming Model: Using the Chart Building Block](exercises/ex6#exercise-6---flexible-programming-model-using-the-chart-building-block)
64+
- [Exercise 6.1 Extending the Service Definition](exercises/ex6#exercise-61-extending-the-service-definition)
65+
- [Exercise 6.2 Adding Aggregation Capabilities to the Entity Container](exercises/ex6#exercise-62-adding-aggregation-capabilities-to-the-entity-container)
66+
- [Exercise 6.3 Adding the @UI.Chart Annotation](exercises/ex6#exercise-63-adding-the-uichart-annotation)
67+
- [Exercise 6.3 Adding the Chart Building Block to the Custom Section](exercises/ex6#exercise-63-adding-the-chart-building-block-to-the-custom-section)
68+
- [Exercise 6.4 Implementing the Chart's Selection Change Handler](exercises/ex6#exercise-64-implementing-the-charts-selection-change-handler)
69+
- [Exercise 6.5 Testing the Chart's Event Handler](exercises/ex6#exercise-65-testing-the-charts-event-handler)
70+
71+
- [Exercise 7 - Flexible Programming Model: Changing the Edit Flow by Implementing a Controller Extension](exercises/ex7#exercise-7---flexible-programming-model-changing-the-edit-flow-by-implementing-a-controller-extension)
72+
- [Exercise 7.1 Move XML Fragment and Controller File to App Folder](exercises/ex7#exercise-71-move-xml-fragment-and-controller-file-to-app-folder)
73+
- [Exercise 7.2 Adding a Controller Extension to the Manifest](exercises/ex7#exercise-72-adding-a-controller-extension-to-the-manifest)
74+
- [Exercise 7.3 Testing the Controller Extension](exercises/ex7#exercise-73-testing-the-controller-extension)
3575

3676
## How to obtain support
3777

3878
Support for the content in this repository is available during the actual time of the online session for which this content has been designed. Otherwise, you may request support via the [Issues](../../issues) tab.
3979

4080
## License
41-
Copyright (c) 2021 SAP SE or an SAP affiliate company. All rights reserved. This project is licensed under the Apache Software License, version 2.0 except as noted otherwise in the [LICENSE](LICENSES/Apache-2.0.txt) file.
81+
82+
Copyright (c) 2021 SAP SE or an SAP affiliate company. All rights reserved. This file is licensed under the Apache Software License, version 2.0 except as noted otherwise in the [LICENSE](LICENSES/Apache-2.0.txt) file.

_i18n/i18n.properties

+76
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,76 @@
1+
# This is the resource bundle for travel_processor
2+
3+
Travel=Travel
4+
Travels=Travels
5+
TravelUUID=Travel UUID
6+
TravelID=Travel
7+
AgencyID=Agency
8+
AgencyName=Agency Name
9+
TravelAgency=Travel Agency
10+
BeginDate=Starting Date
11+
EndDate=End Date
12+
Dates=Dates
13+
TotalPrice=Total Price
14+
TravelStatus=Travel Status
15+
CustomerID=Customer
16+
CustomerName=Customer Name
17+
BookingFee=Booking Fee
18+
Description=Description
19+
Price=Price
20+
Prices=Prices
21+
ProductPrice=Product Price
22+
ProductID=Product
23+
OverallStatus=Overall Status
24+
GoGreen=Trees-4-Tickets
25+
GreenFee=Green Flight Fee
26+
Sustainability=Sustainability
27+
28+
Booking=Booking
29+
Bookings=Bookings
30+
BookingDate=Booking Date
31+
BookingID=Booking
32+
BookingNumber=Booking Number
33+
FlightPrice=Flight Price
34+
ConnectionID=Flight Number
35+
FlightDate=Flight Date
36+
FlightNumber=Flight Number
37+
FlightPrice=Flight Price
38+
BookingStatus=Booking Status
39+
Airline=Airline
40+
AirlineID=Airline
41+
Name=Name
42+
AirlineNumber=Airline Number
43+
Status=Status
44+
45+
BookingSupplement=Booking Supplement
46+
BookingSupplements=Booking Supplements
47+
BookingSupplementID=Booking. Supp. Number
48+
SupplementDescription=Supplement Description
49+
SupplementID=Supplement
50+
Supplement=Supplement
51+
SupplementType=Supplement Type
52+
53+
Passenger=Passenger
54+
LastName=Last Name
55+
PlaneType=Plane Type
56+
MaximumSeats=Maximum Seats
57+
OccupiedSeats=Occupied Seats
58+
59+
FirstName=First name
60+
LastName=Last name
61+
Title=Title
62+
Street=Street
63+
PostalCode=Postal Code
64+
City=City
65+
CountryCode=Country Code
66+
CurrencyCode=Currency Code
67+
PhoneNumber=Phone Number
68+
EMailAddress=EMail Address
69+
WebAddress=Web Address
70+
71+
Flight=Flight
72+
73+
CopyTravel=Copy Travel
74+
AcceptTravel=Accept Travel
75+
RejectTravel=Reject Travel
76+
DeductDiscount=Deduct Discount

_i18n/i18n_de.properties

+72
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,72 @@
1+
# This is the resource bundle for travel_processor
2+
3+
Travel=Reise
4+
Travels=Reisen
5+
TravelUUID=Reise-UUID
6+
TravelID=Reisenummer
7+
AgencyID=Agency-ID
8+
AgencyName=Agenturname
9+
TravelAgency=Veranstalter
10+
BeginDate=Startdatum
11+
EndDate=Enddatum
12+
Dates=Termine
13+
TotalPrice=Gesamtpreis
14+
TravelStatus=Reisestatus
15+
CustomerID=Kundennummer
16+
CustomerName=Name des Kunden
17+
BookingFee=Reservierungsgebühr
18+
Description=Beschreibung
19+
Price=Preis
20+
Prices=Preise
21+
ProductPrice=Produktpreis
22+
ProductID=Produktnummer
23+
OverallStatus=Gesamtstatus
24+
25+
Booking=Buchung
26+
Bookings=Buchungen
27+
BookingDate=Buchungsdatum
28+
BookingID=Buchungs-ID
29+
BookingNumber=Buchungsnummer
30+
FlightPrice=Flugpreis
31+
ConnectionID=Flugnummer
32+
FlightDate=Flugdatum
33+
FlightNumber=Flugnummer
34+
BookingStatus=Buchungsstatus
35+
Airline=Fluggesellschaft
36+
AirlineID=Fluggesellschafts-ID
37+
Name=Name
38+
AirlineNumber=Fluggesellschaftsnummer
39+
Status=Status
40+
41+
BookingSupplement=Buchungszusatz
42+
BookingSupplements=Buchungszusätze
43+
BookingSupplementID=Buchungszusatznummer
44+
SupplementDescription=Zusatzbeschreibung
45+
SupplementID=Zusatz-ID
46+
Supplement=Zusatz
47+
SupplementType=Zusatzart
48+
49+
Passenger=Passagier
50+
LastName=Nachname
51+
PlaneType=Flugzeugtyp
52+
MaximumSeats=Maximale Sitzplätze
53+
OccupiedSeats=Belegte Plätze
54+
55+
FirstName=Vorname
56+
LastName=Nachname
57+
Title=Titel
58+
Street=Straße
59+
PostalCode=Postleitzahl
60+
City=Ort
61+
CountryCode=Ländercode
62+
CurrencyCode=Währungscode
63+
PhoneNumber=Telefonnummer
64+
EMailAddress=E-Mail-Addresse
65+
WebAddress=Web-Adresse
66+
67+
Flight=Flug
68+
69+
CopyTravel=Reise kopieren
70+
AcceptTravel=Reise akzeptieren
71+
RejectTravel=Reise ablehnen
72+
DeductDiscount=Rabatt abziehen

0 commit comments

Comments
 (0)