Es ist möglich per Pointer auf globale Variablen eines anderen Programmes bzw. einer Funktionsgruppe direkt zuzugreifen.
Damit ist es möglich, SAP-FB´s gezielt mit Daten zu versorgen, ohne den gesamten Kontext verstehen zu müssen.
Das Programm/die Funktionsgruppe muss vor dem Zugriff mindestens einmal aufgerufen worden sein (z.B. durch Dummy-Aufruf eines zugeordneten Funktionsbausteins).
Der Zugriff erfolgt dann über Pointer:
(Coding)
* Definieren einer lokalen Struktur mit Typ auf Wunschstruktur des Fremdprogrammes
data: ls_data type ext_prog_struc.
* Pointer zum Zugriff auf externe Daten
field-symbols: <pointer_2_foreign_prog_struc>.
...
* Eventuell ist hier ein (Dummy-)Aufruf eines Funktionsbausteines bzw. eine Transaktion oder eines Programmes aus der betroffenen Funktionsgruppe/Kontext nötig, damit die externe Variable im Rollbereich angelegt wird und somit zugegriffen werden kann.
...
* Zuweisung der Variablen ?VARIABLE? des Fremdprogrammes ?SAPLXXXX? zu Pointer
assign (?(SAPLXXXX)VARIABLE?) TO <pointer_2_foreign_prog_struc>.
* Zugriff auf Inhalt der Fremdvariable über Pointer
ls_data = <pointer_2_foreign_prog_struc>.
write:/ ls_data-number.
Viel Spass damit.
N.