Przejście do głównej treści

SAP RFC – Moduły Funkcyjne

Wprowadzenie

Certyfikowany moduł funkcyjny RFC /DABEXP/RFC_SAPCONNECTOR jest wymagany do podłączenia SAP System do rozwiązań ekstrakcyjnych dab SAP-Extraction Solutions. Rozwiązanie dab SAP-Extraction Solution Add-On instaluje się następnie w SAP System.

Wymagane jest również założenie konta użytkownika SAP, któremu przypisano odpowiedni profil autoryzacyjny. W kolejnych rozdziałach opisano proces instalacji modułu funkcyjnego oraz strukturę wymaganego profilu autoryzacji.

Ważne

Do pierwszej instalacji modułu RFC w systemie SAP należy użyć pliku typu AOI-SAR. Jeżeli celem jest aktualizacja istniejącego modułu RFC, należy skorzystać z pliku AOU-SAR.


Wymagania

Wspierane rozwiązania

dab SAP-Extraction Solution działa z następującymi rozwiązaniami SAP:

  • SAP NetWeaver – 7.50 (SAP_BASIS 750) lub wyższy
    • SAP ERP – 6.0 (ECC 6.0)
    • SAP CRM – 7.0
    • SAP SRM – 7.0
    • SAP SCM – 7.0
    • SAP EWM – 7.0
    • Powyższa lista nie jest wyczerpująca; inne rozwiązania bazujące na SAP NetWeaver z ABAP-Stack i łącznością RFC są również kompatybilne
  • SAP S/4HANA – 1610 lub wyższy
  • SAP S/4HANA Cloud, Extended Edition – wszystkie wersje
  • SAP Cloud ERP Private lub SAP S/4HANA Cloud, Private Edition – wszystkie wersje
  • RISE with SAP Ready: Rozwiązanie SAP Add-On jest oficjalnie wspierane oraz certyfikowane do pracy w środowiskach RISE with SAP (Private Cloud Edition)
Uwaga

SAP Cloud ERP ani SAP S4/HANA Cloud, Public Edition nie obsługują importu Add-Onów i dlatego są niekompatybilne.

Wymagane transakcje

Aby zainstalować Add-On, administrator (lub osoba wykonująca wdrożenie) powinna mieć dostęp do następujących transakcji (wersja 0053 lub wyższa):

  • SAINT – SAP Add-On Installation Tool
  • SPAM – Support Package Manager

Instalacja i aktualizacja

Instalacja

Uwaga

Do instalacji na SAP Basis 740 lub wyższym wymagana jest wersja 1.61 lub wyższa. Plik instalacyjny jest dostępny do pobrania w Customer Portal.

Ważne

Do instalacji na SAP Basis 731 lub niższym wymagany jest plik dabexp-sapconn-aoi-140.sar. Można go pobrać tutaj.

W tym celu niezbędne są specjalne uprawnienia. Do wdrożenia Add-On wykorzystywana jest transakcja SAINT.

Po wywołaniu transakcji SAINT należy zainstalować plik SAR pakietu instalacyjnego (AOI) przez menu.

W pasku menu proszę wybrać Installation Package > Load Packages > From Frontend i wskazać odpowiedni plik SAR.

installationPackage

Jeśli pakiet DABEXP nie wyświetla się na liście, należy dezaktywować filtry:

filter

Wskazówka

Jeśli pojawi się komunikat dotyczący otwartych żądań ekstrakcji danych, można go pominąć – Add-On nie modyfikuje żadnych struktur danych w systemie SAP.

Jeśli pojawi się ostrzeżenie, że pakiet nie posiada podpisu, można je zignorować. Tylko pakiety wydawane przez SAP są podpisywane – Add-Ony firm trzecich nie otrzymują podpisu.

saprfc-2

Aktualizacja

Jeżeli Add-On jest już zainstalowany w SAP System, można przeprowadzić aktualizację Add-On do nowszej wersji przy użyciu pakietu Upgrade (AOU). Procedura aktualizacji przebiega analogicznie jak instalacja.

Uwaga

Do aktualizacji systemów SAP z Basis 740 lub wyższym potrzebny jest plik dabexp-sapconn-aou-161.sar. Plik dostępny jest do pobrania w zasobach Customer Portal.

Ważne

Aby zaktualizować systemy SAP z Basis 731 lub niższym, używa się pliku dabexp-sapconn-aou-140.sar. Plik można pobrać tutaj.


