Przejście do głównej treści

Moduły funkcyjne SAP RFC

Wprowadzenie

Certyfikowany moduł funkcyjny RFC /DABEXP/RFC_SAPCONNECTOR jest wymagany do połączenia SAP System z rozwiązaniami ekstrakcyjnymi dab SAP. Rozwiązanie ekstrakcyjne dab Add-On instalowane jest następnie w SAP System.

Wymagane jest również konto użytkownika SAP, któremu przypisano odpowiedni profil autoryzacji. W kolejnych rozdziałach przedstawiono instalację modułu funkcyjnego oraz strukturę niezbędnego profilu autoryzacji.

Ważne

Do pierwszej instalacji modułu RFC w systemie SAP prosimy użyć pliku AOI-SAR. Jeśli konieczna jest aktualizacja istniejącego modułu RFC, należy wykorzystać plik AOU-SAR.


Wymagania

Wspierane rozwiązania

dab SAP-Extraction Solution można wykorzystywać w następujących rozwiązaniach 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
    • Lista nie jest wyczerpująca – inne systemy oparte na SAP NetWeaver z ABAP-Stack oraz łącznością RFC również są kompatybilne
  • SAP S/4HANA – 1610 lub wyższy
  • SAP S/4HANA Cloud, Extended Edition – wszystkie wersje
  • SAP Cloud ERP Private oraz SAP S/4HANA Cloud, Private Edition – wszystkie wersje
  • RISE with SAP Ready: Nasze Add-On SAP posiada oficjalne wsparcie i certyfikat dla wdrożeń w środowisku RISE with SAP (Private Cloud Edition)
Uwaga

SAP Cloud ERP oraz SAP S4/HANA Cloud, Public Edition nie obsługują importu Add-Onów i z tego względu są niekompatybilne.

Wymagane transakcje

Aby przeprowadzić instalację Add-On, Pan/Pani lub administrator SAP Basis powinni mieć dostęp do następujących transakcji (w wersji 0053 lub wyższej):

  • SAINT – narzędzie instalacyjne Add-On SAP
  • SPAM – Support Package Manager

Instalacja i aktualizacja

Instalacja

Uwaga

Do instalacji na SAP Basis 740 lub wyższej wymagane jest wydanie 1.61 lub nowsze. Plik można pobrać z Customer Portal.

Ważne

W przypadku instalacji na SAP Basis 731 lub niższych konieczne jest użycie pliku dabexp-sapconn-aoi-140.sar. Plik dostępny jest do pobrania tutaj.

Wymagane są do tego specjalne uprawnienia. W celu uruchomienia Add-On należy użyć transakcji SAINT.

Po uruchomieniu transakcji SAINT, można zainstalować plik SAR pakietu instalacyjnego (AOI) za pomocą menu.

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

installationPackage

Jeżeli pakiet DABEXP nie jest widoczny, należy wyłączyć filtry:

filter

Wskazówka

W przypadku komunikatu dotyczącego otwartych żądań ekstrakcji danych, komunikat ten można pominąć, gdyż Add-On nie wprowadza zmian w strukturze danych systemu SAP.

W razie pojawienia się powiadomienia o braku podpisu pakietu, informację tę można zignorować. Wyłącznie pakiety SAP mają podpis; dodatki zewnętrzne takiego podpisu nie otrzymują.

saprfc-2

Aktualizacja

Jeżeli Add-On został już zainstalowany w SAP System, istnieje możliwość aktualizacji Add-On do nowej wersji za pomocą pakietu aktualizacji (AOU). Proces przebiega analogicznie jak instalacja.

Uwaga

Aby przeprowadzić aktualizację w systemach SAP opartych na Basis 740 lub wyższej, wykorzystywany jest plik dabexp-sapconn-aou-161.sar. Plik dostępny jest w Customer Portal.

Ważne

W aktualizacji systemów SAP z Basis 731 lub niższą wymagany jest plik dabexp-sapconn-aou-140.sar. Plik dostępny jest do pobrania tutaj.


Uprawnienia

dab SAP-Extraction Solutions opierają się na mechanizmach bezpieczeństwa oraz koncepcji autoryzacji SAP System. Dodatkowo dostęp do tabel zawsze odbywa się wyłącznie w trybie odczytu. W celu połączenia dab SAP-Extraction Solution z SAP System potrzebny jest użytkownik, któremu przypisano rolę autoryzacyjną z następującymi obiektami autoryzacji.

Wymagany użytkownik SAP może być jednego z następujących typów:

  • Dialogowy
  • Systemowy
  • Komunikacyjny
  • Serwisowy

Aby utworzyć lub zmodyfikować odpowiedniego użytkownika, należy dysponować uprawnieniami do następujących transakcji:

  • PFCG: tworzenie lub modyfikowanie ról autoryzacyjnych
  • SU01: zarządzanie użytkownikami lub ich tworzenie

Uprawnienia do uruchamiania modułu RFC

Istnieją dwie możliwości: autoryzacja na poziomie grupy funkcyjnej oraz na poziomie modułu funkcyjnego.

Do autoryzacji wykorzystywany jest obiekt S_RFC. Można go znaleźć pod klasą autoryzacyjną AAAB – Obiekty autoryzacyjne przeznaczenia ogólnego > Obiekt autoryzacyjny S_RFC – Kontrola autoryzacji dla dostępu RFC.

Autoryzacja na poziomie grupy funkcyjnej

Pierwszym rozwiązaniem jest autoryzacja odpowiednich grup przez parametr RFC_TYPE na FUGR (Function Group).

Odpowiednie pola i wartości dla obiektu autoryzacyjnego S_RFC przedstawiono w tabeli poniżej.

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

Autoryzacja na poziomie modułu funkcyjnego

Alternatywnie, od SAP NW 7.0 EHP 2 (SAP_BASIS 702) możliwe jest ustawienie RFC_TYPE na FUNC (Function Module).

Tabela poniżej przedstawia odpowiednie pola i wartości dla obiektu autoryzacyjnego S_RFC.

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

Inne wymagane moduły funkcyjne

Oprócz modułu funkcyjnego /DABEXP/RFC_SAPCONNECTOR, aby zapewnić prawidłowe działanie, wymagane są również inne moduły.

Tabela poniżej przedstawia grupy funkcyjne, odpowiadające im moduły oraz przeznaczenie każdego z nich:

Grupa funkcyjnaModuł funkcyjnyCel
/SDF/RI_CRM/SDF/CMO_GET_INSTNOPobranie numeru instalacji w S4/HANA
CMONCMO_GET_INSTNOPobranie numeru instalacji
RFC1RFC_GET_FUNCTION_INTERFACE
RFC_GET_NAMETAB
Sprawdzenie struktury i istnienia modułów RFC
SYSTRFCPINGTest połączenia RFC
/DABEXP/DAB_FUGR/DABEXP/RFC_SAPCONNECTORPobranie zawartości tabeli

Uprawnienia na poziomie tabel

Wskazówka

Tabele w SAP mogą być autoryzowane jedynie w całości. Ograniczenie na poziomie zawartości, np. według kodów firm, jest niemożliwe.

Można wykorzystać podane obiekty autoryzacyjne do nadania dostępu do danych tabel przeznaczonych do eksportu. Kontrola prowadzona jest przy użyciu modułu funkcyjnego VIEW_AUTHORITY_CHECK.

Tablice można uprawnić dwoma sposobami – przez Grupę Autoryzacyjną bądź nazwę tabeli.

Ważne

W przypadku uprawnienia tabel jednocześnie za pośrednictwem obu obiektów autoryzacyjnych, sprawdzana jest najpierw autoryzacja z wykorzystaniem S_TABU_DIS (Grupa Autoryzacyjna Tabel). W razie jej braku, kontrola przeprowadzana jest przez S_TABU_NAM (Nazwa Tabeli).

Uwaga

Autoryzując dostęp do tabel na tym poziomie, należy również nadać uprawnienia do poniższych tabel.

TabelaGrupa autoryzacyjnaCel
T000SSKlienci – standardowa tabela testowa łączności
T001FC01Jednostki gospodarcze – tabela awaryjna do testu połączenia
DD02LSłownik danych ABAP – dostępne tabele w systemie
DD02TSłownik danych ABAP – opisy tabel
DD02VSłownik danych ABAP – wyszukiwanie tabel w dab Nexus Package Studio
DD03LSłownik danych ABAP – dostępne pola w systemie
DD03TSłownik danych ABAP – opisy pól w systemie
DD04LSłownik danych ABAP – potrzebne do ekstrakcji pól typu FLTP
NRIVSCZakresy numeracji – obiekty czasu rzeczywistego w dab Nexus
NRIVSHADOWLokalny NRIV dla maszyn wieloprocesorowych – obiekty czasu rzeczywistego w dab Nexus
TNROSSDefinicje obiektów numeracji – obiekty czasu rzeczywistego w dab Nexus

