Delphi-PRAXiS
Seite 2 von 2     12   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Win32/Win64 API (native code) (https://www.delphipraxis.net/17-win32-win64-api-native-code/)
-   -   Sinnvollste Technik für Interaktion mit SAP (https://www.delphipraxis.net/184457-sinnvollste-technik-fuer-interaktion-mit-sap.html)

pertzschc 1. Apr 2015 10:05

AW: Sinnvollste Technik für Interaktion mit SAP
 
Zitat:

Zitat von Bernhard Geyer (Beitrag 1295691)
*push*

Hallo Bernhard,
wie können wir Dir noch weiterhelfen?

Es gibt mehrere Wege mit einem SAP System zu interagieren:
  • Aufruf von Funktionsbausteinen in dem SAP System (dazu gibt es ein RFC-SDK)
  • Aufruf von Webservices im SAP System (REST oder Webservices per HTTP(S))
  • Interaktion mit der SAPGUI auf dem Windows Rechner mittels COM (Von einer Software zu SAPGUI oder von SAPGUI zu einer Software)

Welche davon Ihr auswählen könnt, hängt davon ab, ob Ihr nur auf dem Windowsbereich programmiert oder ob Ihr auch im SAP System entwickeln könnt.

Grüße, Christoph

Bernhard Geyer 1. Apr 2015 15:47

AW: Sinnvollste Technik für Interaktion mit SAP
 
Zitat:

Zitat von pertzschc (Beitrag 1295727)
Zitat:

Zitat von Bernhard Geyer (Beitrag 1295691)
*push*

Hallo Bernhard,
wie können wir Dir noch weiterhelfen?

Es gibt mehrere Wege mit einem SAP System zu interagieren:
  • Aufruf von Funktionsbausteinen in dem SAP System (dazu gibt es ein RFC-SDK)
  • Aufruf von Webservices im SAP System (REST oder Webservices per HTTP(S))
  • Interaktion mit der SAPGUI auf dem Windows Rechner mittels COM (Von einer Software zu SAPGUI oder von SAPGUI zu einer Software)

Welche davon Ihr auswählen könnt, hängt davon ab, ob Ihr nur auf dem Windowsbereich programmiert oder ob Ihr auch im SAP System entwickeln könnt.

Grüße, Christoph

Wir werden nicht im SAP-System programmieren. Dieser übernimmt der SAP-Dienstleister des Kunden.
RFC-API: Ist diese auf dem Rechnern vorhanden wo er auch seinen Win32 SAP-GUI installiert hat? Oder müsste diese gesondert Installiert werden?
Webservices: Dann wäre die Logik das auf dem Client ein Webservice läuft die dann von dem SAP-Server aufgerufen wird? Glaube nicht das dieser Ansatz in Zeiten von aktivieren Firewalls einen Glüclich macht ...
COM-Schnittstelle: Direkt können wir das nicht in die Hauptanwendung integrieren da die Funktion nur per Plugin unserer Anwedunng realisiert wird. Wenn dann wäre es eine Hilfsanwendung die diese COM-Schnitttstelle hat und diese kommuniziert dann mit unserer Hauptanwendung z.b. mit WM_COPYDATA-Meldungen oder andere techniken.

Bernhard Geyer 1. Apr 2015 16:01

AW: Sinnvollste Technik für Interaktion mit SAP
 
Bezüglich Webservice/Socket-Kommunikation habe ich beim SAP-Dienstleister nachgefragt ob das auch von SAP-GUI-Clientseite ansprechbar ist.
Wenn alles Lokal läuft wäre es ne Möglichkeit. Über den SAP-Server eher nicht.

pertzschc 2. Apr 2015 09:21

AW: Sinnvollste Technik für Interaktion mit SAP
 
Hallo Bernhard,

Zitat:

Zitat von Bernhard Geyer (Beitrag 1295821)
RFC-API: Ist diese auf dem Rechnern vorhanden wo er auch seinen Win32 SAP-GUI installiert hat? Oder müsste diese gesondert Installiert werden

Mit der Installation der SAPGUI auf dem Rechner ist auch die RFC Bibliothek mit installiert und damit vorhanden.
Die Architektur besteht dann darin, dass Ihr aus Eurem Programm als Client sogenannte RFC-Aufrufe in das SAP System macht (inkl. Login per User/Passwort). Auf Seite des SAP Systems nimmt diese Aufrufe ein passenden in ABAP programmierter Funktionsbaustein entgegen und verarbeitet Eure Daten oder liefert Daten aus dem SAP System an Euch aus.
Zitat:

Zitat von Bernhard Geyer (Beitrag 1295821)
Webservices: Dann wäre die Logik das auf dem Client ein Webservice läuft die dann von dem SAP-Server aufgerufen wird? Glaube nicht das dieser Ansatz in Zeiten von aktivieren Firewalls einen Glüclich macht ...

Es wäre eher anders herum. Euer Programm ruft als Client einen Webservice, den das SAP System bereitstellt. Dieser Webservice wird dann analog zum Funktionsbaustein in ABAP programmiert und verarbeitet Daten von Euch oder gibt Euch Daten aus SAP zurück. Da das SAP System prizinpiell auch selber als Webservice Client agieren kann, wäre die von Dir beschriebene Richtung auch denkbar, aber eher nicht empfohlen.
Zitat:

Zitat von Bernhard Geyer (Beitrag 1295821)
COM-Schnittstelle

Ich würde diesen Weg nicht empfehlen.

Gerne bestände auch die Möglichkeit, Euch bei dem Szenario für die Umsetzung professionell zu beraten (-> PM schicken).

Grüße,
Christoph

Bernhard Geyer 9. Apr 2015 15:00

AW: Sinnvollste Technik für Interaktion mit SAP
 
Hab jetzt neuigkeiten.

Die Rückmeldung erfolgt vom bisherigen System nicht per DDE sondern (eine Zwischenapplikation - ist mir auch neu das hier SAP nicht direkt mit der eigentlichen App kommuniziert) schreibt das Ergebnis in eine Kundenspezifische SAP-Tabelle und aktiviert die SAP-GUI. Bei Aktivierung der SAP-GUI schaut das SAP-Formular in diese Usertabelle rein und zeigt die übertragenen Daten an. Das erleichtert schon mal die ganze Sache.

Die (neue, konkretere) Frage ist also:

Welche SAP-API verwendet man am Sinnvollsten um zurück zu übertragende Daten in diese Usertabelle zu bekommen?


Wenn ich die Daten genauso abliefern könnte wie das bisherige Konstrukt aus abzulösende Anwendung (+ Hilfsanwendung welche die SAP-Tabellenschreiberei macht) würde die nötigen Anpassungen auf SAP-Seite geringer ausfallen.
Den direkten Weg kann ich nicht machen da die aktuelle Lösung als Embedded Word-Dokument aufgerufen wurde und damit der Tabellenzugriff über das Document.Container-Property erfolgt. Und das steht mir als Delphi/Java-Anwendung nicht zur verfügung

BlackbirdBerlin 9. Apr 2015 15:51

AW: Sinnvollste Technik für Interaktion mit SAP
 
Hi Bernhard,
ich kann mich Christoph nur anschließen...
Am sinnvollsten ist es, wenn dieser kleine Prozess einmal komplett überdacht und nach dem Stand aktueller Technik umgesetzt wird.
Auch, wenn an sich im SAP nichts programmiert werden soll, würde ich das nicht kategorisch ausschließen.
Wenn es wirklich nur darum geht, Daten in eine kundeneigene Tabelle zu schreiben (initiiert vom PC-Programm) bzw. Daten nach Verarbeitung in SAP wieder zurück zu geben, bieten sich Webservices an.
Viele Grüße,
Tim

p.s. evtl. kann die gesamte Logik auch in SAP abgebildet werden. Schlecht für den PC-Entwickler, aber vielleicht gut für den Prozess...

mkinzler 9. Apr 2015 15:59

AW: Sinnvollste Technik für Interaktion mit SAP
 
http://rfcconnector.com/download/
http://www.gs-soft.com/CMS/en/produc...-sap-sapx.html

pertzschc 13. Apr 2015 15:20

AW: Sinnvollste Technik für Interaktion mit SAP
 
Zitat:

Zitat von Bernhard Geyer (Beitrag 1296926)
Die (neue, konkretere) Frage ist also:
Welche SAP-API verwendet man am Sinnvollsten um zurück zu übertragende Daten in diese Usertabelle zu bekommen?

Du verwendest das SAP RFC SDK auf dem PC und auf Seiten des SAP Systems 2 Funktionsbausteine. Einen zum Schreiben der Daten PC -> SAP (und ggfs. einen zum Lesen der Daten SAP -> PC).

Grüße,
Christoph


Alle Zeitangaben in WEZ +1. Es ist jetzt 01:47 Uhr.
Seite 2 von 2     12   

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz