SAP RFC-Funktionsbausteine
Einführung
Das zertifizierte RFC-Funktionsbaustein /DABEXP/RFC_SAPCONNECTOR ist erforderlich, um eine SAP System mit den dab SAP-Extraktionslösungen zu verbinden. Die dab SAP-Extraktionslösung Add-On wird anschließend im SAP System installiert.
Es wird außerdem ein SAP-Benutzerkonto benötigt, dem ein entsprechendes Berechtigungsprofil zugeordnet ist. In den folgenden Kapiteln werden die Installation des Funktionsbausteins sowie der Aufbau des notwendigen Berechtigungsprofils beschrieben.
Für die Erstinstallation des RFC-Moduls in Ihrem SAP verwenden Sie bitte die AOI-SAR-Datei. Wenn Sie das bereits vorhandene RFC-Modul aktualisieren möchten, nutzen Sie bitte die AOU-SAR-Datei.
Voraussetzungen
Unterstützte Lösungen
Die dab SAP-Extraktionslösung kann mit folgenden SAP-Lösungen verwendet 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; andere Lösungen auf Basis von SAP NetWeaver mit ABAP-Stack und RFC-Konnektivität sind ebenfalls 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 für die Nutzung innerhalb von RISE with SAP-Umgebungen (Private Cloud Edition) unterstützt und zertifiziert
SAP Cloud ERP bzw. SAP S4/HANA Cloud, Public Edition unterstützt keinen Import von Add-Ons und ist daher nicht kompatibel.
Notwendige Transaktionen
Für die Installation der Add-On sollten Sie oder Ihr SAP-Basis Zugang zu folgenden Transaktionen haben (Version 0053 oder höher):
- SAINT - SAP Add-On Installationswerkzeug
- 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. Sie können diese im Customer Portal herunterladen.
Für die Installation auf SAP Basis 731 oder niedriger benötigen Sie die Datei dabexp-sapconn-aoi-140.sar. Sie können sie hier herunterladen.
Hierfür sind besondere Berechtigungen erforderlich. Zur Einrichtung der Add-On wird die Transaktion SAINT verwendet.
Nach dem Aufruf der Transaktion SAINT können Sie im Menü die SAR-Datei des Installationspakets (AOI) installieren.
Klicken Sie in der Menüleiste auf Installationspaket > Pakete laden > Vom Frontend und wählen Sie die SAR-Datei aus.

Wird das DABEXP-Paket nicht angezeigt, deaktivieren Sie bitte die Filter:

Falls eine Meldung bezüglich offener Datenextraktionsanfragen erscheint, können Sie diese überspringen, da Add-On keine Datenstrukturen im SAP-System verändert.
Erscheint eine Meldung, dass das Paket nicht signiert ist, kann dies ignoriert werden. Lediglich SAP-eigene Pakete sind signiert, Drittanbieter-Add-Ons 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. Das Vorgehen beim Update entspricht dem der 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.
Zum Aktualisieren 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-Extraktionslösungen basieren auf den Sicherheitsmechanismen und dem Berechtigungskonzept des SAP System. Der Zugriff auf die Tabellen ist darüber hinaus immer schreibgeschützt. Für die Anbindung der dab SAP-Extraktionslösung an das SAP System wird ein Benutzer benötigt, dem eine Berechtigungsrolle mit folgenden Berechtigungsobjekten zugeordnet ist.
Der zu nutzende SAP-Benutzer für die Verbindung kann einen der folgenden Typen haben:
- Dialog
- System
- Kommunikation
- Service
Zur Anlage oder Änderung eines entsprechenden Benutzers benötigen Sie Berechtigungen für folgende Transaktionen:
- PFCG: Berechtigungsrolle pflegen oder anlegen
- SU01: Benutzer pflegen oder anlegen
Berechtigungen zur Ausführung des RFC-Moduls
Sie können hier zwischen zwei Möglichkeiten wählen: Berechtigung auf Funktionsgruppenebene oder auf Funktionsbausteinebene.
Das Berechtigungsobjekt S_RFC dient zur Berechtigungsprüfung: Es befindet sich unter Berechtigungsklasse AAAB - Anwendungsübergreifende Berechtigungsobjekte > Berechtigungsobjekt S_RFC - Berechtigungsprüfung für RFC-Zugriff.
Berechtigung auf Funktionsgruppenebene
Die erste Möglichkeit ist, die entsprechenden Funktionsgruppen über den RFC_TYPE auf FUGR (Funktionsgruppe) zu berechtigen.
In der folgenden Tabelle finden Sie 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 auch auf FUNC (Funktionsbaustein) gesetzt werden.
In der folgenden Tabelle sehen Sie die jeweiligen 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 DDIF_FIELDINFO_GET RFC_GET_FUNCTION_INTERFACE RFC_GET_NAMETAB RFCPING /DABEXP/RFC_SAPCONNECTOR |
| RFC_TYPE (Typ des zu schützenden RFC-Objekts) | FUNC (Funktionsgruppe) |
Weitere benötigte Funktionsbausteine
Zusätzlich zum Funktionsbaustein /DABEXP/RFC_SAPCONNECTOR werden für den reibungslosen Betrieb weitere Module benötigt.
Die folgende Tabelle listet die Funktionsgruppe, die jeweiligen Module und deren Zweck auf:
| 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 | Prüfung der Struktur und Existenz der RFC-Module |
| SYST | RFCPING | Test der RFC-Konnektivität |
| /DABEXP/DAB_FUGR | /DABEXP/RFC_SAPCONNECTOR | Abfrage von Tabelleninhalten |
Berechtigungen auf Tabelleneebene
Tabellen können nur vollständig berechtigt werden oder gar nicht. Eine Einschränkung auf Tabelleninhalte, z.B. Buchungskreise, ist nicht möglich.
Mit diesen Berechtigungsobjekten können Sie Zugriffsberechtigungen für die zu exportierenden Tabellen vergeben. Die Prüfung erfolgt über den Funktionsbaustein VIEW_AUTHORITY_CHECK.
Es gibt zwei Möglichkeiten zur Berechtigung der Tabellen – entweder über die Berechtigungsgruppe oder den Tabellennamen.
Wird die Tabellenberechtigung über beide Berechtigungsobjekte erteilt, erfolgt die Prüfung zunächst mit S_TABU_DIS (Tabellenberechtigungsgruppe). Schlägt diese Prüfung fehl, wird die Berechtigung mit S_TABU_NAM (Tabellenname) geprüft.
Wenn Sie auf Tabellenebene berechtigen, beachten Sie bitte, dass auch folgende Tabellen berechtigt werden müssen.
| Tabelle | Berechtigungsgruppe | Zweck |
|---|---|---|
| T000 | SS | Mandanten – Standardtabelle für den Verbindungstest |
| T001 | FC01 | Buchungskreise – Fallback-Tabelle für Verbindungstest |
| DD02L | ABAP Data Dictionary – Verfügbare Tabellen im System | |
| DD02T | ABAP Data Dictionary – Beschreibungstexte zu Tabellen | |
| DD02V | ABAP Data Dictionary – Tabellensuche im dab Nexus Package Studio | |
| DD03L | ABAP Data Dictionary – Verfügbare Felder im System | |
| DD03T | ABAP Data Dictionary – Verfügbare Beschreibungstexte zu Feldern |
Berechtigung über Tabellenberechtigungsgruppen
Berechtigungsklasse BC_A Basis - Administration → Berechtigungsobjekt S_TABU_DIS
Hier wird festgelegt, auf Ebene der Tabellenberechtigungsgruppe, auf welche Tabellen und in welcher Form zugegriffen werden darf. Die Berechtigungsgruppen werden im Parameter DICBERCLS eingetragen, und die Zugriffsart wird über ACTVT definiert. Die Zuordnung einer Tabelle zur 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
Hiermit wird auf Tabellenname-Ebene festgelegt, auf welche Tabellen und in welcher Form zugegriffen werden darf. Die Tabellen werden im Parameter TABLE eingetragen und die Zugriffsart über ACTVT festgelegt.
| Feld | Wert |
|---|---|
| ACTVT (Aktivität) | 03 (Anzeigen) |
| TABLE (Berechtigungsgruppe) | * |
Testen
Funktionsbaustein testen
Nachdem der Funktionsbaustein wie oben beschrieben installiert wurde, kann mit der Transaktion SE37 ein erster Funktionstest über die Schaltfläche Testen/Ausführen oder die Taste F8 durchgeführt werden.
Im ersten Dialog können die Importparameter eingetragen werden. In unserem Beispiel verwenden wir die Tabelle für Buchungskreise T001 im Feld QUERY_TABLE. Sie können jede Tabelle verwenden, auf die der aktuell angemeldete Benutzer Zugriffsrechte hat. Weitere Eingaben sind für den ersten Test nicht erforderlich. Starten Sie den Test über die Schaltfläche Ausführen bzw. mit F8.

Wurde der Funktionsbaustein fehlerfrei ausgeführt, erhalten Sie sogenannte Ergebnistabellen. Sie können das Ergebnis einsehen, indem Sie beim Eintrag zu TABL_FIELDS oder DATA auf das Symbol für Detailansicht klicken.

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

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