Uprawnienia przez Grupę Autoryzacyjną Tabel

Klasa autoryzacyjna BC_A Podstawy – Administracja→ Obiekt autoryzacyjny S_TABU_DIS

Ten sposób umożliwia podanie na poziomie Grupy Autoryzacyjnej Tabel do których tabel i w jakim zakresie można przyznać dostęp. Grupy autoryzacyjne wskazuje się w parametrze DICBERCLS, a rodzaj dostępu określa się przez ACTVT. Powiązanie tabeli z grupą autoryzacyjną znaleźć można w tabeli TDDAT.

PoleWartość
ACTVT
(Czynność)
03
(Wyświetlanie)
DICBERCLS
(Grupa autoryzacyjna)
*

Uprawnienia przez Nazwę Tabeli

Klasa autoryzacyjna BC_A Podstawy – Administracja > Obiekt autoryzacyjny S_TABU_NAM

To rozwiązanie pozwala zdefiniować na poziomie Nazwy Tabeli, które tabele są dostępne oraz jaki mają być zakres uprawnień. Tabele wymienia się w parametrze TABLE, a rodzaj uprawnień określa ACTVT.

PoleWartość
ACTVT
(Czynność)
03
(Wyświetlanie)
TABLE
(Grupa autoryzacyjna)
*

Testowanie

Testowanie modułu funkcyjnego

Po zainstalowaniu modułu funkcyjnego zgodnie z powyższą instrukcją, można wykonać test działania za pomocą transakcji SE37 poprzez przycisk Test/Execute lub klawisz F8.

functionbuilder

Parametry wejściowe wpisuje się w pierwszym oknie dialogowym. W przykładzie użyto tabeli jednostek gospodarczych T001 w polu QUERY_TABLE. Można wskazać jakąkolwiek tabelę, do której aktualny użytkownik posiada prawa dostępu. Przy pierwszym teście brak jest konieczności wprowadzania dodatkowych danych. W celu uruchomienia testu należy kliknąć przycisk Execute lub nacisnąć klawisz F8.

funkBauExecute

Jeśli moduł funkcyjny wykona się bez błędu, otrzymają Państwo tabele wynikowe. Wynik można przeanalizować poprzez kliknięcie w ikonę Detailed view obok liczby rekordów przy TABL_FIELDS lub DATA.

funkBauTestErgebniss

TABL_FIELDS zawiera strukturę pól w zapytanej tabeli:

TablFieldsStruktur

DATA obejmuje rekordy danych z tej tabeli:

StrukturEditorData

Testowanie połączenia RFC

Weryfikację poprawności połączenia RFC można przeprowadzić za pomocą dab FunctionModuleTester. Dalsze instrukcje znajdują się tutaj.


Odinstalowanie

  • otworzyć transakcję SAINT
  • przejść do zakładki Uninstallable components, wybrać komponent DABEXT i kliknąć Start
  • po zatwierdzeniu odinstalowania, komponent zostanie usunięty z SAP System

UninstallableComponents

StartOptionen

DeinstallationsQueue

Certyfikacje SAP

Ważne

SAP nie przyznaje już certyfikatów dla Add-Onów przeznaczonych do ECC systems. W rezultacie SAP nie jest w stanie ponownie certyfikować autorskiego modułu funkcyjnego dab na ECC systems. Dodatkowe informacje znajdują się w tym wpisie na blogu SAP.

Add-On posiada certyfikaty dla następujących wersji – aktualny status certyfikacji można w każdej chwili sprawdzić 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

Informacje o wydaniach

