Gibt es einen moderneren Ansatz eventuell über OData Services? Wie verhält es sich bei der Übergabe von einander unabhängigen Felder, Strukturen und Tabellen, die an einen FUBA oder einer Methode zur internen Weiterverarbeitung übergeben werden müssen. Wir haben versucht, das ganze über CDS Views und einem anschließenden OData Service (unmanaged Behavior Implementation) zu lösen, kommen da aber nicht weiter.
bisher hatte ich, wenn ein neuer Webservice gefragt war oder ein bestehender Webservice durch einen REST-Service abgelöst werden sollte, OData-Services auf klassischem Wege angelegt (nicht generiert/ohne RAP etc.) nach folgenden Leitlinien:
Alles, was die typischen CRUD-Methoden abbildet, wird über Entitäten und HTTP-Methoden im OData-Service abgebildet. Im einfachsten Fall steht dann hinter der Methode der alte Funktionsbaustein Z_GET_XYZ und es werden lediglich Schlüssel- und Filterwerte auf die Import-Parameter gemappt.
Wo darüber hinaus noch etwas zu tun ist, werden Funktionsimporte gebaut. Dort ist man ja etwas freier mit Importparametern und Rückgabewerten; auch hier stand oft ein Funktionsbaustein hinter dem OData-Service.
Bisher ist mir hierbei noch nichts untergekommen, was gar nicht gepasst hätte, auch wenn das "Übersetzen" natürlich teilweise nicht ganz leicht von der Hand geht.