Autoryzacje

dab SAP-Extraction Solutions bazują na mechanizmach bezpieczeństwa oraz koncepcji uprawnień SAP System. Dodatkowo, dostęp do tabel jest zawsze tylko do odczytu. Aby połączyć dab SAP-Extraction Solution z SAP System, niezbędny jest użytkownik, któremu przypisano rolę autoryzacyjną zawierającą poniższe obiekty autoryzacji.

Użytkownik SAP wymagany do łączności może mieć następujący typ:

  • Dialog
  • Systemowy
  • Komunikacyjny
  • Serwisowy

Aby utworzyć lub zmodyfikować takiego użytkownika, wymagane są uprawnienia do realizacji transakcji:

  • PFCG: zarządzanie lub tworzenie roli autoryzacyjnej
  • SU01: zarządzanie lub zakładanie użytkowników

Uprawnienia do uruchomienia modułu RFC

Tutaj możliwe są dwie opcje: autoryzacja na poziomie grupy funkcyjnej lub na poziomie modułu funkcyjnego.

Obiekt autoryzacji wykorzystywany w tym celu to S_RFC: znajduje się on w klasie autoryzacji AAAB – Obiekty autoryzacji międzyaplikacyjne > Obiekt autoryzacji S_RFC – Kontrola autoryzacji dla dostępu RFC.

Uprawnienie na poziomie grupy funkcyjnej

Pierwszym wariantem jest przyznanie uprawnień dla odpowiednich grup funkcyjnych przez RFC_TYPE ustawiony na FUGR (Function Group).

W poniższej tabeli wyszczególniono odpowiednie pola oraz wartości dla obiektu autoryzacji S_RFC.

PoleWartość
ACTVT
(Czynność)
16
(wykonanie)
RFC_NAME
(Nazwa obiektu RFC do ochrony)
/SDF/RI_CRM
CMON
RFC1
SYST
/DABEXP/DAB_FUGR
RFC_TYPE
(Typ chronionego obiektu RFC)
FUGR
(grupa funkcyjna)

Uprawnienie na poziomie modułu funkcyjnego

Alternatywnie, od wersji SAP NW 7.0 EHP 2 (SAP_BASIS 702), istnieje możliwość ustawienia RFC_TYPE na FUNC (Function Module).

W tabeli przedstawiono właściwe pola i wartości dla obiektu autoryzacji S_RFC.

PoleWartość
ACTVT
(Czynność)
16
(wykonanie)
RFC_NAME
(Nazwa obiektu RFC do ochrony)
/SDF/CMO_GET_INSTNO
CMO_GET_INSTNO
DDIF_FIELDINFO_GET
RFC_GET_FUNCTION_INTERFACE
RFC_GET_NAMETAB
RFCPING
/DABEXP/RFC_SAPCONNECTOR
RFC_TYPE
(Typ chronionego obiektu RFC)
FUNC
(moduł funkcyjny)

Pozostałe wymagane moduły funkcyjne

Poza modułem /DABEXP/RFC_SAPCONNECTOR, do poprawnego działania wymagane są również inne moduły.

W poniższej tabeli znajdują się grupy funkcyjne, odpowiadające im moduły i ich przeznaczenie:

Grupa funkcyjna​Moduł funkcyjnyZastosowanie
/SDF/RI_CRM/SDF/CMO_GET_INSTNOZapytanie o numer instalacji w systemie S4/HANA
CMONCMO_GET_INSTNOZapytanie o numer instalacji
RFC1RFC_GET_FUNCTION_INTERFACE
RFC_GET_NAMETAB
Sprawdzanie struktury i istnienia modułów RFC
SDIFRUNTIMEDDIF_FIELDINFO_GETWymagany dla poprawnego działania RFC Netweaver
SYSTRFCPINGTest połączenia RFC
/DABEXP/DAB_FUGR/DABEXP/RFC_SAPCONNECTORWczytywanie zawartości tabeli

Uprawnienia na poziomie tabel

Wskazówka

Uprawnienia do tabeli można przyznać wyłącznie w całości lub wcale. Ograniczenia do wybranych danych, np. kodów firm, nie są możliwe.

Do przydzielania uprawnień dostępowych do zawartości eksportowanych tabel stosuje się poniższe obiekty autoryzacji. Weryfikacja odbywa się z wykorzystaniem modułu funkcyjnego VIEW_AUTHORITY_CHECK.

