SAP RFC-Funktionsbausteine
Einführung
Das zertifizierte RFC-Funktionsmodul /DABEXP/RFC_SAPCONNECTOR ist erforderlich, um eine SAP System mit den dab SAP-Extraction Solutions zu verbinden. Die dab SAP-Extraction Solution Add-On wird anschließend im SAP System installiert.
Zusätzlich wird ein SAP-Benutzerkonto benötigt, dem ein entsprechendes Berechtigungsprofil zugewiesen ist. In den folgenden Kapiteln wird die Installation des Funktionsbausteins sowie der Aufbau des benötigten Berechtigungsprofils beschrieben.
Für die Erstinstallation des RFC-Moduls in Ihrem SAP verwenden Sie bitte die AOI-SAR-Datei. Für ein Update des bestehenden RFC-Moduls verwenden Sie bitte die AOU-SAR-Datei.
Voraussetzungen
Unterstützte Lösungen
Die dab SAP-Extraction Solution kann mit folgenden SAP-Lösungen eingesetzt werden:
- SAP NetWeaver - 7.50 (SAP_BASIS 750) 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 abschließend, auch andere Lösungen auf Basis von SAP NetWeaver mit ABAP-Stack und RFC-Konnektivität sind kompatibel
- SAP S/4HANA - 1610 oder höher
- SAP S/4HANA Cloud, Extended Edition - alle Versionen
- SAP Cloud ERP Private oder SAP S/4HANA Cloud, Private Edition - alle Versionen
- RISE with SAP Ready: Unsere SAP Add-On ist offiziell unterstützt und zertifiziert für den Einsatz in RISE with SAP-Umgebungen (Private Cloud Edition)
SAP Cloud ERP oder SAP S4/HANA Cloud, Public Edition unterstützt den Import von Add-Ons nicht und ist daher nicht kompatibel.
Notwendige Transaktionen
Für die Installation der Add-On sollten Sie oder Ihr SAP-Basis-Team Zugriff auf folgende Transaktionen haben (Version 0053 oder höher):
- SAINT - SAP Add-On Installations-Tool
- SPAM - Support Package Manager
Installation & Update
Installation
Für die Installation auf SAP Basis 740 oder höher wird die Version 1.61 oder höher benötigt. Den Download finden Sie im Customer Portal.
Für die Installation auf SAP Basis 731 oder niedriger wird die Datei dabexp-sapconn-aoi-140.sar benötigt. Sie können die Datei hier herunterladen.
Dafür sind spezielle Berechtigungen erforderlich. Zum Einrichten der Add-On wird die Transaktion SAINT verwendet.
Nach dem Aufruf der Transaktion SAINT kann die SAR-Datei des Installationspakets (AOI) über das Menü installiert werden.
Klicken Sie in der Menüleiste auf Installation Package > Pakete laden > Vom Frontend und wählen Sie die SAR-Datei aus.

Wird das DABEXP-Paket nicht angezeigt, müssen Sie die Filter deaktivieren:

Falls eine Meldung zu offenen Datenextraktionsanfragen erscheint, können Sie diese überspringen, da Add-On keine Datenstrukturen im SAP-System ändert.
Wird eine Meldung angezeigt, dass das Paket nicht signiert ist, kann dies ignoriert werden. Nur von SAP selbst stammende Pakete sind signiert. Add-Ons von Drittanbietern erhalten keine Signatur.

