Hallo Leute,
meine Vergangenheit hohlt mich ein ...
Da ich aufgrund privaten Interesses vor ein paar Jahren mal programmiert habe (damals noch in Profan und Purebasic) bin ich nun inoffiziell der Anspechpartner für VBA und SAP Dinge geworden. Da ich mich die letzten Monaten aufgrund verschiedener Projekte in Excel recht weit eingearbeitet habe und ein paar firmeninterne Projekte erstellte habe, möchte ich nun einen weiteren Schritt wagen. Diesmal interessiert mich die Schnittstellen zwischen Excel zu SAP und umgekehrt. Da ich in diesem Zusammenhang im Grunde von Null anfangen muss, bin ich nun hier gelandet. Ich würde mich sehr freuen, wenn Sie mir für den Einstieg ein paar einfache Dinge erklären könnten. Dazu habe ich auch gleich ein einfaches Beispiel:
Ich möchte gerne den Kostenstellenbericht aus SAP direkt in Excel exportieren und das mit reinen VBA-Code. Meine Vorgehensweise stelle ich mir praktisch wie folgt vor:
- SAP Anmeldung
- SAP-Transaktion aufrufen (Kostenstellen-Bericht)
- Übergeben sämtlicher notwendiger Daten wie Geschäftsjahr, Monat, Zeitraum etc.
- Ausführen der Transaktion
- Download des Berichts in eine XLS Datei
Aufgrund meiner völligen Unwissenheit in diesem Thema kommen schon direkt beim ersten Programmpunkt eine Frage auf:
Folgenden Code habe ich in einem Forum gefunden, mit dem man sich an das SAP-Programm anmelden und der Status gecheckt wird:
Set funcControl = CreateObject("SAP.Functions")
Set SAPConnection = funcControl.Connection
SAPConnection.ApplicationServer = "***"
SAPConnection.Client = "***"
SAPConnection.user = "***"
SAPConnection.Password = "***"
SAPConnection.system = "***"
SAPConnection.Language = "***"
If SAPConnection.logon(0, False) <> True Then
MsgBox "keine Verbindung zu SAP mögl."
Exit Sub
Else
MsgBox "Verbindung zu SAP hergestellt"
End If
Nachdem ausführen des Codes in Excel erscheint wie gewohnt das Anmeldefenster, in dem die Daten wie Benutzername etc. auch schon eingetragen sind. Mit einem Klick auf "OK" melde ich mich dann wie gewohnt im System an. Hierzu hätte ich ein paar Fragen:
- Warum wird man durch die Übergabe sämtlicher notwendiger Daten (Benutzername, kennwort) nicht sofort an das System angemeldet? Gibt es dafür einen entsprechenden Code?
- Warum erscheint dieses Anmeldefenster auch, wenn ich bereits am System angemeldet bin?
- Nach der erfolgreichen Anmeldung möchte ich den o.g. Programmschritten folgen (Transkation aufrufen etc.) Gibt es dafür einen Beispielcode?
Ich danke für jegliche Hilfe in diesem Zusammenhang und entschuldigen mich schon mal dafür, die Forumsuche nicht ausreichend genutzt zu haben
MfG
CNESM