tati hat geschrieben:bitte, bitte hilft mir
ich muss aus einem unterprogramm im SAP
einen remote fähigen funktionsbaustein erzeugen/anlegen.
das Problem ist, dass ich in diesem Unterprogramm nur
referenzen auf klassen und interfaces verwende.
wenn ich jetzt diese referenzen unter IMPORT/Export/tables eingeben möchte, dann geht es nicht, da man bei einem RFC-Baustein nur die werteparameter verwenden darf.
wie muss ich vorgehen?
danke.

Hallo tati,
wie Du schon gemerkt hast, sind Referenzen auf Klassen und Daten (REF TO DATA) bei einem remotefähigen FB nicht möglich. Das liegt daran, dass die Referenzen eine SAP-spezifische Form haben, die nicht zwingend vom einem Aufrufer zur Verfügung gestellt werden kann. Im Besonderen müssten Methodenaufrufe an das aufrufende System zurückübermittelt werden, da sich ja die Instanz nicht im eigenen System befinden würde.
Um Klassen in dieser Form zu übergeben, müsstest Du eine Serialisierung der Klassendaten vornehmen, so dass die Daten in (lesbarer ?!?) Form vorliegen. Im RFC-FB ist dann eine Instanz dieser Daten anzulegen, wobei mir leider keine Funktionen bekannt sind (was nicht heißt, dass es keine gibt), die dies im R/3-Umfeld eine Serialisierung anbieten.
(im Java-Umfeld hatte ich so etwas mal gemacht...)
Weiterhin ist auch zu bedenken, dass Aktionen (Methodenaufrufe) die Instanz ändern können und diese Änderungen an den Aufrufer zurückübermittelt werden müssen, um konsistente Daten zu behalten.
Möglicherweise ist es am einfachsten, die Klassendaten in eine (tiefe) Struktur zu packen und die Struktur zu übergeben.
Die Namen der Klassen und Interfaces lassen sich ja übergeben, so dass Du diese dynamisch anlegen könntest, was aber auch nicht trivial ist.