Update
Ist die Add-On bereits in Ihrem SAP System installiert, können Sie die Add-On mit dem Upgrade-Paket (AOU) auf eine neue Version aktualisieren. Die Aktualisierung erfolgt wie die Installation.
Für das Update auf SAP-Systemen mit Basis 740 oder höher wird die Datei dabexp-sapconn-aou-161.sar benötigt. Sie können die Datei im Customer Portal herunterladen.
Für das Update von SAP-Systemen mit Basis 731 oder niedriger wird die Datei dabexp-sapconn-aou-140.sar benötigt. Sie können die Datei hier herunterladen.
Berechtigungen
Die dab SAP-Extraction Solutions basieren auf den Sicherheitsmechanismen und dem Berechtigungskonzept des SAP System. Der Zugriff auf die Tabellen erfolgt grundsätzlich nur lesend. Für die Verbindung der dab SAP-Extraction Solution mit SAP System wird ein Benutzer benötigt, dem eine Berechtigungsrolle mit den folgenden Berechtigungsobjekten zugewiesen ist.
Der für die Verbindung benötigte SAP-Benutzer kann einer der folgenden Typen sein:
- Dialog
- System
- Kommunikation
- Service
Zum Anlegen oder Ändern eines entsprechenden Benutzers sind Berechtigungen für die nachstehenden Transaktionen erforderlich:
- PFCG: Berechtigungsrolle anlegen oder pflegen
- SU01: Benutzer anlegen oder pflegen
Berechtigungen zum Ausführen des RFC-Moduls
Hier können Sie zwischen zwei Optionen wählen: Berechtigung auf Funktionsgruppenebene oder auf Funktionsbausteinebene.
Für die Berechtigung wird das Berechtigungsobjekt S_RFC verwendet: Sie finden es unter der Berechtigungsklasse AAAB – Anwendungsübergreifende Berechtigungsobjekte > Berechtigungsobjekt S_RFC – Berechtigungsprüfung für RFC-Zugriff.
Berechtigung auf Funktionsgruppenebene
Die erste Möglichkeit besteht darin, die entsprechenden Funktionsgruppen über den RFC_TYPE auf FUGR (Funktionsgruppe) zu berechtigen.
Die zugehörigen Felder und Werte für das Berechtigungsobjekt S_RFC sehen Sie in folgender Tabelle:
| 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.
Die zugehörigen Felder und Werte für das Berechtigungsobjekt S_RFC sehen Sie in folgender Tabelle:
| Feld | Wert |
|---|---|
| ACTVT (Aktivität) | 16 (Ausführen) |
| RFC_NAME (Name des zu schützenden RFC-Objekts) | /SDF/CMO_GET_INSTNO CMO_GET_INSTNO DDIF_FIELDINFO_GET RFC_GET_FUNCTION_INTERFACE RFC_GET_NAMETAB RFCPING /DABEXP/RFC_SAPCONNECTOR |
| RFC_TYPE (Typ des zu schützenden RFC-Objekts) | FUNC (Funktionsbaustein) |
Weitere benötigte Funktionsbausteine
Neben dem Funktionsbaustein /DABEXP/RFC_SAPCONNECTOR sind für einen störungsfreien Betrieb noch weitere Module notwendig.
Die folgende Tabelle zeigt die Funktionsgruppe, die jeweiligen Module und deren Verwendungszweck:
| Funktionsgruppe | Funktionsbaustein | Zweck |
|---|---|---|
| /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 | Überprüfen der Struktur und Existenz von RFC-Modulen |
| SYST | RFCPING | Test der RFC-Konnektivität |
| /DABEXP/DAB_FUGR | /DABEXP/RFC_SAPCONNECTOR | Abfrage der Tabelleninhalte |
Berechtigungen auf Tabellenebene
Tabellen können nur vollständig oder gar nicht berechtigt werden. Eine Einschränkung auf Tabelleninhalte, z. B. Buchungskreise, ist nicht möglich.
Mit diesen Berechtigungsobjekten können Sie Zugriffsberechtigungen für die zu exportierenden Tabellendaten vergeben. Die Überprüfung erfolgt über den Funktionsbaustein VIEW_AUTHORITY_CHECK.
Für die Tabellenberechtigung gibt es zwei Möglichkeiten – entweder per Berechtigungsgruppe oder per Tabellenname.
Werden die Tabellenberechtigungen mit beiden Berechtigungsobjekten vergeben, erfolgt die Prüfung zunächst mit S_TABU_DIS (Tabellenberechtigungsgruppe). Schlägt diese Prüfung fehl, wird mit S_TABU_NAM (Tabellenname) geprüft.
Wenn Sie auf Tabellenebene berechtigen, stellen Sie bitte sicher, dass auch die untenstehenden Tabellen berechtigt sind.
| Tabelle | Berechtigungsgruppe | Zweck |
|---|---|---|
| T000 | SS | Clients – Standardtabelle für den Konnektivitätstest |
| T001 | FC01 | Buchungskreise – Fallback-Tabelle für Konnektivitätstest |
| DD02L | ABAP Data Dictionary – Verfügbare Tabellen im System | |
| DD02T | ABAP Data Dictionary – Beschreibungstexte für Tabellen | |
| DD02V | ABAP Data Dictionary – Tabellensuche in dab Nexus Package Studio | |
| DD03L | ABAP Data Dictionary – Verfügbare Felder im System | |
| DD03T | ABAP Data Dictionary – Verfügbare Beschreibungstexte für Felder | |
| DD04L | ABAP Data Dictionary – Erforderlich für Extraktion vom Typ FLTP-Felder | |
| NRIV | SC | Nummernkreisintervalle – Echtzeitobjekte in dab Nexus |
| NRIVSHADOW | Lokale NRIV für Multiprozessor-Maschinen – Echtzeitobjekte in dab Nexus | |
| TNRO | SS | Definition Nummernkreisobjekte – Echtzeitobjekte in dab Nexus |
Berechtigung über Tabellenberechtigungsgruppen
Berechtigungsklasse BC_A Basis – Administration → Berechtigungsobjekt S_TABU_DIS
Hierüber wird auf Ebene der Tabellenberechtigungsgruppe festgelegt, auf welche Tabelle wie zugegriffen werden darf. Die Berechtigungsgruppen werden im Parameter DICBERCLS eingetragen, die Zugriffsart über ACTVT definiert. Die Zuordnung einer Tabelle zu einer Berechtigungsgruppe bzw. umgekehrt finden Sie 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
Damit wird auf Tabellenname-Ebene geregelt, auf welche Tabelle wie zugegriffen werden darf. Die zu berechtigenden Tabellen werden im Parameter TABLE eingetragen, die Zugriffsart über ACTVT definiert.
| Feld | Wert |
|---|---|
| ACTVT (Aktivität) | 03 (Anzeigen) |
| TABLE (Berechtigungsgruppe) | * |
Testen
Testen des Funktionsbausteins
Nachdem der Funktionsbaustein wie oben beschrieben installiert wurde, kann ein erster Funktionstest mit der Transaktion SE37 über den Button Testen/Ausführen oder die Taste F8 durchgeführt werden.
Die Importparameter können im ersten Dialog eingegeben werden. In unserem Beispiel verwenden wir die Tabelle für Buchungskreise T001 im Feld QUERY_TABLE. Es kann jede Tabelle verwendet werden, auf die der aktuell angemeldete Benutzer Zugriffsrechte besitzt. Für den ersten Test sind keine weiteren Einträge erforderlich. Um den Test zu starten, klicken Sie auf Ausführen oder drücken Sie die Taste F8.

