Das Notes Forum

Sonstiges => Offtopic => Thema gestartet von: y20frank am 18.01.05 - 20:50:17

Titel: SAP <> Lotus Notes per RFC Baustein
Beitrag von: y20frank am 18.01.05 - 20:50:17
Hallo zusammen!

Ich versuche mich seit Tagen an diversen Scripten, die sich auf SAP RFC Bausteine stürtzen und Daten aus SAP Tables auslesen sollen. Ist kein "Muss-sein", aber es interessiert mich halt, wie das so funktioniert.

So, nach einigen Erfolgen bin ich aber nun an einer Stelle, an der ich nicht weiter komme:  :P  Hat jemand schon mal Erfahrung mit dem SAP-RFC-Baustein "TABLE_ENTRIES_GET_VIA_RFC" und Lotus Notes gemacht? Mit dem Baustein kann man ja prima SAP-Tables auslesen. Ein VBA-Excel-Coding habe ich dazu zwar vorliegen, das auch prima funktioniert ( http://www.vbip.com/forum/attachment/17018.zip ) , aber ich schaffe es nicht das so in Lotus Script ein(um-)zubauen, dass es funktioniert... 
Habe den Fehler "Instance member ADD does not exist" bei

Code
Set MyFunc = R3.Add("TABLE_ENTRIES_GET_VIA_RFC")
Set oParam1 = MyFunc.exports("LANGUE")
Set oParam2 = MyFunc.exports("ONLY")
Set oParam3 = MyFunc.exports("TABNAME")
Set oParam4 = MyFunc.Tables("SEL_TAB")
oParam1.Value = "DE"
oParam2.Value = ""
oParam3.Value = "Y_TABLE"
' --- ### Bang Bang ###
oParam4.Rows.Add ' <-- Hier knallt's mit og Fehlermeldung !! ?? ---
oParam4.Value(1, "ZEILE") = "NAME like 'Suchstring%'"

SAP Connection steht, SAP RFC wird aufgerufen, alle Parameter bis auf Row.Add funktionieren... Hm, Denkblokade?!

Ist zwar ein etwas "extentrisches Thema" glaube ich, aber wer dennoch Lust hat zu helfen... Danke!  :)

Titel: Re: SAP <> Lotus Notes per RFC Baustein
Beitrag von: y20frank am 19.01.05 - 12:41:26
Soooo, OK: ich hab's dennoch hinbekommen (ein kleiner Blick in die Doku "Domino Integration Technologies for SAP R/3" hat mich auf den richtigen Weg gebracht. Anbei der Code-Ausschnitt, falls es jemanden interessieren sollte - so funzt es jedenfalls prima!

Code
	' ----- SAPConnect & SAPLogon (aus Profildokument holen)
	If config() Then 
		Continue=False ' ansonsten ist ende
		Exit Sub
	End If
	If connectionSAP()  Then 
		Continue=False ' ansonsten ist ende
		Exit Sub
	End If
	Print "Login " & SAPServer(0)
	
	Dim MyFunc As RfcFunction
	
	FuncName="TABLE_ENTRIES_GET_VIA_RFC"
	Set MyFunc = New RfcFunction(objServer, FuncName )
	
	If MyFunc.message <> "" Then
		Msgbox MyFunc.message
		Exit Sub
	End If
	
	' ----------------------------------------------------------------
	' Selektion im RFC Baustein:
	' SELECT * FROM (TABNAME) INTO TABLE TABENTRY WHERE (SEL_TAB)
	' ----------------------------------------------------------------
	
	Set oParam1 = MyFunc.Exports("LANGU")
	Set oParam2 = MyFunc.Exports("ONLY")
	Set oParam3 = MyFunc.Exports("TABNAME")
	Set oParam4 = MyFunc.Tables("SEL_TAB")
	
	oParam1.Value = "DE"
	oParam2.Value = ""
	oParam3.Value = "Y20ST"
	Set curRow = oParam4.Rows.InsertRow
	curRow.ZEILE = "ORTSNAME NOT LIKE 'Dortmund%'"
	
	If MyFunc.Call = True Then
		Set NAMETAB = MyFunc.Tables("NAMETAB")
		Set SEL_TAB = MyFunc.Tables("SEL_TAB")
		Set TABENTRY = MyFunc.Tables("TABENTRY")	
	Else
		Messagebox "Call failed! Error: " & MyFunc.Message
		Call objServer.Logoff
		Exit Sub
	End If	
	
	iColumn = 1
	
	Set tbl = MyFunc.Tables("TABENTRY")
	Forall rowtbl In tbl.Rows
		Print rowtbl.ENTRY
	End Forall
	
	Set MyFunc = Nothing
	Call objServer.Logoff
	Print "Logoff from " & SAPServer(0)