Wersja 1.71

  • Dostosowanie do SAP Clean Core Poziom B oznacza, że wykorzystywane są wyłącznie API zatwierdzone przez SAP
  • Zmiany w warunkach instalacji: Add-On może być wdrożony na SAP ECC, SAP S4/HANA oraz SAP BW/4HANA
  • Rozszerzenia do ekstrakcji widoków z nieunikalnymi kluczami podstawowymi (np. FAGLFLEXT): w celu skorzystania z tej funkcjonalności wymagana jest dodatkowa aktualizacja aplikacji

Wersja 1.61

  • podczas odinstalowywania Add-On nie wszystkie obiekty mogły zostać usunięte z powodu niepoprawnych informacji obiektowych, co powodowało przerwanie procesu odinstalowania.

Wersja 1.60

  • oprócz poprawki z Wersji 110, wsparcie uzyskało także rozwiazywanie zagnieżdżonych .INCLUDES z sufiksami. W szczególności występowały problemy w tabeli ACDOCA, gdzie dołączany .INCLU-_PA zawierał sufiks i był także rozszerzany przez .APPEND. Dzięki tej poprawce sufiks jest teraz również uwzględniany dla pól z .APPEND.

Wersja 1.50

  • moduł funkcyjny został przygotowany do wsparcia 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 starszymi
  • spełnienie wymaganych poziomów bezpieczeństwa dla S/4 Cloud EX

Wersja 1.30

  • podczas odczytu informacji DDIC błędnie zwracano wartość OUTPUTLEN dla typu danych RAW dla GUID w tabelach CGPL_TASK lub DPR_TASK. Skutkowało to eksportem skróconych GUID-ów. W przypadku pól o typie RAW, INTLEN 16 i OUTPUTLEN mniejszym niż 32 ustawiana jest teraz wartość OUTPUTLEN równa 32.

Wersja 1.20

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

Wersja 1.10

  • błędy występowały w systemach S4/HANA dla pewnych tabel (BKPF, BSEG, MATDOC, ACDOCA, MHNK). Dostosowano rozwiązywanie struktur INCLUDE w obrębie tych tabel dla nazw
    • .INCLU-_PN
    • .INCLU-_A1
    • .INCLU-LO Zmodyfikowano strukturę listy pól do zapytania SQL z pojedynczej nazwy pola na **<table>~<fieldname>**, aby zapobiec wyjątkom dla określonych nazw pól wykorzystujących zastrzeżone nazwy SQL (np. tabela TOAM – pole Connection).

SAP Legacy RFC Function Modules

Wskazówka

W przypadku używania innego modułu funkcyjnego niż /DABEXP/RFC_SAPCONNECTOR zalecamy niezwłoczną aktualizację do tego modułu RFC! dab nie będzie aktualizować ani wspierać innych modułów funkcyjnych. Moduły te nie posiadają też certyfikacji SAP!

Oprócz /DABEXP/RFC_SAPCONNECTOR w przeszłości wspierano także inne moduły z przestrzeni nazw Z, pochodzące ze starszych wdrożeń dab:Exporter lub indywidualnych modyfikacji klienta.

W poniższej tabeli przedstawiono porównanie funkcjonalności poszczególnych modułów:

  • Maks. liczba znaków na rekord danych: określa maksymalną liczbę znaków możliwych do wyekstrahowania na rekord danych (istotne szczególnie dla tabel z wieloma kolumnami)
  • Wymagany S_DEVELOP: moduły Z wymagają obiektu autoryzacyjnego S_DEVELOP do uruchomienia
  • Długie teksty: długie teksty są przechowywane w tabelach STXH i STXL – nowsze wersje modułu potrafią dekodować i wyciągać zawartość tych tabel
  • Typy danych FLT & RAW: wsparcie ekstrakcji danych z kolumn typu FLT oraz RAW
  • Aktualizacja przez SAINT: moduły Z powinny być obsługiwane przez transakcje SE37 i SE80 (certyfikowany moduł należy instalować i aktualizować za pomocą transakcji SAINT)
Moduł funkcyjnyMaks. liczba znaków na rekord danychWymagany S_DEVELOPDługie tekstyTypy danych FLT & RAWAktualizacja przez SAINTCertyfikacja SAP
Z_RFC_READ_TABLE
(Wersja 2.0)
8000taknietaknienie
Z_RFC_READ_TABLE
(Wersja 1.7)
2048taknietaknienie
Z_RFC_READ_TABLE
(Wersja 1.6 lub starsza)
2048taknienienienie