OLE Automatisierung über RFC aufrufen

Alles rund um die Sprache ABAP®: Funktionsbausteine, Listen, ALV
5 Beiträge • Seite 1 von 1
5 Beiträge Seite 1 von 1

OLE Automatisierung über RFC aufrufen

Beitrag von Meex (Specialist / 122 / 0 / 0 ) »
Hallo zusammen,

habe folgendes Problem, ich habe einen Fuba geschrieben, welcher mir im Outlook Kontakte anlegt!
Nun will ich diesen Fuba (remotefähig) mittels RFC aus z.B. Excel aufrufen!
Führe ich den Fuba im GUI aus funktioniert er!
Starte ich diesen via RFC passiert nichts, nicht einmal eine Fehlermeldung!

Kann das eventuell mal einer versuchen, lt. SAP sollte das nämlich sehrwohl funktionieren:

FUNCTION ZEGGER_GW_TEST.
INCLUDE: ole2incl. "OLE2 Automation
DATA: outlook TYPE ole2_object,
namespace TYPE ole2_object,
myfolder TYPE ole2_object,
myitem TYPE ole2_object.

* Instanzieren Outlook
CREATE OBJECT outlook 'Outlook.Application'.

* Namensraum
CALL METHOD OF outlook 'GetNamespace' = namespace
EXPORTING
#1 = 'MAPI'.

* Standard Kontaktverzeichnis
CALL METHOD OF namespace 'GetDefaultFolder' = myfolder
EXPORTING
#1 = 10. "olFolderContacts

* Kontakt anlegen
CALL METHOD OF outlook 'CreateItem' = myitem
EXPORTING
#1 = 2. "olContactItem

SET PROPERTY OF myitembp 'Categories' = 'SAP'.

SET PROPERTY OF myitem 'Title' = 'Firma'.
SET PROPERTY OF myitem 'CompanyName' = 'Test Outlook'.
SET PROPERTY OF myitem 'BusinessAddressCountry' = 'AT'.
SET PROPERTY OF myitem 'BusinessAddressStreet' = 'Test'.

CALL METHOD OF myitem 'Save'.

FREE myitem.
FREE myfolder.
FREE namespace.
FREE outlook.

ENDFUNCTION.
-------------------------------------------------
Aufruf aus Excel VBA:

Sub Synchronize()
Dim functionCtrl As Object
Dim theFunc As Object
Dim sapConnection As Object
Dim returnFunc As Boolean
Dim die_exception As String

Set functionCtrl = CreateObject("SAP.Functions")

Set sapConnection = functionCtrl.Connection

sapConnection.Client = "client"
sapConnection.User = "user"
sapConnection.Password = "pass"
sapConnection.Language = "spras"
sapConnection.SystemNumber = SysNr
sapConnection.ApplicationServer = "server"

If sapConnection.Logon(0, True) = True Then
Set theFunc = functionCtrl.Add("ZEGGER_GW_TEST")
returnFunc = theFunc.Call
die_exception = theFunc.Exception
sapConnection.Logoff
End If

Set functionCtrl = Nothing

End Sub

gesponsert
Stellenangebote auf ABAPforum.com schalten
kostenfrei für Ausbildungsberufe und Werksstudenten


Beitrag von Patrick76 (ForumUser / 34 / 0 / 1 ) »
Hi!!

ne, das wird so nix. Von ABAP aus OLE-Objekte anzusprechen heißt, dass der SAP GUI für den Applikationsserver (auf dem das ABAP-Programm läuft) die OLE-Objekte auf dem Client instanziiert und ansteuert.
Im Fall von RFC gibt es aber keinen GUI...

Wäre es vielleicht eine Option, von Excel aus direkt outlook anzusteuern und den Umweg über ABAP wegzulassen?

Grüße, Patrick Theobald

Folgende Benutzer bedankten sich beim Autor Patrick76 für den Beitrag:
ibo


Re:

Beitrag von ibo (ForumUser / 67 / 35 / 9 ) »
Patrick76 hat geschrieben:Hi!!

ne, das wird so nix. Von ABAP aus OLE-Objekte anzusprechen heißt, dass der SAP GUI für den Applikationsserver (auf dem das ABAP-Programm läuft) die OLE-Objekte auf dem Client instanziiert und ansteuert.
Im Fall von RFC gibt es aber keinen GUI...

Wäre es vielleicht eine Option, von Excel aus direkt outlook anzusteuern und den Umweg über ABAP wegzulassen?

Grüße, Patrick Theobald
Hallo Patrick,
danke sehr für die Antwort. Aber hast du eine andere Alternative oder andere Logik wie man DOC ohne GUI anzusteuern?

Vielen Dank + Grüße
Ibo
Zuletzt geändert von ibo am 16.07.2017 19:31, insgesamt 2-mal geändert.

Re: OLE Automatisierung über RFC aufrufen

Beitrag von a-dead-trousers (Top Expert / 4282 / 214 / 1141 ) »
ABAP2DOCX
ABAP2XLSX

Folgende Benutzer bedankten sich beim Autor a-dead-trousers für den Beitrag:
ibo

Theory is when you know something, but it doesn't work.
Practice is when something works, but you don't know why.
Programmers combine theory and practice: Nothing works and they don't know why.

ECC: 6.18
Basis: 7.50


Seite 1 von 1

Vergleichbare Themen

6
Antw.
4913
Views
Automatisierung GLMAST funktioniert nicht
von njamnjam » 24.06.2008 09:29 • Verfasst in Financials
2
Antw.
2776
Views
Pflegeview Aufrufen
von Gast » 30.11.2004 10:45 • Verfasst in Basis
0
Antw.
931
Views
IGS per Funktionsbaustein aufrufen?
von smidi » 09.03.2006 10:47 • Verfasst in ABAP® Core
0
Antw.
1668
Views
Webservice aufrufen aus 4.6C?
von Janosch2 » 21.06.2005 11:16 • Verfasst in Web Application Server
5
Antw.
3152
Views
Transaktion aufrufen
von phil1982 » 13.09.2007 14:12 • Verfasst in ABAP® für Anfänger

Über diesen Beitrag


Unterstütze die Community und teile den Beitrag für mehr Leser und Austausch

Newsletter Anmeldung

Keine Beiträge verpassen! Wöchentlich versenden wir lesenwerte Beiträge aus unserer Community.
Die letzte Ausgabe findest du hier.
Details zum Versandverfahren und zu Ihren Widerrufsmöglichkeiten findest du in unserer Datenschutzerklärung.