SAP RFC-Funktionsbaustein

aktualisiert 8/2/24 von Jyothsna Sarali

Einleitung

Zur Anbindung eines SAP-Systems an die dab SAP-Extraktionslösungen wird der zertifizierte RFC-Funktionsbaustein /DABEXP/RFC_SAPCONNECTOR benötigt. Dann wird das dab SAP-Extraktionslösung Add-On im SAP-System installiert. Außerdem wird ein SAP-Benutzerkonto benötigt, dem ein entsprechendes Berechtigungsprofil zugeordnet wird. Die nachfolgenden Kapitel beschreiben das Installieren des Funktionsbausteins und den Aufbau des benötigten Berechtigungsprofils.

Voraussetzungen

Unterstützte Lösungen

Die dab SAP-Extraktionslösungen können mit den folgenden SAP-Lösungen verwendet werden:

  • SAP NetWeaver - 7.40 (SAP_BASIS 740) oder höher
    • SAP ERP - 6.0 (ECC 6.0)
    • SAP CRM - 7.0
    • SAP SRM - 7.0
    • SAP SCM - 7.0
    • SAP EWM - 7.0
    • Diese Liste ist nicht exklusiv, weitere auf SAP NetWeaver basierende Lösungen mit ABAP-Stack und RFC-Konnektivität sind auch kompatibel
  • SAP S/4HANA - 1610 oder höher
  • SAP S/4HANA Cloud, Extended Edition - alle Versionen
  • SAP S/4HANA Cloud, Private Edition - alle Versionen
Beachte
SAP S4/HANA Cloud, Public Edition unterstützt nicht das Einspielen von Add-Ons und ist daher inkompatibel.
Tipp
Falls du SAP NetWeaver 7.31 (SAP_BASIS 731) oder niedriger einsetzt benutze bitte die Version 140 des Add-Ons über das Package dabexp-sappconn-aoi-140.sar

Notwendige Transaktionen

Für die Installation des Add-Ons solltest Du oder Deine SAP-Basis Zugriff auf folgende Transaktionen besitzen:

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

Beide sollten sich in der Version 0053 oder höher befinden.

Installation & Update

Installation

Beachte
Für die Installation auf SAP Basis 740 und höher wird die Datei dabexp-sapconn-aoi-161.sar benötigt.
Diese kannst Du im Kundenportal herunterladen.
Warnung
Für die Installation auf SAP Basis 731 und niedriger wird die Datei dabexp-sapconn-aoi-140.sar benötigt.
Diese kannst Du hier herunterladen.

Hierfür sind spezielle Berechtigungen notwendig. Für die Einrichtung des Add-Ons wird die Transaktion SAINT verwendet.

Nach dem Aufruf der Transaktion SAINT kannst Du über das Menü die SAR-Datei des Installation Packages (AOI) installieren.

Klicke auf der Menüleiste Installation PackagePackages laden → Vom Frontend und wähle die SAR-Datei aus

Falls das DABEXP Package nicht angezeigt wird, musst du den Filter deaktivieren.

Tipp
Falls eine Meldung bezüglich offenen Datenextraktionsaufträgen erscheint, kannst die diese überspringen, da das Add-On keinerlei Datenstrukturen im SAP-System modifiziert.
Tipp
Sollte eine Meldung erscheinen, dass das Package nicht signiert ist, kann diese ignoriert werden. Nur SAP-eigene Packages sind signiert, Drittanbieter Add-Ons erhalten dagegen keine Signatur.

Update

Ist das Add-On bereits in Deinem SAP-System installiert, dann kannst du mit dem Upgrade Package (AOU) dein bestehendes Add-On auf eine neue Version aktualisieren.

Für das Update auf SAP-Systemen mit Basis 740 und höher wird die Datei dabexp-sapconn-aou-161.sar benötigt.
Die Datei kannst Du im Kundenportal herunterladen.
Für das Update auf SAP-Systemen mit Basis 731 und niedriger wird die Datei dabexp-sapconn-aou-140.sar benötigt.
Die Datei kannst Du hier herunterladen.

Das Vorgehen gleicht ansonsten dem der Installation.

Berechtigungen

Die dab SAP-Extraktionslösungen setzt auf den Sicherheitsmechanismen und des Berechtigungskonzepts vom SAP-Systems auf. Es erfolgt außerdem stets nur ein lesender Zugriff auf die Tabellen. Für die Verbindung der dab SAP-Extraktionslösungen mit dem SAP-System ist ein Benutzer notwendig, dem eine Berechtigungsrolle mit den nachfolgenden Berechtigungsobjekten zugewiesen wurde.

