Der EPO Connector ist ein ABAP add-in, welches die Erstellung von Schnittstellen von SAP mit anderen IT Systemen und Applikationen ermöglicht. Er bietet Funktionen für ein- und ausgehende Schnittstellen.
Wenn im SICF-Knoten eines Trusted Services Zugangsdaten hinterlegt sind, so kann über diesen Knoten jedes EPO-Service aufgerufen werden. Ohne spezielle Authorisierungsdaten wird das Service mit den Anmeldedaten des SICF-Knotens ausgeführt.
Um dies zu verhindern, muss der Handler /EPO1/CL_CHECK_TRUSTED_SERVICE zusätzlich zum 'normalen' Handler an erster Stelle eingefügt werden:
Dieser Handler prüft, ob das aufgerufene EPO-Service das Flag 'IS_TRUSTED' gesetzt hat:
Das Flag 'IS_TRUSTED' muß für alle Services gesetzt werden, die über den trusted SICF-Knoten aufgerufen werden dürfen. Andererseits darf für andere Services, die eine explizite Authorisierung (Username/Passwort, Token, etc.) erfordern, diese Checkbox _nicht_ gesetzt werden.
In weiterer Folge muß darauf geachtet werden, daß unter 'trusted' Services nur solche Operations eingerichtet werden, die gefahrlos ohne Authorisierung aufgerufen werden dürfen.
Um die Kompatibilität zu alten SAP-Releases zu gewährleisten, muß im Pflegedialog (nur im Übersichtsbild) die Felder ab der Checkbox 'No Commit' bis zum letzten Feld 'Beschreibung' aus dem Layout gelöscht werden. Diese gelöschten Felder sind in der Dateilansicht sichtbar.
Ab Version 4.2.0 kann in der Konfiguration für ausgehende Services auch eine RFC-Verbindung (Transaktion SM59) vom Typ G für die Definition des Zielsystems verwendet werden.
Hinweis: wenn beim Aufruf des EPO-Client (Fuba /EPO1/EPOCLIENT) im Parameter I_PATH ein Pfad mitgegeben, so wird dieser an einen eventuell bestehenden Pfad der RFC-Verbindung angehängt.
Bezeichnung für den Transportauftrag ('<X.Y.Z>' durch die aktuelle Version ersetzen): EPO Connector SP12 Pre-Release as Transport <X.Y.Z>
Name für die ZIP - Datei in der NextCloud: EPOConnector_SP12_PreRelease_as_transport_v<X.Y.Z>_<Transportauftrag>.zip
Version 4.9.16
Transportauftrag WK1K905272 ??.05.2025
..
Aktivitäten nach dem Import:
keine
Version 4.9.15
Transportauftrag WK1K905061 28.04.2025
Bugfix im Handler für eingehende binäre Webservices /EPO1/CL_BINARY_HANDLER, Auswertung der HTTP-Header
Klasse /EPO1/CL_MA_TEXT: neue Methoden zum Lesen/Schreiben von Langtexten
Aktivitäten nach dem Import:
keine
Version 4.9.14
Transportauftrag WK1K905027 10.03.2025
Beschränkung der Sourcecodelänge auf 72 Zeichen für die EPO-Nachrichtenliste (/EPO1/MONITOR) um Laufzeitfehler zu vermeiden Internes Detail: der Funktionsbaustein REUSE_ALV_FIELDCATALOG_MERGE analysiert den Sourcecode des übergebenen Reports, dieser wird in eine Tabelle mit 72 Spalten eingelesen. Wenn der Sourcecode länger ist, entsteht ein Laufzeitfehler.
Aktivitäten nach dem Import:
keine
Version 4.9.13
Transportauftrag WK1K904936 27.02.2025
Report /EPO1/DOWNLOAD_XML - Sourcecode-Zeilen auf 72 Zeichen begrenzen (sonst: Laufzeitfehler beim Import von EPO-Nachrichten)
Mobile Apps - LoginCheck für SSO: keine Passwort-Prüfung mehr (weil bei SSO kein Passwort notwendig ist)
Aktivitäten nach dem Import:
keine
Version 4.9.12
Transportauftrag WK1K904732 22.01.2025
Korrektur Archiv-Klasse /EPO1/CL_TS_ARCHIVE, Methode FILE_WRITE_TO_ARCHIVE: beim Auswerten der eingerichteten Archive auch das Flag AR_STATUS beachten (muß 'X' sein)
Korrektur Klasse /EPO1/CL_JSON_BASE_OUT, Methode CALL_SERVICE: Fehler abfangen, wenn keine Response-Struktur übergeben wird
Report /EPO1/INSERT_XML_FILE - Sourcecode-Zeilen auf 72 Zeichen begrenzen (sonst: Laufzeitfehler beim Import von EPO-Nachrichten)
Funktionsgruppe /EPO1/ERX_EXAMPLES_MINISAP in den SP12-Transport aufnehmen (fehlt die Referenz auf das Include /EPO1/LERX_EXAMPLES_MINISAPU06, Fuba /EPO1/ERX_PROCESSING_FILE_RT)
Funktionsbaustein /EPO1/EPOCLIENT, ausgehende XML Webservices: Korrektur, daß Fehlermeldungen nicht durch die Transformation des Responses gelöscht/überschrieben werden (beim Aufruf von /EPO1/CL_XSLT=>XMLTOXML)
Authorization Token: neue Klasse /EPO1/CL_JSON_BASE_OUT_TOKEN
Aktivitäten nach dem Import:
keine
Version 4.9.11
Transportauftrag WK1K904590 11.07.2024
FEHLER: für die Funktionsgruppe /EPO1/ERX_EXAMPLES_MINISAP fehlt die Referenz auf das Include /EPO1/LERX_EXAMPLES_MINISAPU06, Fuba /EPO1/ERX_PROCESSING_FILE_RT); das stört allerdings nicht, wenn dieses Include durch einen früheren Transport schon importiert wurde. Korrigiert in Version 4.9.12 Hinweis: diese Funktionsgruppe enthält nur auskommentierte Funktionsbausteine als Beispiel.
Ausgabe der Auslösestelle von Exceptions im Fuba /EPO1/EXC_CSMSG zusätzlich zum Exception-Text (Zeilennummer, Include und Programm); damit soll es bei eingehenden Webservices einfacher werden, die Exception-Stelle zu lokalisieren.
EPO-Suche: neuer Parameter für zusätzliche WHERE - Bedingung (Tabelle /EPO1/SEARCHES) z.B. "AND KOSTL = '0000001200'"
Berechtigungsprüfung für Reports, basierend auf dem Transaktionscode; muß in der Tabelle /EPO1/DEFAULTS explizit aktiviert werden: name = EPO_AUTHORIZATION_CHECK value = X (siehe Report/Transaktion /EPO1/EXC_DEFAULTS)
Aktivitäten nach dem Import:
keine
Version 4.9.10
Transportauftrag WK1K904572 04.07.2024
Korrektur der Klasse /EPO1/CL_FIELD_MAP für 'default' Mapping mit dummy-Services (z.B. '[camelCase]')
Erweiterung der Archiv-Klasse /EPO1/CL_TS_ARCHIVE, beim Archivieren gleich die erzeugten Archiv-Daten zurückliefern
Aktivitäten nach dem Import:
keine
Version 4.9.9
Transportauftrag WK1K904499 01.07.2024
!! Fehler im Field Mapping - nicht verwenden !!
Anpassung an alte Releases, Schlüsselwort 'primary_key' bei der Deklaration interner Tabellen entfernt
Anpassung an Systeme ohne optisches Archiv, Tabellenzugriff auf TOAAT dynamisch geschrieben (Klasse /EPO1/CL_TS_ARCHIVE)
Erweiterung der Klasse /EPO1/CL_FIELD_MAP für statisch definiertes Mapping der Feldnamen (d.h. gesteuert im Code, ohne Customizing)
Aktivitäten nach dem Import:
keine
Version 4.9.8
Transportauftrag WK1K904369 03.06.2024
Neue Methoden / Typdefinitionen für die Archiv-Klasse /EPO1/CL_TS_ARCHIVE
Erweiterung Klasse /EPO1/CL_MA_RETURN: neue Methoden zum Befüllen einer BAPIRET2 - Struktur
Auslieferung der kompletten Klasse /EPO1/CL_CONNECTOR, um Probleme mit gelöschten Methoden zu vermeiden
Aktivitäten nach dem Import:
keine
Version 4.9.7
Transportauftrag WK1K904301 09.04.2024
Erweiterung Klasse /EPO1/CL_MA_RETURN: neue Methoden zum Befüllen einer BAPIRET2 - Struktur
Aktivitäten nach dem Import:
keine
Version 4.9.6
Transportauftrag WK1K904296 17.03.2024
Erweiterung Klasse /EPO1/CL_MA_RETURN: neue Methoden zum Ausgeben/Anzeigen von Message-Listen
Programm /EPO1/IN_PROCESS_XML für JSON Re-Processing erweitert (META Daten werden gelesen und URI sowie HTTP Header werden verwendet)
Aktivitäten nach dem Import:
keine
Version 4.9.5
Transportauftrag WK1K904189 23.02.2024
Erweiterung Klasse /EPO1/CL_MA_RETURN: neue Methoden zum Ausgeben/Anzeigen von Message-Listen
Aktivitäten nach dem Import:
keine
Version 4.9.4
Transportauftrag WK1K904126 16.02.2024
Nachtrag der deutschen Übersetzung im EPO Bereichsmenü (/EPO1/SOA7)
Syntaxkorrektur für alte Releases im Funktionsbaustein /EPO1/EXC_ABAP_TO_JSON (fehlender Typ INT8)
Aktivitäten nach dem Import:
keine
Version 4.9.3
Transportauftrag WK1K904030 19.01.2024
Report /EPO1/JSON_GENERATE_ABAP: einlesen bestehender Feldmappings (Tabelle /EPO1/FIELD_MAP), Korrektur für lange Tabellen-/Strukturnamen
Paketbereinigung, Texthandling für BAPI - Texte von /EPO1/CL_MA_TEXT in die neue Klasse /EPO1/CL_PM_TEXT (Paket /EPO1/EMA_PM, nicht Teil des EPO-Connectors)
Aktivitäten nach dem Import:
Nur, wenn eine der Methoden /EPO1/CL_MA_TEXT=>SPLIT_TEXT_FOR_BAPI, /EPO1/CL_MA_TEXT=>STRING_TO_BAPI_TABLE oder /EPO1/CL_MA_TEXT=>TABLE_TO_BAPI_TABLE verwendet wird: Aktualisierung des Paketes /EPO1/EMA_PM und umschreiben der Klasse
Version 4.9.1
Transportauftrag WK1K904004 07.12.2023
Inbound JSON Webservice: Korrektur Laufzeitfehler, wenn das Format tb oder tbi gewählt wurde
Messagelist: transformiertes Format für JSON - Nachrichten anpassen
Aktivitäten nach dem Import:
keine
Version 4.9.0
Transportauftrag WK1K903810 20.11.2023
neue Klasse /EPO1/CL_TS_ARCHIVE für einheitliche Archiv-/Attachment-Zugriffe
inbound JSON - Webservices: Fuba /EPO1/GFMC_JSON_PROCESSINGFM überschreibt nun nicht mehr einen intern gesetzten HTTP-Header 'content-type'
inbound - Webservices: verhindern, daß ein fehlerhafter Callstatus durch das Speichern des Responses überschrieben wird
inbound JSON - Webservices: redefinierbare Klasse /EPO1/JSON_EXC_FORMATTER_BASE für die Formatierung der Exception - Informationen (z.B. vorbereitete Klasse /EPO1/JSON_EXC_FORMATTER_ERROR)
Aktivitäten nach dem Import:
keine
Version 4.8.14
Transportauftrag WK1K903633 17.10.2023
Klasse /EPO1/CL_MA_TEXT: neue Hilfsmethoden zur Textumwandlung für BAPI - Aufrufe
Korrektur der Fehlerbehandlung in der Klasse /EPO1/CL_JSON_BASE_OUT, wenn nach einem Fehler versucht wird, den Response zu interpretieren
Aktivitäten nach dem Import:
keine
Version 4.8.13
Transportauftrag WK1K903635 29.09.2023
Bugfix für eingehendes JSON Webservice: führende Leerzeichen im Request ignorieren (wurde bisher als XML weiterbehandelt)
EPO-Client: Korrektur der URL-Darstellung in den Metadaten, wenn einem RFC-Pfad noch ein Pfad programmtechnisch angehängt wird (beide Pfade werden zusammengesetzt)
Aktivitäten nach dem Import:
keine
Version 4.8.12
Transportauftrag WK1K903630 06.07.2023
Neuer Handler für (eingehende) binäre Webservices
Aktivitäten nach dem Import:
keine
Version 4.8.11
Transportauftrag WK1K903498 02.06.2023
Syntax-Korrekturen für HANA - ATC-Check
Aktivitäten nach dem Import:
keine
Version 4.8.10
Transportauftrag WK1K903491 27.05.2023
Syntax-Korrekturen für ältere Releases (Basis 700)
Aktivitäten nach dem Import:
keine
Version 4.8.9
Transportauftrag WK1K903321 12.05.2023
Passwort - Report: Umstellung der Verschlüsselung auf AES bzw. TDES, je nach Verfügbarkeit (Verwendung der Crypto-Klasse CL_SEC_SXML_WRITER)
ABAP 2 JSON: Bugfix für die Darstellung leerer Tabellen gemeinsam mit 'strip'
Aktivitäten nach dem Import:
keine
Version 4.8.8
Transportauftrag WK1K903278 02.02.2023
UM-Mails: neue Flags für SET_SIGN und DISCLOSURE
Aktivitäten nach dem Import:
keine
Version 4.8.7
Transportauftrag WK1K903271 27.01.2023
Codebereinigung für die Kompatibilität mit dem neuen 'kompletten EPO-Connector - Transport'
Aktivitäten nach dem Import:
keine
Version 4.8.6
Transportauftrag WK1K903184 22.01.2023
'/EPO1/CL_JSON_BASE_OUT_OAUTH=>CV_OAUTH_TOKEN_TYPE_BEARER' als sichtbare Konstante deklariert
Aktivitäten nach dem Import:
keine
Version 4.8.5
Transportauftrag WK1K903166 11.12.2022
neue GFMC-Spezialparameter 'EV_EPO1_RESPONSE_STATUS' und 'CV_EPO1_REQUEST_STATUS'
Aktivitäten nach dem Import:
keine
Version 4.8.4
Transportauftrag WK1K903058 04.12.2022
eingefügter Response - Text im Service Handler für 'trusted services'
Typ-Korrektur für Datum/Uhrzeit in der Klasse /EPO1/CL_CSV (für ältere Releases)
…und andere Syntax-Korrekturen für ältere Releases
Aktivitäten nach dem Import:
keine
Version 4.8.3
Transportauftrag WK1K903044 05.10.2022
new 'path_append' parameter for /EPO1/CLIENT and the class /EPO1/CL_JSON_BASE_OUT
Aktivitäten nach dem Import:
keine
Version 4.8.2
Transportauftrag WK1K903041 29.09.2022
syntax correction class /EPO1/CL_CSV for older releases
Aktivitäten nach dem Import:
keine
Version 4.8.0
Transportauftrag WK1K902751 11.09.2022
Support für persistente OAUTH - Tokens (Klasse /EPO1/CL_JSON_BASE_OUT_OAUTH)
Aktivitäten nach dem Import:
keine
Version 4.7.1
Transportauftrag WK1K902728 25.04.2022
Größenkategorie/Datenart für Tabelle /EPO1/SEARCHHELPS
Aktivitäten nach dem Import:
keine
Version 4.7.0
Transportauftrag WK1K902706 21.04.2022
Unterstützung für Cookies (ausgehende Webservices und eingehende GFMC-Aufrufe)
Deaktivierter 'toter' Code im PREANDPOSTPROCESSING
Korrektur der Zeitberechnung im DashBoard (für Verarbeitungszeiten, deren Anfangs-/Endezeitpunkt unterschiedliche Minutenwerte haben)
Aktivitäten nach dem Import:
keine
Version 4.6.1
Transportauftrag WK1K902659 22.03.2022
Tabelle /EPO1/GFMCOP umgestellt auf Customizing-Tabelle
Korrektur, daß bei fehlendem Eintrag in /EPO1/GFMCFM der GFMC-Report auf jeden Fall neu generiert wird
Korrektur im EPO-Log (teils wurde noch das alte 'store' - Kennzeichen verwendet), Log-Korrektur für 'Reprocess' Verarbeitung
Aktivitäten nach dem Import:
keine
Version 4.6.0
Transportauftrag WK1K902647 02.03.2022
neue GFMC-Parameter für EPO-Log Daten
GFMC - Korrekturen
JSON: Request-Datenfehler ins EPO-Log schreiben, HTTP-Code setzen
Aktivitäten nach dem Import:
keine
Version 4.5.1
Transportauftrag WK1K902198 ??.09.2021
Bugfix SSO Login-Fuba: User-Parameter auslesen und zurückliefern
inbound Operations: Support für XSDBOOLEAN im JSON Request
Bugfix - GFMC Report Neugenerierung, wenn JSON und XML parallel genutzt werden
Webservice Response (GFMC): automatischer HTTP-Code 400 (bad request) bei XML-/JSON-Deserialisierungsfehlern, 500 (internal server error) bei nicht behandelten Exceptions
Bugfix - JSON - Basisklasse: liefert jetzt auch im Fehlerfall die Transaktions-ID im Callstatus
Aktivitäten nach dem Import:
keine
Version 4.5.0
Transportauftrag WK1K902008 23.09.2021
JSON - Klasse für OAuth: Korrektur gegen Endlosschleife im Fehlerfall, Support für separate Token-Service-ID
neuer Report /EPO1/VERSIONS für die Anzeige der installierten EPO-Produkte
neue Option im Service, um die Operation aus dem 2. Pfadelement nach dem SICF-Knoten zu lesen (mapping auf einen Fuba über Tabelle /EPO1/GFMCOP wie bisher)
Aktivitäten nach dem Import:
Redefinierte Klassen der Basisklasse /EPO1/CL_JSON_BASE_OUT müssen ev. bei Aufrufen der Methoden ADD_HTTP_HEADER, ADD_HTTPHEADER den neuen Parameter CS_CALLSTATUS hinzufügen
Version 4.4.0
Transportauftrag WK1K901570 05.07.2021
Unit Test für /EPO1/CL_DYN_ABAP ausgelagert
Korrektur Report /EPO1/TRANSPORT: Kleinbuchstaben für den Dateinamen
EPO Suche: Unterstützung für primitive INT - Elemente im View, verbesserte Fehlerbehandlung
Protokollierung der Metadaten: HTTPMETHOD hinzugefügt
JSON - Klasse mit Unterstützung für OAuth - Authentifizierung /EPO1/CL_JSON_BASE_OUT_OAUTH
Nachrichten ins EPO-Log laden: freie Auswahl von I oder O - Messages (keine strikte Prüfung mehr)
JSON - Feldmapping: nun auch mit statischer Tabelle
Version 4.3.1
Transportauftrag WK1K901565 18.01.2021
Syntax-Korrektur für ältere SAP-Releases in der Testklasse für /EPO1/CL_DYN_ABAP
Syntax-Korrektur für ältere SAP-Releases in der Konvertierung ABAP nach JSON, Klasse /EPO1/CL_TOOLS
Version 4.3.0
Transportauftrag WK1K901495 15.01.2021
sichtbare Versions-Anzeige in der Transaktion /EPO1/EXC
optionale Absicherung von Trusted Services über den Handler /EPO1/CL_CHECK_TRUSTED_SERVICE
Version 4.2.0
Transportauftrag WK1K901432 07.01.2021
Unterstützung für RFC-Destinationen bei ausgehenden Webservices
Unterstützung für dynamische Struktur-Änderungen für eingehende Services mit der Klasse /EPO1/CL_DYN_ABAP
Fehlerbehandlung bei ungültigen Einträgen in der Parameter - Tabelle /EPO1/EC_EB_WSSP
Konvertierung ABAP nach JSON: Syntax-Korrektur für sehr alte Releases
Erweiterung der Klasse /EPO1/CL_UM mit Attribut UM_OID und Methode OID für Email-Status Check Funktionalität im RAB
Version 4.1.2
Transportauftrag WK1K901425 01.12.2020
Syntaxkorrektur für alte SAP Releases
Version 4.1.1
Transportauftrag WK1K901381 29.11.2020
Vorbereitung auf Multipart - Requests für ausgehende Aufrufe
EPO - Log der ausgehenden Metadaten auch, wenn es Netzwerkproblemen gibt; URI auch dann loggen, wenn der Pfad leer ist
Bereinigung: Paket /EPO1/EC_EB_SERVICES entfernt
Version 4.1.0
Transportauftrag WK1K901331 17.11.2020
JSON STRIP für die selbst geschriebene ABAP -> JSON Umwandlung; Tabelle /EPO1/JSON_STRIP
Version 4.0.2
Transportauftrag WK1K901319 03.11.2020
Bereinigung Tabelle /EPO1/EXC_ABAP_X_TABLE / Struktur /EPO1/EXC_ABAP_X_STRUCT
Version 4.0.1
Transportauftrag WK1K901313 30.10.2020
Syntax-Korrektur für ältere Systeme
Version 4.0.0
Transportauftrag WK1K901291 29.10.2020
Umstrukturierung der Typen für Servicename/ServiceID; dadurch ist ev. auch ein Update abhängiger Pakete notwendig (z.B. ecosio)
JSON Webservice - Klasse: Erweiterung um optionale HTTP-Header für Requests