Wurde der Funktionsbaustein fehlerfrei ausgeführt, erhalten Sie Ergebnistabellen. Das Ergebnis sehen Sie, wenn Sie auf das Symbol Detailansicht neben der Zahl der Einträge bei TABL_FIELDS oder DATA klicken.

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

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

Testen der RFC-Verbindung
Mit dem dab FunctionModuleTester können Sie prüfen, ob die Verbindung erfolgreich per RFC hergestellt werden kann. Weitere Hinweise finden Sie hier.
Deinstallation
- Öffnen Sie die Transaktion SAINT
- Klicken Sie auf den Tab Deinstallierbare Komponenten, wählen Sie die Komponente DABEXT und klicken Sie auf Start
- Nach Bestätigung der Deinstallation wird die Komponente aus dem SAP System entfernt



SAP-Zertifizierungen
SAP zertifiziert keine Add-Ons mehr für ECC-Systeme. Das bedeutet, SAP kann das eigene Funktionsmodul von dab für ECC-Systeme nicht mehr (re-)zertifizieren. Weitere Informationen dazu finden Sie in diesem Blogpost von SAP.
Das Add-On besitzt Zertifizierungen für folgende Versionen – die aktuellen Zertifizierungen können Sie jederzeit im SAP Certified Solutions Directory einsehen.
Versionshinweise
Version 1.71
- Anpassungen für SAP Clean Core Level B, d. h. es werden ausschließlich von SAP freigegebene APIs verwendet
- Anpassungen an den Importbedingungen: Das Add-On kann auf SAP ECC, SAP S4/HANA und SAP BW/4HANA installiert werden
- Erweiterungen zur Extraktion von Sichten mit nicht eindeutigen Primärschlüsseln (z. B. FAGLFLEXT): Für dieses Feature ist ein zusätzliches Update der Applikation erforderlich
Version 1.61
- Beim Deinstallieren des Add-On konnten aufgrund fehlerhafter Objektinformationen nicht alle Objekte entfernt werden. Dadurch wurde die Deinstallation abgebrochen.
Version 1.60
- Zusätzlich zum Fix aus Version 110 wird nun auch die Auflösung von geschachtelten .INCLUDES mit Suffixen unterstützt. Konkret gab es Probleme in der Tabelle ACDOCA, bei der das Include .INCLU-_PA einen Suffix enthält und zudem mit .APPEND erweitert wird. Mit diesem Fix wird der Suffix nun auch auf die Felder im .APPEND angewendet.
Version 1.50
- Das Funktionsbaustein wurde vorbereitet, um den Export von Langtexten aus der Spalte CLUSTD in der Tabelle STXL zu unterstützen
Version 1.40
- Letzte SAP Add-On-Version, kompatibel mit SAP Basis 731 und niedriger
- Erfüllung der erforderlichen Sicherheitsniveaus für S/4 Cloud EX
Version 1.30
- Das Auslesen der DDIC-Informationen liefert einen falschen OUTPUTLEN für den Datentyp RAW beim GUID in den Tabellen CGPL_TASK oder DPR_TASK. Dadurch werden die betroffenen GUIDs in gekürzter Form exportiert. Für Felder des Datentyps RAW mit INTLEN 16 und einem OUTPUTLEN kleiner als 32 wird der OUTPUTLEN nun auf 32 gesetzt.
Version 1.20
- Beim Erstellen der Feldliste für die SQL-Abfrage wurde **<table>~<fieldname>** beim Zusammensetzen nach 30 Zeichen abgeschnitten, wodurch Fehler in der SQL-Abfrage auftraten.
Version 1.10
- In S4/HANA-Systemen traten bei bestimmten Tabellen (BKPF, BSEG, MATDOC, ACDOCA, MHNK) Fehler auf. Die Behandlung von INCLUDE-Strukturen innerhalb dieser Tabellen mit den Namen
- .INCLU-_PN
- .INCLU-_A1
- .INCLU-LO wurde angepasst. Die Struktur der Feldliste für die SQL-Abfrage wurde von nur Feldname auf **<table>~<fieldname>** geändert, um Ausnahmen bei bestimmten Feldnamen mit geschützten SQL-Bezeichnungen zu vermeiden (z. B. Tabelle TOAM - Feld Connection).
SAP Legacy RFC Funktionsbausteine
Wenn Sie einen anderen Funktionsbaustein als /DABEXP/RFC_SAPCONNECTOR verwenden, empfehlen wir Ihnen dringend ein Upgrade auf dieses RFC-Modul! dab wird keine anderen Funktionsbausteine aktualisieren oder unterstützen. Diese Module sind zudem nicht von SAP zertifiziert!
Neben /DABEXP/RFC_SAPCONNECTOR wurden in der Vergangenheit weitere Module im Z-Namensraum unterstützt, die aus alten dab:Exporter-Installationen oder individuellen Kundenanpassungen stammen.
Die folgende Tabelle vergleicht den Funktionsumfang der jeweiligen Module:
- Max. Zeichen pro Datenzeile: Definiert die maximale Anzahl von Zeichen, die pro Datensatz extrahiert werden können (insbesondere relevant bei Tabellen mit vielen Spalten)
- S_DEVELOP erforderlich: Z-Module erfordern das Berechtigungsobjekt S_DEVELOP, um ausgeführt werden zu können
- Langtexte: Langtexte werden in den Tabellen STXH und STXL gespeichert – neuere Modulversionen können die Inhalte dieser Tabellen decodieren und extrahieren
- FLT- & RAW-Datentypen: Unterstützung der Extraktion von Spalten mit den Datentypen FLT und RAW
- Update über SAINT: Z-Module müssen mit den Transaktionen SE37 und SE80 gepflegt werden (das zertifizierte Modul muss mit der Transaktion SAINT installiert und aktualisiert werden)
| Funktionsbaustein | Max. Zeichen pro Datenzeile | S_DEVELOP erforderlich | Langtexte | FLT- & RAW-Datentypen | Update über SAINT | SAP-Zertifizierung |
|---|---|---|---|---|---|---|
| Z_RFC_READ_TABLE (Version 2.0) | 8000 | ja | nein | ja | nein | nein |
| Z_RFC_READ_TABLE (Version 1.7) | 2048 | ja | nein | ja | nein | nein |
| Z_RFC_READ_TABLE (Version 1.6 oder älter) | 2048 | ja | nein | nein | nein | nein |