Architektura SAP R/3

Wybrane zagadnienia
 
 

Wawrzyniec Bryl


Wprowadzenie

Podstawowe oprogramowanie R/3

Podstawowe założenia architektury

Struktura organizacyjna SAP Główne interfejsy systemu


 

  Wprowadzenie
  Następnym krokiem, po zapoznaniu się z podstawami SAP R/3, jest bliższe przyjrzenie się architekturze systemu: jak system działa, jak wyglądają jego główne procesy, jak obsługiwana jest komunikacja, jak system używa podstawowej bazy danych i jak komunikuje się z systemem operacyjnym.

Architektura jest w zasadzie sztuką budowania; ażeby skonstruować, czy zbudować coś, potrzebujemy zazwyczaj dwóch elementów: projektu i materiałów. SAP R/3 zawiera obydwa elementy: solidny projekt, oparty na modularnej, wielowarstwowej architekturze klient - serwer oraz komponenty budowlane, procesy i moduły programowe.

Poniższe opracowanie jest próbą wyjaśnienia paru wybranych zagadnień, z którymi spotykamy się na co dzień w systemie R/3, lecz nie zawsze zdajemy sobie sprawę z ich istnienia. Mam nadzieję, że pomoże ono użytkownikowi systemu R/3 w zdefiniowaniu, które elementy stanowią system i jak je połączyć w całość.

 
  Podstawowe oprogramowanie R/3
  Podstawowe oprogramowanie R/3 (R/3 basis software) to zbiór programów i narzędzi, które komunikują się z systemem operacyjnym komputera, podstawową bazą danych, sieciowymi protokołami komunikacyjnymi i interfejsem użytkownika (warstwa prezentacji).

Dzięki temu oprogramowaniu moduły R/3 (FI, CO, SD, itd.) mają tę samą funkcjonalność i działają dokładnie w ten sam sposób, niezależnie od zainstalowanego systemu operacyjnego, czy bazy danych. Podstawowe oprogramowanie R/3 jest niezależną warstwą, która gwarantuje integrację wszystkich modułów. Warto w tym miejscu wspomnieć o dwóch terminach, których często używa się do określenia podstawowego oprogramowania R/3: R/3 common kernel i R/3 middleware. Termin kernel zwykle odnosi się do jądra sytemu; zaś middleware oznacza zbiór programów, które umożliwiają niezależną komunikację pomiędzy górną a dolną warstwą. Często te dwa terminy oznaczają system podstawowy R/3.

Rysunek 1: SAP R/3 middleware. Rysunek 1: SAP R/3 middleware.

Jak pokazano na rysunku 1, R/3 middleware używa wspólnych interfejsów aplikacji (API - application program interfaces) i posiada funkcję odpowiedzialną za komunikowanie się systemem operacyjnym, bazą danych, sieciowymi protokołami komunikacyjnymi i z graficznym interfejsem użytkownika (GUI).

 
  Podstawowe założenia architektury
  R/3 używa parę szeroko znanych zwrotów, którym SAP nadał specyficzne znaczenie. Część z nich jest potrzebna do zrozumienia architektury SAP R/3 i zostanie teraz wyjaśniona. Transakcja Ogólnie transakcja (transaction) jest operacją, która pozwala użytkownikowi dokonać zmian w bazie danych. Na cały system R/3 trzeba patrzeć, jak na system, który przetwarza transakcje biznesowe. To znaczy, że cały przepływ danych, który przebiega w modułach systemu, wykonuje się za pomocą transakcji.

W systemie SAP transakcje są sekwencją powiązanych kroków. Te logicznie powiązane kroki, znane jako kroki dialogowe (dialog steps), są kolejnymi ekranami, w których wprowadza się dane, co powoduje powstawanie kolejnych zdarzeń. Istnieje specjalne urządzenie do monitorowania transakcji, SAP dispatcher (dyspozytor SAP), które dba o obsługę sekwencji tych kroków.

Końcowym zadaniem transakcji jest modyfikacja informacji, która ostatecznie jest zapisywana w bazie danych. Baza danych nie zostanie zmodyfikowana do czasu zakończenia transakcji. W konsekwencji, jeśli transakcja nie została zakończona, można odwrócić wszelkie zmiany.

Transakcje składają się zwykle z dwóch faz: fazy interaktywnej i fazy uaktualnienia. Faza interaktywna musi mieć co najmniej jeden krok, ale może składać się też z wielu kroków. Faza ta jest odpowiedzialna za przygotowanie rekordów bazy danych, które mogą uaktualnić bazę. Faza uaktualnienia może składać się z paru kroków lub z żadnego. Faza ta przetwarza poprzednio przygotowane rekordy i uaktualnia bazę danych.

Ponieważ użytkownicy mają możliwość dostępu do tej samej transakcji w tym samym czasie, istnieje mechanizm blokujący, uruchamiany podczas wykonywania transakcji.

Wszystkie transakcje w systemie R/3 posiadają swój kod (transaction code). Pomaga to w szybkim poruszaniu się po systemie. Aby przejść do określonej transakcji należy wpisać jej numer w polu poleceń (command field), które jest zawsze widoczne w lewym górnym rogu dowolnego formularza (okna) R/3. Wszystkie dostępne kody transakcji są składowane w tabeli systemowej TSTC. Aby zobaczyć tę tabelę należy wykonać następującą sekwencję poleceń z menu: Tools --> ABAP/4 Development Workbench --> Development --> Other Tools --> Transactions, albo wpisać numer transakcji SE93 w pole poleceń.
 

