Ansicht
Dokumentation

CL_RSDRV_EXTERNAL_IPROV_SRV - Service Klasse für lokale externe (virtuelle) infoprovider

CL_RSDRV_EXTERNAL_IPROV_SRV - Service Klasse für lokale externe (virtuelle) infoprovider

BAL Application Log Documentation   PERFORM Short Reference  
Diese Dokumentation steht unter dem Copyright der SAP AG.
SAP E-Book

Funktionalität

Diese Klasse hilft bei der Implementierung eines lokalen virtuellen Infoproviders, (nach BW -Terminologie inzwischen ebenfalls ein REMOTE Infoprovider) der auf einer beliebigen Datenbanktabelle oder View basiert. Dabei müssen nicht alle in der Datenbanktabelle enthaltenen Felder auch Infoobjekte zugeordnet werden, es müssen auch nicht alle Infoobjekte des Providers eine Entsprechung in der Tabelle enthalten.

Verwendung:

Im Konstruktor wird eine Abbildung der Merkmale und Kennzahlen des Providers zu den Feldnamen der Datenbanktabelle sowie der Name der Tabelle mitgegeben. Nur die in der Mapping-Tabelle enthaltenen Infoobjekte werden auch beim Bau des SQL-Statements berücksichtigt.

Die Lebensdauer des Objekts ist auf einen Zugriff beschränkt. Das bedeutet, immer wenn ein neuer Zugriff erfolgt, muß das Objekt neu instantiiert werden.

Wenn das SQL-Statement nicht mehr selbst modifiziert werden muß, kann die Methode open_cursor verwendet werden, die das SQL Statement aufbaut.

Danach werden mit der Methode fetch_data die Daten paketweise abgeholt und über die Schnittstelle des Providers zurückgegeben. Die Paketgröße wird dem Funktionsbaustein des Infoproviders mitgegeben. Die Methode fetch_datadarf pro Aufruf des Infoproviders nur einmal aufgerufen werden, denn sonst wird der aktuelle Inhalt der Rückgabetabelle e_t_data von den gelesenen Daten überschrieben.

Alternativ dazu können die Bausteine des SQL-Statements über die Methoden build_select_list und build_where_conditions zusammengebaut werden. Diese Bausteine können dann noch verändert werden, um etwa zusätzliche Bedingungen einzufügen, die nicht vom OLAP-Prozessor stammen.

In diesem Fall muß das Lesen der Daten mittels Open-SQL selbst implementiert werden, die Implementierung der Methoden open_cursor und fetch_data kann dann als Vorbild dienen.

In jedem Fall können die Daten vor der Rückgabe natürlich noch beliebig modifiziert werden, falls die Implementierung des Infoproviders dies erfordert.

Beziehungen

Die Klasse CL_RSDRV_REMOTE_IPROV_SRV enthält Services für remote Infoprovider (BAPI-Schnittstelle).

Beispiel

Hinweise

Auf Public - Typen einer Klasse kann von außerhalb der Klasse über Klassenname=>Typname zugegriffen werden. Die Mapping-Tabelle als Parameter des Konstrukturs wird in den lokalen Daten des Infoprovider-Funktionsbausteins mit der Anweisung

DATA:
  l_s_iobj_sid_mapping   TYPE CL_RSDRV_EXTERNAL_IPROV_SRV=>TN_S_IOBJ_SID_MAPPING,
  l_th_iobj_sid_mapping  TYPE CL_RSDRV_EXTERNAL_IPROV_SRV=>TN_TH_IOBJ_SID_MAPPING.

deklariert.

Weiterführende Informationen






General Material Data   BAL Application Log Documentation  
Diese Dokumentation steht unter dem Copyright der SAP AG.

Length: 3546 Date: 20240425 Time: 043309     sap01-206 ( 67 ms )