Titel: Re: SAP <> Lotus Notes per RFC Baustein
Beitrag von: Marinero Atlántico am 19.01.05 - 12:52:37
Danke.

Kleiner Hinweis, der mir beim Überfliegen aufgefallen ist:

Code
If connectionSAP()  Then
Continue=False ' ansonsten ist ende
Exit Sub
End If
Tu dir selbst den Gefallen und geb dort eine Fehlermeldung aus.
So beendet sich das still und leise.

Bei Zugriff auf externen Ressourcen würde ich auch immer NotesLogging benutzen.

Gruss Axel

Titel: Re: SAP <> Lotus Notes per RFC Baustein
Beitrag von: y20frank am 19.01.05 - 16:03:48
Zitat
Tu dir selbst den Gefallen und geb dort eine Fehlermeldung aus.

Danke für den Hinweis, das mache ich!  :)
Titel: Re: SAP <> Lotus Notes per RFC Baustein
Beitrag von: Marinero Atlántico am 19.01.05 - 17:22:56
Danke für den Hinweis, das mache ich!  :)
Und schreibe es wirklich besser in eine Log-Datenbank (Notesklasse NotesLog oder so ähnlich. Im GoF Thread gibts da auch ein paar irgendwie nicht so ausgereifter Klassen für.
Verbindungen können schnell mal ausfallen.
Und über print in die log.nsf seilen schon ALLE ANDEREN die Log-Bobs ihrer brilliant-geskripteten Machwerke ab. Das nimmt kein vernünftiger Administrator mehr wirklich ernst.

Axel
Titel: Re: SAP <> Lotus Notes per RFC Baustein
Beitrag von: eknori am 19.01.05 - 17:28:54
oder wg. LOG guckst du http://www.atnotes.de/index.php?topic=3043.0
Titel: Re: SAP <> Lotus Notes per RFC Baustein
Beitrag von: y20frank am 19.01.05 - 19:27:20
Danke für die Infos Axel und Ulrich... !  :)

Also, einene Log-Datenbank habe ich bereits, die mit der NotesLog-Klasse auch aus anderen DBs ordentlich gefüllt wird.  ;)

Das Script ist ja auch "nur" eine Testversion, so dass ich zunächstmal die grundsätzlichen Dinge damit zum Laufen bringen will. Außer meiner Wenigkeit nutzt erstmal kein anderer User das Teil.

Loggen, Error-Handles etc. kommt dann natürlich rein, sobald das Ding (spötöstöns) für die breitere Masse publik wird (vor allem muss ja auch die entsprechende ScriptExtension auch auf allen Rechnern verbreitet sein...).
Titel: Re: SAP <> Lotus Notes per RFC Baustein
Beitrag von: y20frank am 19.01.05 - 19:51:44
oder wg. LOG guckst du http://www.atnotes.de/index.php?topic=3043.0

Hey, das Ding ist ja cool!  8) Da werd ich mir mal genauer anschauen. Super-Tipp! Thänx!  :)  :)
Titel: Re: SAP <> Lotus Notes per RFC Baustein
Beitrag von: Marinero Atlántico am 20.01.05 - 12:26:53
... jedenfalls habe ich hier wieder bei so einem übernommenen Projekt festgestellt, dass solche Skripte hier zum Bleistift besser wären als die suppa-Enterprise L E I  Lösung.  >:(
Und ich denke, ich weiss was ich hier tue.
Wie du weisst, ist es bei den Skripten wichtig selbst so Sachen wie einfache KOnfiguration, Logging, etc. dabei zu programmieren.

Nur ist es ein gewaltiger Irrtum, zu glauben, dass LEI "alles ganz einfach" macht. Es gibt nämlich Fälle wo LEI ein Talent hat, alles ganz schwierig zu machen.  >:(

Gruß Axel
Titel: Re: SAP <> Lotus Notes per RFC Baustein
Beitrag von: y20frank am 20.01.05 - 20:40:37
Hallo Axel!
Zum Glück bin ich mit diesem Script noch auf der "glücklicheren" Seite - es verändert keinerlei Datenirgendwo, sondern dient lediglich zum Auslesen von Tabellen. Trotzdem logge ich etwas mit. Sollte das Teil aber mal tatsächlich dazu genutzt werden, auch im SAP Tables upzudaten, dann werd ich jedes Bit loggen...

Zitat
Es gibt nämlich Fälle wo LEI ein Talent hat, alles ganz schwierig zu machen.

Übrungs: Das Talent hat SAP auch... (ich glaube sogar, die ham es erfunden)  ;D
Titel: Re: SAP <> Lotus Notes per RFC Baustein
Beitrag von: eknori am 20.01.05 - 20:46:00
Zitat
Sollte das Teil aber mal tatsächlich dazu genutzt werden, auch im SAP Tables upzudaten

iiiiiieeeeek !!!  :o Schaue mir in die Augen @@@ ... ganz tief @@@ ... du wirst niemals Daten in einem SAP System über RFC und eigengestrickten Notes Code ändern ... ... ... @@@ . Ich zähle jetzt von drei rückwärts ... 3 2 ... 1 ... du öffnest die Augen  8)
Titel: Re: SAP <> Lotus Notes per RFC Baustein
Beitrag von: koehlerbv am 20.01.05 - 20:56:49
Ich befürchte, in so einem Fall würde auch das Teeren und Federn fröhliche Urständ feiern  ;D

Bernhard
Titel: Re: SAP <> Lotus Notes per RFC Baustein
Beitrag von: eknori am 20.01.05 - 20:59:13
... habe den Teerkocher schon angeheizt; warte mal gerade ... "komm putt,putt,putt, Hühnchen komm her "  ;D
Titel: Re: SAP <> Lotus Notes per RFC Baustein
Beitrag von: koehlerbv am 20.01.05 - 21:01:46
Aber halt, Ulrich - die alte Regel heisst doch: Es entgeht derjenige der furchtbaren und schrecklichen Strafe, der alle SAP-RFC-Namen alphabetisch aus dem Kopf repitieren kann. Eine Chance ist also noch  ;D

Bernhard
Titel: Re: SAP <> Lotus Notes per RFC Baustein
Beitrag von: y20frank am 20.01.05 - 21:06:38
Brrrr, Leute... es geht mir in erster Linie NUR um's Auslesen von SAP Tabellen... updaten habe ich nicht geplant und werde ich auch nicht forcieren, initiieren oder programmieren.

Zitat
Ich zähle jetzt von drei rückwärts ... 3 2 ... 1 ... du öffnest die Augen
Ja ja jaaa, du hast ja Recht...  :P  ;D *blinzel*
Titel: Re: SAP <> Lotus Notes per RFC Baustein
Beitrag von: eknori am 20.01.05 - 21:11:10
Kehren wir mal wieder zum Ernst der Lage zurück.
Sicherlich gibt es Situationen, wo man per RFC auf die Datenbank von SAP lesend zugreift, um Informationen , die dort gepflegt sind auch im Notes zur Verfügung zu stellen.

Man sollte sich nix vormachen; ist SAP im Hause, ist und bleibt SAP das führende System; daher werden die Daten auch nur dort verändert. Und das ist auch gut so !

Ich käme nie auf die Idee, eine Massendatenpflege via Notes ins SAP zu schießen; dafür gibt es CATT.

Lesen: JA; schreiben : NIE !!

Es sei denn, man kennt sich mit BAPi SUPER-GUT aus  ;)
Titel: Re: SAP <> Lotus Notes per RFC Baustein
Beitrag von: koehlerbv am 20.01.05 - 21:13:32
Naja, updaten darfst Du ja auch, Frank - aber nicht via RFC und nicht ohne wirkliche Fachleute an Deiner Seite (keine Notes-Fuzzies) und zahlreichen Unterschriften nach 'zig Prüfungen - und BAPI :)