RFC-Verbindung testen
Mit dem dab FunctionModuleTester können Sie prüfen, ob die Verbindung erfolgreich per RFC aufgebaut werden kann. Weitere Hinweise finden Sie hier.
Deinstallation
- Öffnen Sie die Transaktion SAINT
- Klicken Sie auf den Reiter 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 Add-Ons für ECC-Systeme nicht mehr. Dies bedeutet, dass SAP das eigene Funktionsbaustein von dab für ECC-Systeme nicht mehr (re-)zertifizieren kann. Weitere Informationen dazu finden Sie in diesem Blogbeitrag von SAP.
Die Add-On besitzt Zertifizierungen für folgende Versionen – die aktuellen Zertifizierungen können Sie jederzeit im SAP Certified Solutions Directory einsehen.
Release Notes
Version 1.71
- Anpassungen für SAP Clean Core Level B, was bedeutet, dass ausschließlich von SAP freigegebene APIs verwendet werden
- Anpassungen für die Importvoraussetzungen: das Add-On kann auf SAP ECC, SAP S4/HANA und SAP BW/4HANA installiert werden
- Erweiterungen für das Extrahieren von Sichten mit nicht eindeutigen Primärschlüsseln (z. B. FAGLFLEXT): Für diese Funktion ist ein zusätzliches Anwendungs-Update 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 zur Korrektur aus Version 110 wird nun auch die Auflösung von verschachtelten .INCLUDES mit Suffixen unterstützt. Speziell gab es Probleme in der Tabelle ACDOCA, bei der das .INCLU-_PA Include einen Suffix enthält und außerdem mit .APPEND erweitert wird. Mit dieser Korrektur wird der Suffix nun auch bei den Feldern im .APPEND angewendet.
Version 1.50
- Das Funktionsbaustein wurde so vorbereitet, dass der Export von Langtexten aus der Spalte CLUSTD in der Tabelle STXL unterstützt wird
Version 1.40
- letzte SAP Add-On Version kompatibel mit SAP Basis 731 und älter
- Erfüllung der geforderten Sicherheitsstufen für S/4 Cloud EX
Version 1.30
- Das Auslesen der DDIC-Informationen liefert einen falschen OUTPUTLEN für den Datentyp RAW für die 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, INTLEN 16 und einem OUTPUTLEN kleiner als 32 wird OUTPUTLEN nun auf 32 gesetzt.
Version 1.20
- Beim Erstellen der Feldliste für die SQL-Abfrage wurde **<table>~<fieldname>** nach 30 Zeichen abgeschnitten, was zu Fehlern in der SQL-Abfrage führte.
Version 1.10
- In S4/HANA-Systemen traten bei bestimmten Tabellen (BKPF, BSEG, MATDOC, ACDOCA, MHNK) Fehler auf. Die Auflösung der 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>** umgestellt, um Ausnahmen bei bestimmten Feldnamen zu vermeiden, die geschützte SQL-Bezeichner verwenden (z. B. Tabelle TOAM – Feld Connection).
SAP Legacy RFC Function Modules
Wenn Sie ein anderes Funktionsbaustein als /DABEXP/RFC_SAPCONNECTOR verwenden, empfehlen wir Ihnen dringend ein Upgrade auf dieses RFC-Modul! dab wird andere Funktionsbausteine weder aktualisieren noch unterstützen. Diese Module sind zudem nicht SAP-zertifiziert!
Neben /DABEXP/RFC_SAPCONNECTOR wurden in der Vergangenheit auch andere Module im Z-Namensraum unterstützt, die aus alten dab:Exporter-Installationen oder individuellen Kundenanpassungen stammen.
Die folgende Tabelle stellt den Funktionsumfang der jeweiligen Module gegenüber:
- Max. Zeichen pro Datensatz: Definiert die maximale Anzahl an Zeichen, die pro Datensatz extrahiert werden können (insbesondere relevant für Tabellen mit vielen Spalten)
- S_DEVELOP erforderlich: Z-Module benötigen das Berechtigungsobjekt S_DEVELOP zur Ausführung
- Langtexte: Langtexte sind in den Tabellen STXH und STXL gespeichert – neuere Versionen des Moduls können die Inhalte dieser Tabellen dekodieren und extrahieren
- FLT & RAW Datentypen: Unterstützung der Extraktion bei Spalten mit den Datentypen FLT und RAW
- Update über SAINT: Z-Module müssen über die Transaktionen SE37 und SE80 gepflegt werden (das zertifizierte Modul muss über die Transaktion SAINT installiert und aktualisiert werden)
| Funktionsbaustein | Max. Zeichen pro Datensatz | 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 |