Uprawnienia do tabel można przyznać na dwa sposoby – przez grupę autoryzacyjną lub przez nazwę tabeli.

Ważne

W przypadku przyznania uprawnień poprzez oba obiekty autoryzacji, najpierw sprawdzana jest autoryzacja na S_TABU_DIS (grupa autoryzacyjna tabeli). Jeśli ten test zakończy się niepowodzeniem, sprawdzane jest uprawnienie dla S_TABU_NAM (nazwa tabeli).

Uwaga

Przy przyznawaniu uprawnień na poziomie tabel należy zapewnić również dostęp do poniższych tabel.

TabelaGrupa autoryzacyjnaCel
T000SSKlienci – tabela standardowa do testu połączenia
T001FC01Jednostki gospodarcze – tabela awaryjna do testu połączenia
DD02LSłownik danych ABAP – dostępne tabele w systemie
DD02TSłownik danych ABAP – teksty opisujące tabele
DD02VSłownik danych ABAP – wyszukiwanie tabel w dab Nexus Package Studio
DD03LSłownik danych ABAP – dostępne pola w systemie
DD03TSłownik danych ABAP – dostępne opisy pól
DD04LSłownik danych ABAP – wymagane do ekstrakcji pól typu FLTP
NRIVSCZakresy numeracji – obiekty czasu rzeczywistego w dab Nexus
NRIVSHADOWLokalne NRIV – obiekty czasu rzeczywistego przy systemach wieloprocesorowych w dab Nexus
TNROSSDefinicja obiektów zakresów numeracji – obiekty czasu rzeczywistego w dab Nexus

Autoryzacja przez Grupy Autoryzacyjne Tabel

Klasa autoryzacji BC_A Basis – Administracja → Obiekt autoryzacji S_TABU_DIS

Stosuje się ją, by na poziomie grupy autoryzacyjnej tabeli zdefiniować, do których tabel możliwy jest dostęp oraz w jaki sposób. Grupy autoryzacyjne wpisuje się do parametru DICBERCLS, a tryb dostępu określa pole ACTVT. Przypisanie tabeli do grupy autoryzacyjnej można sprawdzić w tabeli TDDAT.

PoleWartość
ACTVT
(Czynność)
03
(Odczyt)
DICBERCLS
(Grupa aut.)
*

Autoryzacja przez Nazwy Tabel

Klasa autoryzacji BC_A Basis – Administracja > Obiekt autoryzacji S_TABU_NAM

Stosuje się ją, aby na poziomie nazwy tabeli zdefiniować, do których tabel oraz w jaki sposób przyznaje się uprawnienia. Tabele definiuje się przez parametr TABLE, zaś rodzaj dostępu przez ACTVT.

PoleWartość
ACTVT
(Czynność)
03
(Odczyt)
TABLE
(Nazwa tabeli)
*

Testowanie

Testowanie modułu funkcyjnego

Po zainstalowaniu modułu zgodnie z powyższą instrukcją, możliwe jest przeprowadzenie wstępnego testu jego działania za pomocą transakcji SE37 – należy wybrać moduł funkcyjny i kliknąć przycisk Test/Execute lub użyć klawisza F8.

functionbuilder

W pierwszym oknie dialogowym można wprowadzić parametry importu. W przykładzie użyto tabeli jednostek gospodarczych T001, podanej w polu QUERY_TABLE. Można wybrać dowolną tabelę, do której aktualnie zalogowany użytkownik ma prawo dostępu. Na potrzeby pierwszego testu nie są konieczne żadne dodatkowe dane. Aby uruchomić test, należy kliknąć przycisk Execute lub nacisnąć klawisz F8.

funkBauExecute

Jeśli moduł funkcyjny został wykonany bez błędów, pojawią się tabele wynikowe. Wynik można obejrzeć klikając ikonę Widok szczegółowy przy liczbie wpisów w TABL_FIELDS lub DATA.

funkBauTestErgebniss

TABL_FIELDS zawiera strukturę pól pobranej tabeli:

TablFieldsStruktur

DATA zawiera rekordy danych z wybranej tabeli:

StrukturEditorData

Test połączenia RFC

Do sprawdzenia, czy połączenie RFC może być prawidłowo nawiązane, zalecane jest narzędzie dab FunctionModuleTester. Dalsze instrukcje znajdują się tutaj.