Der SAP-Benutzer, den Du für die Verbindung benötigst, kann einer der folgenden Typen sein:

  • Dialog
  • System
  • Communication
  • Service

Für die Erstellung oder Änderung eines entsprechenden Nutzers benötigst Du Berechtigungen auf die folgenden Transaktionen:

  • PFCG: Berechtigungsrolle pflegen oder erstellen
  • SU01: Benutzer pflegen oder erstellen

Berechtigungen für die Ausführung des RFC-Bausteins

Für die Berechtigung der Ausführung des RFC-Bausteins hast Du zwei unterschiedliche Optionen, es reicht wenn du eine von beiden umsetzt.

Für die Autorisierung kommt das Berechtigungsobjekt S_RFC zum Einsatz: Du findest es unter der Berechtigungsklasse AAAB - Anwendungsübergreifende Berechtigungsobjekte→ Berechtigungsobjekt S_RFC - Berechtigungsprüfung beim RFC-Zugriff

Berechtigung auf Funktionsgruppenebene

Die erste Möglichkeit ist es die entsprechenden Funktionsgruppen über der RFC_TYPE auf FUGR (Funktionsgruppe) zu berechtigen. Siehe die nachfolgende Tabelle für die entsprechenden Felder und Werte für das Berechtigungsobjekt S_RFC.

Feld

Wert

ACTVT

(Aktivität)

16

(Ausführen)

RFC_NAME

(Name des zu schützenden RFC-Objekts)

/SDF/RI_CRM

CMON

RFC1

SYST

/DABEXP/DAB_FUGR

RFC_TYPE

(Typ des zu schützenden RFC-Objekts)

FUGR

(Funktionsgruppe)

Berechtigung auf Funktionsbausteinebene

Alternativ kann ab SAP NW 7.0 EHP 2 (SAP_BASIS 702) der RFC_TYPE auf FUNC (Funktionsbaustein) gesetzt werden. Siehe die nachfolgende Tabelle für die entsprechenden Felder und Werte für das Berechtigungsobjekt S_RFC.

Feld

Wert

ACTVT

(Aktivität)

16

(Ausführen)

RFC_NAME

(Name des zu schützenden RFC-Objekts)

/SDF/CMO_GET_INSTNO

CMO_GET_INSTNO

RFC_GET_FUNCTION_INTERFACE

RFC_GET_NAMETAB

RFCPING

/DABEXP/RFC_SAPCONNECTOR

RFC_TYPE

(Typ des zu schützenden RFC-Objekts)

FUNC

(Funktionsbaustein)

Verwendung der entsprechenden Funktionsbausteine

Neben dem Funktionsbaustein /DABEXP/RFC_SAPCONNECTOR sind weitere Bausteine für einen reibungslosen Betrieb notwendig. Nachfolgende Tabelle erläutert den entsprechenden Verwendungszweck.

Funktionsgruppe

Funktionsbausteine

Verwendungszweck

/SDF/RI_CRM

/SDF/CMO_GET_INSTNO

Abfrage der Installationsnummer unter S4/HANA

CMON

CMO_GET_INSTNO

Abfrage der Installationsnummer

RFC1

RFC_GET_FUNCTION_INTERFACE

RFC_GET_NAMETAB

Prüfung der Struktur und Existenz von RFC-Bausteinen

SYST

RFCPING

Test der RFC-Konnektivität

/DABEXP/DAB_FUGR

/DABEXP/RFC_SAPCONNECTOR

Abfrage der Tabelleninhalte

Berechtigungen auf Tabellenebene

Mit diesen Berechtigungsobjekten kannst Du Zugriffsberechtigungen auf den Inhalt der zu exportierenden Tabellen erteilen. Die Prüfung erfolgt wie bei allen Anwendungen über den Funktionsbaustein VIEW_AUTHORITY_CHECK.

Hierzu gibt es zwei unterschiedliche Möglichkeiten die Tabellen entsprechend zu berechtigen, entweder über die Berechtigungsgruppe oder den Tabellennamen.

Warnung
Erfolgt die Tabellenberechtigung unter Verwendung beider Berechtigungsobjekte, wird zunächst die Berechtigung mit S_TABU_DIS (Tabellenberechtigungsgruppe) geprüft. Wenn diese Prüfung fehlschlägt, dann wird die Berechtigung mit S_TABU_NAM (Tabellenname) geprüft.
Tipp
Es ist nur möglich die Tabellen komplett oder gar nicht zu berechtigen, eine Einschränkung auf Tabelleninhalte wie Buchungskreise ist nicht möglich.
Beachte
Falls Du auf Tabellenebene berechtigst, stelle bitte sicher, dass die folgenden Tabellen zusätzlich berechtigt sind.

Tabelle

Berechtigungsgruppe

Verwendungszweck

T000

SS

Mandanten - Standardtabelle für Verbindungstest

T001

FC01

Buchungskreise - Fallbacktabelle für Verbindungstest

DD02L

ABAP Data Dictionary - Verfügbare Tabellen im System

DD02T

ABAP Data Dictionary - Beschreibungstexte für Tabellen

DD02V

ABAP Data Dictionary - Suche nach Tabellen in dab Nexus Package Studio

DD03L

ABAP Data Dictionary - Verfügbare Felder im System

DD03T

ABAP Data Dictionary - Beschreibungstexte für Felder

Berechtigung über Tabellenberechtigungsgruppen

Berechtigungsklasse BC_A Basis - Administration Berechtigungsobjekt S_TABU_DIS

Hiermit legt man auf Ebene der Tabellenberechtigungsgruppe fest, auf welche Tabelle, wie zugegriffen werden darf. Im Parameter DICBERCLS werden die Berechtigungsgruppen eingetragen und über ACTVT wird die Art des Zugriffs festgelegt. Die Zuordnung einer Tabelle zu einer Berechtigungsgruppe oder umgekehrt, findest Du in der Tabelle TDDAT.

Feld

Wert

ACTVT

(Aktivität)

03

(Anzeigen)

DICBERCLS

(Berechtigungsgruppe)

*

Berechtigung über Tabellennamen

Berechtigungsklasse BC_A Basis - Administration→ Berechtigungsobjekt S_TABU_NAM

Hiermit legt man auf Ebene des Tabellennamen fest, auf welche Tabelle, wie zugegriffen werden darf. Im Parameter TABLE werden die Tabellen eingetragen und über ACTVT wird die Art des Zugriffs festgelegt.

Feld

Wert

ACTVT

(Aktivität)

03

(Anzeigen)

TABLE

(Tabellenname)

*

Testing

Testen des Funktionsbausteins

Nachdem der Funktionsbaustein wie oben beschrieben installiert wurde, kann mit der Transaktion SE37 der Funktionsbaustein über den Button Testen/Ausführen oder die Taste F8 ein erster Funktionstest durchgeführt werden.

Im ersten Dialog können die Import-Parameter eingegeben werden. In unserem Beispiel verwenden wir im Feld QUERY_TABLE die Tabelle für die Buchungskreise T001. Es kann jede beliebige Tabelle verwendet werden, auf die der aktuell angemeldete Benutzer Zugriffsrechte hat. Weitere Eingaben sind für den ersten Test nicht notwendig. Zum Start des Tests klicke auf den Button Ausführen oder drücke die Taste F8.

Wenn der Funktionsbaustein fehlerfrei ausgeführt wurde, erhältst Du Ergebnistabellen zurück. Durch Klicken auf das Icon Detailsicht neben der Anzahl der Einträge für TABL_FIELDS oder DATA kannst du das Ergebnis ansehen.

TABL_FIELDS enthält die Struktur der in der abgefragten Tabelle vorhandenen Felder:

DATA enthält die Datensätze der abgefragten Tabelle:

Testen der RFC-Verbindung

Mit Hilfe des dab FunctionModuleTester kannst Du prüfen, ob die Verbindung über RFC erfolgreich aufgebaut werden kann. Weitere Anweisungen findest du hier.

Deinstallation

  • Öffne die Transaktion SAINT
  • Klicke auf die Registerkarte Deinstallierbare Komponenten, wähle die Komponente DABEXP aus und klicke auf Start
  • Nach Bestätigung der Deinstallation wird die Komponente aus dem SAP-System entfernt

SAP Zertifizierungen

Das Add-on besitzt Zertifizierungen für die folgenden Versionen, die aktuellen Zertifizierungen können auch jederzeit im SAP Certified Solutions Directory eingesehen werden.

Add-on Version

Test SAP-System

Zertifizierungsszenario

1.61

SAP S/4HANA Cloud, private edition, release 2022

S/4HC-ADDON 2022 ‒ ADD-ON FOR SAP S/4HANA CLOUD PRIVATE EDITION 2022

SAP S/4HANA 2022

S/4HC-EX-ABAP 2022 ‒ ABAP ADD-ON FOR SAP S/4HANA CLOUD EX 2022

SAP NetWeaver 7.50

ABAP 7.0 ‒ ABAP ADD-ON FOR SAP NETWEAVER APPLICATION SERVER

1.40

SAP S/4HANA 2021

