Die Anwendung erfordert es, dass ich einen bestimmten Funktionsbaustein in einer neuen Session rufe, weil dieser sonst globale Variable löscht, die die Hauptanwendung aber noch braucht - BDT-Funktionen.
Gelöst habe ich das, mit dem Aufruf des Fuba mit DESTINATION 'NONE'. Mein Kollege meinte nun, dass geht aber nicht, weil man dann die Berechtigung von den Usern erweitern muss, damit diese RFC-FuBa's im Code aufrufen dürfen.
Nun habe ich in der ST01 mal einen Berechtigungstrace mitlaufen lassen. Es erscheint aber kein konkretes Berechtigungsobjekt, welches geprüft wurde.
Findet eine solche Berechtigungsprüfung überhaupt statt?
Oder eigentlich bei DESTINATION 'NONE' nicht, weil ich das System ja nicht verlasse?
Ich könnte mir jetzt einen Nutzer schaffen und diese nach und nur die maximal erforderlichen Berechtigungen geben. Eure Antwort ist aber kürzer....
Hört sich nach einem Anwendungsfall für Klassen mit Instanzmethoden an. Das ist der ungemeine Vorteil von Objektorientierung. Ich kann meine Attribute oder globalen Variablen wie man sie auch nennen mag, mehrfach vorhalten und sie beeinflussen sich nicht gegenseitig.
P.s. für den Aufruf von RFC-Bausteinen wird im Regelfall das Berechtigungsobjekt S_RFC benötigt. Kann natürlich sein, dass dieses bei der Destination 'NONE' nicht zum tragen kommt. Lege doch einfach mal Benutzer im Testsystem an ohne das Berechtigungsobjekt S_RFC und probier mal ob es dumpt.