Odinstalowanie

  • Proszę otworzyć transakcję SAINT
  • Przejść do zakładki Uninstallable components, wybrać komponent DABEXT i kliknąć Start
  • Po potwierdzeniu deinstalacji komponent zostanie usunięty z SAP System

UninstallableComponents

StartOptionen

DeinstallationsQueue

Certyfikaty SAP

Ważne

SAP nie certyfikuje już Add-Onów dla systemów ECC. Oznacza to, że systemy dab nie mogą być już (ponownie) certyfikowane przez SAP dla własnych modułów funkcyjnych w środowiskach ECC. Więcej informacji można znaleźć w tym wpisie na blogu SAP.

Add-On posiada certyfikacje dla następujących wersji – aktualna lista certyfikatów dostępna jest również w każdej chwili w SAP Certified Solutions Directory.

Add-On WersjaTest SAP SystemCertyfikacja
1.71SAP S/4HANA Cloud Private Edition, wydanie 2025Clean Core - Poziom B
​SAP S/4HANA Cloud Private Edition 2025
SAP S/4HANA Cloud Private Edition, wydanie 2023Clean Core - Poziom B
​SAP S/4HANA Cloud Private Edition 2023
1.61SAP S/4HANA Cloud Private Edition, wydanie 2023Classic ABAP-Add-On
​​S/4HC-ADDON 2023 - Add-On FOR SAP S/4HANA CLOUD PRIVATE EDITION 2023
SAP S/4HANA Cloud, private edition, wydanie 2022Classic ABAP-Add-On
​S/4HC-ADDON 2022 ‒ Add-On FOR SAP S/4HANA CLOUD PRIVATE EDITION 2022
SAP S/4HANA 2022Classic ABAP-Add-On
​S/4HC-EX-ABAP 2022 ‒ ABAP Add-On FOR SAP S/4HANA CLOUD EX 2022
SAP NetWeaver 7.50Classic ABAP-Add-On
​ABAP 7.0 ‒ ABAP Add-On FOR SAP NETWEAVER APPLICATION SERVER
1.40SAP S/4HANA 2021Classic ABAP-Add-On
​​S/4-ABAP 2021 ‒ ABAP Add-On FOR SAP S/4HANA 2021
SAP S/4HANA 2021Classic ABAP-Add-On
​S/4HC-EX-ABAP 2021 ‒ ABAP Add-On FOR SAP S/4HANA CLOUD EX 2021
SAP S/4HANA 2020Classic ABAP-Add-On
S/4HC-EX-ABAP 2020 ‒ ABAP Add-On FOR SAP S/4HANA CLOUD EX 2020
SAP S/4HANA 2020Classic ABAP-Add-On
​S/4-ABAP 2020 ‒ ABAP Add-On FOR SAP S/4HANA 2020
SAP S/4HANA 1909Classic ABAP-Add-On
​S/4HC-EX-ABAP 1909 ‒ ABAP Add-On FOR SAP S/4HANA CLOUD EX 1909
SAP S/4HANA 1909Classic ABAP-Add-On
​S/4-ABAP 1909 ‒ ABAP Add-On FOR SAP S/4HANA 1909
1.1SAP S/4HANA 2020Classic ABAP-Add-On
​​​​S/4-ABAP 2020 ‒ ABAP Add-On FOR SAP S/4HANA 2020
SAP S/4HANA 1909Classic ABAP-Add-On
​​​​​S/4-ABAP 1909 ‒ ABAP Add-On FOR SAP S/4HANA 1909
1.0SAP S/4HANA 1809Classic ABAP-Add-On
S/4-ABAP 1809 - ABAP Add-On FOR SAP S/4HANA 1809
SAP NetWeaver 7.50Classic ABAP-Add-On
ABAP 7.0 ‒ ABAP Add-On FOR SAP NETWEAVER APPLICATION SERVER

Release Notes

Wersja 1.71

  • Dostosowanie do SAP Clean Core Level B, co oznacza wykorzystanie wyłącznie interfejsów API zatwierdzonych przez SAP
  • Zmiany dotyczące warunków importu: Add-On można zainstalować na SAP ECC, SAP S4/HANA oraz SAP BW/4HANA
  • Rozszerzenie możliwości ekstrakcji widoków z nieunikalnymi kluczami podstawowymi (np. FAGLFLEXT): aby z tego skorzystać, wymagana jest dodatkowa aktualizacja aplikacji