Krok dialogowy Krok dialogowy (dialog step) jest ekranem SAP R/3, reprezentowanym przez dynamic program (dynpro), który to program składa się z ekranu oraz wszystkich potrzebnych na danym ekranie definicji pól, danych o rozmieszczeniu elementów, itd.

Kiedy użytkownik porusza się w systemie R/3 od ekranu do ekranu, to wykonuje kroki dialogowe. Zbiór takich kroków dialogowych tworzy transakcję.

Rysunek 2 przedstawia powiązanie między pojęciem transakcji i kroku dialogowego.

Rysunek 2: Transakcja i krok dialogowy.Rysunek 2: Transakcja i krok dialogowy.
 

Logiczne jednostki pracy Logiczną jednostkę pracy (Logical unit of work) definiuje się jako podstawowy krok przetwarzania, który działa jak mechanizm blokujący, który chroni integralność transakcji. LUW jest zbiorem kroków w obrębie transakcji i aby móc dalej wykonywać transakcję, trzeba prawidłowo ukończyć wszystkie kroki. Jeśli podczas wykonywania transakcji powstaną jakieś błędy, bieżący LUW jest anulowany, jednak poprzedni pozostaje bez zmian.

W systemie SAP rozróżniamy trzy różne typy transakcji:
 

 
  Struktura organizacyjna SAP
  Z punktu widzenia podstawowych założeń architektury systemu SAP R/3 najważniejszą jednostką organizacyjną jest mandant. Warto jednak zapoznać się z pozostałymi jednostkami organizacyjnymi.

Rysunek 3 przedstawia podstawowe jednostki organizacyjne systemu R/3.

Rysunek 3: Struktura organizacyjna SAP.Rysunek 3: Struktura organizacyjna SAP.
 

Instalacja R/3 (instance) Mandant (client) Mandant (client) jest definiowany jako prawnie i organizacyjnie niezależna jednostka wewnątrz systemu R/3.

Podstawowe cechy mandanta:
 

  • jest jednostką organizacyjną najwyższego poziomu,
  • stanowi logiczną grupę dla jednostek gospodarczych,
  • w kopii systemu musi istnieć co najmniej jeden mandant,
  • między manadantami nie istnieje integracja,
  • każdy mandant zawiera oddzielny i unikalny zbiór Master Data (danych podstawowych) i większości tablic,
  • różne mandanty w tym samym systemie dzielą tę samą, lecz logicznie odrębną bazę danych,
  • między różnymi mandantami mogą wystąpić połączenia związane z modułami finansowymi,
  • na poziomie mandanta może zostać zdefiniowany standardowy plan kont.
  • Mandant jest zakładany zwykle zaraz po instalacji systemu przez skopiowanie jednego ze standardowych mandantów, dostarczonych wraz z pakietem. Na różnych kopiach mandantów klient może wykonywać testy, może ich używać do szkoleń i rozpocząć rzeczywiste przystosowanie.

    W systemie SAP R/3 znajdują się trzy standardowe mandanty: 000, 001 i 066. Mandant 000 zawiera prostą strukturę organizacyjną firmy testowej oraz parametry dla aplikacji, standardowych ustawień, konfiguracji kontroli standardowych transakcji i przykłady, które można użyć w wielu różnych profilach aplikacji biznesowych. Z tych powodów 000 jest specjalnym mandantem w systemie R/3, ponieważ zawiera niezależne od danego mandanta ustawienia.

    Mandant 001 jest kopią mandanta 000, zawierającą testowaną jednostkę gospodarczą. Jeśli mandant ten jest konfigurowany i przystosowywany, to jego ustawienia są zależne od danego mandanta. Mandant nie zachowuje się, jak 000. Jest on bowiem zarezerwowany dla działań, które przygotowują system do środowiska produkcyjnego. Klienci SAP używają zwykle tego mandanta jako źródła kopiowania do innych, nowych mandantów.

    Mandant 066 jest zarezerwowany dla firmy SAP w celu umożliwienia dostępu do systemów jej klientów, aby wykonywać usługę EarlyWatch.

    System R/3 zawiera narzędzia do tworzenia, kopiowania, przenoszenia, resetowania, wymazywania i porównywania mandantów.

    Jednostka gospodarcza (company) Rysunek 4 przedstawia jednostkę gospodarczą, jako elementarną część modelu przedsiębiorstwa.

    Rysunek 4: Jednostka gospodarcza w modelu przedsiębiorstwa.Rysunek 4: Jednostka gospodarcza w modelu przedsiębiorstwa.
     

    Dział gospodarczy (business area) Obszar rachunku kosztów (controlling area)

    Rysunek 5 przedstawia przykładowy obszar rachunku kosztów.

    Rysunek 5: Obszar rachunku kosztów.Rysunek 5: Obszar rachunku kosztów.
     

    Zakład i magazyn (plant and warehouse)   Rysunek 6 przedstawia położenie zakładu i magazynu względem jednostki gospodarczej.

    Rysunek 6: Zakład i magazyn.Rysunek 6: Zakład i magazyn.
     

     
      Główne interfejsy systemu
      R/3 middleware, albo wspólne jądro systemu składa się z następujących głównych interfejsów:

    Dla zachowania zgodności i przenośności systemu, wszystkie te interfejsy są pogrupowane w główne funkcje interfejsów jądra systemu SAP. Interfejsy w systemie SAP są grupami programów, działającymi jako daemon processes w systemie operacyjnym Unix, albo jako usługi w systemie Windows NT.

    Rysunek 7 przestawia główne interfejsy systemu R/3.

    Rysunek 7: Główne interfejsy systemu R/3.Rysunek 7: Główne interfejsy systemu R/3.

    Powrót