SAP ABAP Cloud i ABAP RESTful Application Programming Model (RAP) – nowa era w tworzeniu aplikacji w chmurze

Agnieszka Grzywacz, ABAP Consultant
- 13 lutego 2025
- Trendy w SAP
- 5 min

W miarę jak firmy na całym świecie coraz częściej przechodzą na chmurowe rozwiązania, rosną oczekiwania względem narzędzi umożliwiających szybkie i elastyczne tworzenie aplikacji. SAP, jako lider w dziedzinie systemów ERP, nie pozostaje w tyle, oferując swoim użytkownikom rozwiązania, które odpowiadają na te potrzeby. Jednym z najnowszych rozwiązań jest SAP ABAP Cloud, które stanowi rozwinięcie tradycyjnego środowiska ABAP w kontekście aplikacji działających w chmurze. Kluczowym elementem tego ekosystemu jest ABAP RESTful Application Programming Model (RAP), który umożliwia tworzenie nowoczesnych aplikacji z wykorzystaniem najlepszych praktyk programowania w chmurze.
ABAP w chmurze – ewolucja technologii
Tradycyjnie ABAP (Advanced Business Application Programming) był używany do tworzenia aplikacji i rozszerzeń w środowisku on-premise SAP. Z czasem jednak SAP zorientował się, że w dobie chmurowych rozwiązań potrzebna jest nowa, bardziej elastyczna platforma, która umożliwi tworzenie aplikacji opartej na najnowszych trendach technologicznych, takich jak mikroserwisy, architektura RESTful czy integracja z innymi chmurowymi usługami.
SAP ABAP Cloud to rozwiązanie, które daje programistom ABAP możliwość tworzenia aplikacji w chmurze, bazując na zaktualizowanych narzędziach i funkcjonalnościach, które uwzględniają współczesne podejście do programowania. Platforma ta jest częścią ekosystemu SAP Business Technology Platform (BTP), a jej głównym celem jest uproszczenie i przyspieszenie procesu tworzenia aplikacji w chmurze, przy jednoczesnym zachowaniu pełnej zgodności z istniejącymi aplikacjami i procesami on-premise.
ABAP RAP – nowoczesne podejście do aplikacji w SAP
ABAP RESTful Application Programming Model (RAP) jest kluczowym komponentem SAP ABAP Cloud, który umożliwia tworzenie nowoczesnych, elastycznych aplikacji. RAP jest modelem programowania opartym na standardach RESTful, co oznacza, że aplikacje są budowane z myślą o prostocie integracji i wysokiej skalowalności.
RAP opiera się na kilku podstawowych założeniach, które czynią go idealnym narzędziem do tworzenia aplikacji w chmurze:
- Modularność i skalowalność – RAP pozwala na tworzenie aplikacji składających się z niezależnych komponentów, co ułatwia ich późniejsze rozbudowywanie i dostosowywanie do zmieniających się potrzeb biznesowych.
- Prostota i szybkość tworzenia aplikacji – RAP upraszcza proces tworzenia aplikacji poprzez wykorzystanie modelu danych opartego na definicjach OData. Dzięki temu programiści mogą skupić się na logice biznesowej, a nie na skomplikowanej konfiguracji backendu.
- Integracja z chmurą i zewnętrznymi systemami – RAP integruje się z szerokim ekosystemem SAP BTP, umożliwiając łatwą integrację z innymi usługami chmurowymi, systemami SAP i aplikacjami zewnętrznymi.
- Bezpieczeństwo i zgodność z wymaganiami – Jako część SAP BTP, RAP zapewnia pełną zgodność z najlepszymi praktykami bezpieczeństwa oraz standardami regulacyjnymi, co jest szczególnie istotne w przypadku aplikacji działających w chmurze.
Przykład zastosowania ABAP RAP w praktyce
Załóżmy, że firma chce stworzyć aplikację do zarządzania podróżami służbowymi, która umożliwi pracownikom rezerwowanie biletów lotniczych, hoteli oraz planowanie podróży. Dzięki ABAP RAP programista może szybko zaprojektować aplikację, definiując odpowiednie modele danych oraz interfejsy API RESTful, które będą wykorzystywane przez front-end. Wykorzystanie modelu OData ułatwia integrację z systemem SAP S/4HANA, dzięki czemu aplikacja może korzystać z danych w czasie rzeczywistym, zachowując wysoką wydajność i niezawodność.
Dodatkowo, dzięki zastosowaniu chmurowej infrastruktury, firma może skalować aplikację w zależności od potrzeb, a także korzystać z innych usług dostępnych w ramach SAP BTP, takich jak analityka danych czy sztuczna inteligencja.
Korzyści z wdrożenia SAP ABAP Cloud i ABAP RAP
- Elastyczność – ABAP RAP umożliwia tworzenie aplikacji, które mogą być łatwo dostosowywane do zmieniających się wymagań biznesowych. Dzięki chmurowemu podejściu firmy mogą szybko wprowadzać zmiany i innowacje, co jest kluczowe w dynamicznym środowisku rynkowym.
- Oszczędność czasu i kosztów – Dzięki uproszczonemu modelowi programowania i zintegrowanym narzędziom, tworzenie aplikacji jest szybsze, a utrzymanie aplikacji staje się tańsze. Chmurowa infrastruktura pozwala na elastyczne zarządzanie zasobami, co przekłada się na oszczędności w zakresie kosztów infrastruktury IT.
- Lepsza integracja – ABAP RAP sprawia, że integracja z innymi aplikacjami, zarówno wewnętrznymi, jak i zewnętrznymi, jest łatwiejsza. Oparte na standardzie OData interfejsy API umożliwiają wymianę danych między systemami, co jest niezbędne w nowoczesnym ekosystemie IT.
- Wysoka wydajność i niezawodność – SAP ABAP Cloud wykorzystuje chmurową infrastrukturę SAP BTP, co zapewnia wysoką wydajność i niezawodność aplikacji, niezależnie od obciążenia systemu.
Przykład implementacji aplikacji do zarządzania podróżami z wykorzystaniem ABAP RAP
Załóżmy, że aplikacja będzie umożliwiała zarządzanie podróżami służbowymi, w tym rezerwowanie biletów lotniczych, hoteli i samochodów. Proces implementacji obejmuje kilka kluczowych etapów.
Krok 1: Przygotowanie środowiska
Zanim rozpoczniemy implementację, upewnijmy się, że mamy dostęp do środowiska SAP S/4HANA w wersji chmurowej oraz dostęp do SAP Business Technology Platform (BTP), gdzie będziemy tworzyć naszą aplikację. Ponadto, musimy upewnić się, że mamy dostęp do narzędzi takich jak ABAP Development Tools (ADT), które będą wykorzystywane do tworzenia naszej aplikacji w chmurze.
Krok 2: Tworzenie modelu danych z wykorzystaniem CDS Views
W ABAP RAP model danych jest tworzony w sposób zbliżony do tradycyjnego podejścia, jednak z naciskiem na nowoczesne podejście w postaci Core Data Services (CDS). CDS umożliwia definiowanie złożonych zapytań oraz logiki biznesowej w sposób deklaratywny. W przypadku ABAP RAP, CDS Views są wykorzystywane do definiowania modeli danych, które później będą wykorzystywane w aplikacji.
Definicja CDS View
Na początek tworzymy plik Data Definition będący widokiem CDS, który będzie odpowiadał za wyciąganie danych o podróżach z tabeli bazy danych. Definiujemy dane w formie obiektów z odpowiednimi polami:

W tym przykładzie, ZRAP_C_AGRZ_TRAVEL jest definicją CDS View, która mapuje dane z tabeli zrap_agrz_travel.

Używamy adnotacji @AbapCatalog.sqlViewName, aby przypisać nazwę widoku w SQL, co pozwala na jego późniejsze wykorzystanie w aplikacjach.
Krok 3: Definicja zachowań (Behavior Definitions)
W ABAP RAP, Behavior Definition jest mechanizmem, który umożliwia określenie operacji, takich jak tworzenie, edytowanie, usuwanie czy odczytywanie danych w aplikacji. Przykład definicji operacji związanych z podróżami:

W pierwszej linii przykładowego Behavior Definition ZRAP_C_AGRZ_TRAVEL umieszczona została infomacja o klasie zbp_rap_c_agrz_travel (napisanej w języku ABAP), która jest odpowiedzialna za zarządzanie niestandardowymi akcjami. Mogą zostać w niej oprogramowane akcje, które wybiegają poza standardowe operacje.

Krok 4: Tworzenie Service Definition i Service Binding
Po stworzeniu odpowiednich modeli danych i definicji zachowań, należy utworzyć odpowiednie Service Definition oraz Service Binding, które będą wykorzystywane przez aplikacje front-endowe, np. aplikacje Fiori.


Po utworzeniu powyższych oraz publikacji Service Binding możliwe jest natychmiastowe przetestowanie utworzonego serwisu poprzez kliknięcie na przycisk ‘Preview…’
Krok 5: Publikacja i testowanie aplikacji
Po zakończeniu implementacji aplikacji, możemy przetestować ją w chmurowym środowisku SAP BTP, a także opublikować ją jako aplikację Fiori, udostępniając użytkownikom końcowym możliwość rezerwowania podróży służbowych.


Podsumowanie
Wykorzystanie CDS Views i Behavior Definitions w ABAP RAP znacząco upraszcza tworzenie aplikacji chmurowych, zapewniając jednocześnie większą elastyczność i wydajność. CDS Views umożliwiają definiowanie modelu danych w sposób deklaratywny i optymalizowany, a Behavior Definitions pozwalają na centralne zarządzanie logiką biznesową, zapewniając pełną kontrolę nad operacjami na danych. Dzięki integracji z serwisami OData, możliwe jest łatwe udostępnianie danych aplikacjom front-endowym, co czyni rozwiązanie gotowym do pracy w chmurowym ekosystemie SAP.
Potrzebujesz wsparcia developerów ABAP?
- On 13/02/2025
0 Comments