Notes und SAP - das geht schon. Nur ist es kein Spaziergang. Aber das weisst Du.

Bernhard  ;)
Titel: Re: SAP <> Lotus Notes per RFC Baustein
Beitrag von: y20frank am 20.01.05 - 21:19:40
Hi Bernhard. Ja sicher weiß ich dass... hab erstmal nur in meiner Planung: Auslesen und Daten notesseitig weiterverwursten. Das ist halt erstmal ein "Kennenlernen" von Notes, SAP und Frank...
Alles andere kommt nicht in Frage! Fachleute für einen anderen Fall hätte ich aber dann schon an der Hand...
~~~~~
Mir ist schwummerig, ich glaube Ulrich hat mich noch nicht ganz aus dem Trance zurückgeholt. Mein Gott, der hat aber auch Augen...  ;-)
~~~~~
Titel: Re: SAP <> Lotus Notes per RFC Baustein
Beitrag von: koehlerbv am 20.01.05 - 21:23:07
Wie ich schon sagte - ich weiss, dass Du das weisst, Frank  ;)

Aber den Fred wird irgendwann auch mal ein anderer lesen, vielleicht so ein "Wo-steht-das-Klavier"-Typ. Daher ... Frank, Urlich: Ich denke, wir treffen uns dann zur "Fröhliches Teeren und Federn"-Party, oder ?  ;D

Bernhard

Titel: Re: SAP <> Lotus Notes per RFC Baustein
Beitrag von: y20frank am 20.01.05 - 21:32:38
Also ich komme dann... Gibt's dann auch ein leckeres Pott's Landbier... ??? Hey, und Ulrich könnte doch dazu wieder Frikadellen braten...  ;D
Titel: Re: SAP <> Lotus Notes per RFC Baustein
Beitrag von: koehlerbv am 20.01.05 - 21:38:53
Kommt ja immer drauf an, wo der "Wo-steht-das-Klavier"-Typ wohnt. Vielleicht müssen wir dann Lübser oder Dessower oder Hacker-Pschorr trinken ... Hauptsache, es dreht nach dem Gemetzel  ;D

Bernhard (ausgesprochener Gegner der "Wo-steht-das-Klavier"-Typen)
Titel: Re: SAP <> Lotus Notes per RFC Baustein
Beitrag von: eknori am 20.01.05 - 21:47:25
Zitat
zur "Fröhliches Teeren und Federn"-Party, oder ? 

klaro, sobald ich den Kopf wieder frei habe  ;D

@Frank:

@@@ die Schwere in deinem Körper ist ... "snip" wieder weg ...

 8) Hüpfnose via Forum  8)
Titel: Re: SAP <> Lotus Notes per RFC Baustein
Beitrag von: y20frank am 20.01.05 - 21:50:24
Ich käme nie auf die Idee, eine Massendatenpflege via Notes ins SAP zu schießen; dafür gibt es CATT.

Ich auch nicht Ulrich - insbesondere erst recht nicht bei Massendaten... ;-)

~~~
uuuh, der snip tat gut Ulrich,ich bin schon wieder ganz leicht....  ;D
~~~