S/4-ABAP 2021 ‒ ABAP ADD-ON FOR SAP S/4HANA 2021

SAP S/4HANA 2021

S/4HC-EX-ABAP 2021 ‒ ABAP ADD-ON FOR SAP S/4HANA CLOUD EX 2021

SAP S/4HANA 2020

S/4HC-EX-ABAP 2020 ‒ ABAP ADD-ON FOR SAP S/4HANA CLOUD EX 2020

SAP S/4HANA 2020

S/4-ABAP 2020 ‒ ABAP ADD-ON FOR SAP S/4HANA 2020

SAP S/4HANA 1909

S/4HC-EX-ABAP 1909 ‒ ABAP ADD-ON FOR SAP S/4HANA CLOUD EX 1909

SAP S/4HANA 1909

S/4-ABAP 1909 ‒ ABAP ADD-ON FOR SAP S/4HANA 1909

1.1

SAP S/4HANA 2020

​S/4-ABAP 2020 ‒ ABAP ADD-ON FOR SAP S/4HANA 2020

SAP S/4HANA 1909

​S/4-ABAP 1909 ‒ ABAP ADD-ON FOR SAP S/4HANA 1909

1.0

SAP S/4HANA 1809

​​S/4-ABAP 1809 ‒ ABAP ADD-ON FOR SAP S/4HANA 1809

SAP NetWeaver 7.50

​ABAP 7.0 ‒ ABAP ADD-ON FOR SAP NETWEAVER APPLICATION SERVER

Release Notes

Version 161

  • Bei der Deinstallation des Add-On konnten nicht alle Objekte entfernt werden, aufgrund fehlerhafter Objektinformationen. Dadurch wurde die Deinstallation abgebrochen

Version 160

  • In Ergänzung zu dem Fix aus Version 110 wird nun auch die Auflösung von verschachtelten .INCLUDES mit Suffixes unterstützt. Konkret gab es Probleme in der Tabelle ACDOCA, wo der Include ".INCLU-_PA" einem Suffix enthält und außerdem mit .APPEND erweitert wird. Mit diesem Fix wird nun der Suffix auch auf die Felder im .APPEND angewendet.

Version 150

  • Der Funktionsbaustein wurde für die Unterstützung beim Export von Langtexten aus der Spalte CLUSTD in der Tabelle STXL vorbereitet

Version 140

  • Letzte SAP Add-On Version kompatibel zu SAP Basis 731 und niedriger
  • Erfüllung des erforderlichen Securitylevels für S/4 Cloud EX

Version 130

  • Das Auslesen der DDIC Informationen liefert beim Datentyp RAW für die GUID in den Tabellen CGPL_TASK oder DPR_TASK falsche OUTPUTLEN. Dadurch werden die betroffenen GUIDs verkürzt exportiert. Für Felder vom Datentyp RAW und INTLEN 16 und einer OUTPUTLEN kleiner 32 wird nun die OUTPUTLEN fest auf 32 gesetzt.

Version 120

  • Beim Aufbau der Feldliste für die SQL-Abfrage wurde beim Zusammensetzen von <Tabelle>~<Feldname> nach 30 Zeichen abgeschnitten, dadurch kam es bei der SQL-Abfrage zu Fehlern

Version 110

  • Es kam bei S4/Hana Systemen bei bestimmten Tabellen (BKPF, BSEG, MATDOC, ACDOCA, MHNK) zu Fehlern. Die Auflösung von INCLUDE-Strukturen innerhalb dieser Tabellen mit den Bezeichnungen
    • .INCLU-_PN
    • .INCLU-_A1
    • .INCLU-LO
    wurde angepasst.
  • Aufbau der Feldliste für die SQL-Abfrage wurde von nur Feldname in <Tabelle>~<Feldname> geändert, damit es bei bestimmten Feldern die geschützte SQL-Namen verwenden, nicht zu Ausnahmen kommt. (z.B. Tabelle TOAM - Feld Connection)

Version 100

  • Initialer Release des neuen Funktionsbaustein /DABEXP/RFC_SAPCONNECTOR.
  • Das Berechtigungsobjekt S_DEVELOP ist nicht mehr nötig, da das Auslesen der SAP Tabellenstruktur in unseren Funktionsbaustein integriert wurde und nicht mehr über den Funktionsbaustein RPY_TABLE_READ erfolgt
  • Vorbereitung für spezielle SAP Datentypen SSTRING, LRAW und RAWSTRING und das Auslesen von Langtexten


Wie haben wir das gemacht?


Powered by HelpDocs (opens in a new tab)

Powered by HelpDocs (opens in a new tab)