Wersja 1.61

  • podczas odinstalowywania Add-On nie wszystkie obiekty mogły zostać usunięte z powodu nieprawidłowych informacji o obiekcie. Powodowało to przerwanie operacji deinstalacji.

Wersja 1.60

  • poza poprawką z wersji 110, obecnie obsługiwana jest również rozwiazywanie zagnieżdżonych .INCLUDES z sufiksami. Dotyczy to w szczególności tabeli ACDOCA, gdzie .INCLU-_PA zawiera sufiks i jest rozszerzona przez .APPEND. Dzięki tej poprawce, sufiks jest teraz także stosowany do pól w .APPEND.

Wersja 1.50

  • moduł funkcyjny został przygotowany do wspierania eksportu długich tekstów z kolumny CLUSTD w tabeli STXL

Wersja 1.40

  • ostatnia wersja SAP Add-On kompatybilna z SAP Basis 731 i niższymi
  • spełnienie wymaganych poziomów bezpieczeństwa dla S/4 Cloud EX

Wersja 1.30

  • Pobieranie informacji DDIC podawało nieprawidłową wartość OUTPUTLEN dla typu danych RAW w przypadku GUID w tabelach CGPL_TASK lub DPR_TASK. W efekcie eksportowano skróconą wersję tych GUID-ów. Dla pól typu RAW, o INTLEN 16 oraz OUTPUTLEN mniejszym niż 32, OUTPUTLEN został poprawiony do wartości 32.

Wersja 1.20

  • podczas budowania listy pól do zapytania SQL, **<table>~<fieldname>** był skracany po 30 znakach podczas składania, co powodowało błędy w zapytaniu SQL.

Wersja 1.10

  • w systemach S4/HANA pojawiały się błędy przy określonych tabelach (BKPF, BSEG, MATDOC, ACDOCA, MHNK). Dostosowano rozwiazywanie struktur INCLUDE o nazwach
    • .INCLU-_PN
    • .INCLU-_A1
    • .INCLU-LO Zmodyfikowano strukturę listy pól w zapytaniu SQL z samej nazwy pola na **<table>~<fieldname>**, co pozwala uniknąć wyjątków związanych z niektórymi nazwami pól używającymi zastrzeżonych nazw SQL (np. tabela TOAM – pole Connection).

SAP Legacy RFC Function Modules

Wskazówka

Jeśli korzystają Państwo z modułu funkcyjnego innego niż /DABEXP/RFC_SAPCONNECTOR, zdecydowanie zalecamy dokonanie aktualizacji do tego modułu RFC! dab nie będzie ani aktualizował, ani wspierał innych modułów funkcyjnych. Te moduły nie mają również certyfikacji SAP!

Obok /DABEXP/RFC_SAPCONNECTOR, w przeszłości wspierano także inne moduły w obszarze Z, które pochodziły ze starszych instalacji dab:Exporter lub indywidualnych rozwiązań klienta.

Poniższa tabela przedstawia porównanie zakresu funkcjonalności poszczególnych modułów:

  • Maks. znaków na rekord danych: określa maksymalną liczbę znaków, które można wyodrębnić na rekord (istotne zwłaszcza dla tabel z wieloma kolumnami)
  • Wymagany S_DEVELOP: moduły Z wymagają posiadania obiektu autoryzacji S_DEVELOP do wykonania
  • Długie teksty: długie teksty przechowywane są w tabelach STXH i STXL – nowsze wersje modułu potrafią dekodować i wyodrębnić zawartość tych tabel
  • Typy danych FLT i RAW: wsparcie ekstrakcji na kolumnach o typach danych FLT oraz RAW
  • Aktualizacja przez SAINT: moduły Z muszą być obsługiwane transakcjami SE37 oraz SE80 (moduł certyfikowany należy instalować i aktualizować transakcją SAINT)
Function ModuleMax. characters per data recordS_DEVELOP requiredLong textsFLT & RAW Data typesUpdate via SAINTSAP-Certification
Z_RFC_READ_TABLE
(Version 2.0)
8000taknietaknienie
Z_RFC_READ_TABLE
(Version 1.7)
2048taknietaknienie
Z_RFC_READ_TABLE
(Version 1.6 lub starsza)
2048taknienienienie