Ansicht
Dokumentation

RSDRI_ODSO_UPDATE_RFC - Ändert Datensätze in einem transaktionalen ODS-Objekt (RFC version)

RSDRI_ODSO_UPDATE_RFC - Ändert Datensätze in einem transaktionalen ODS-Objekt (RFC version)

ROGBILLS - Synchronize billing plans   SUBST_MERGE_LIST - merge external lists to one complete list with #if... logic for R3up  
Diese Dokumentation steht unter dem Copyright der SAP AG.
SAP E-Book

Funktionalität

Dieser Funktionsbaustein bekommt als Übergabeparameter den technischen Namen des DataStore-Objektes . Für die Datenübergabe wird die generische Tabelle mit den neuen/geänderten Sätzen verwendet.

Es wird geprüft, ob das DataStore-Objekt ein DataStore-Objekt für direktes Schreiben ist. Danach werden die übergebenen Daten aus dem 250 bytes-Format in die Struktur des DataStore-Objekts konvertiert und in das Objekt eingefügt. Die Anzahl der eingefügten Datensätze wird zurückgegeben (e_numrows). Im Falle eines Fehlers im Ablauf wird die entsprechende Ausnahme zurückgegeben.

Beispiel

Hinweise

Die Datenübergabe mit dem Parameter I_RFCDATA_UC müssen Sie insbesondere dann einsetzen, wenn gepackte Datenformate im DataStore-Objekt verwendet werden (INT4, Float, ...), da es hier bei der Übergabe mit Hilfe der internen Tabelle zu Konvertierungsfehlern kommen kann.

Dazu müssen Sie die Daten in eine Tabelle mit der Struktur des DataStore-Objekts laden. Danach müssen die Daten folgendermassen exportiert werden:

EXPORT rsdri = TO DATA BUFFER

rsdri ist hierbei eine Konstante, die verwendet werden MUSS. Die Objekte in den Klammern sind zum einen die Tabelle, die mit den Daten gefüllt wird, und zum anderen die XString Variable, an die die Daten übergeben werden.

Um Daten in einem DataStore-Objekt zu ändern, müssen Sie die Werte aller InfoObjects in der DataStore-Objekt-Struktur übergeben, nicht nur die, die sich geändert haben. Damit wird also jeder Satz im DataStore-Objekt, durch seinen Primärschlüssel eindeutig indentifizierbar, durch einen neuen Datensatz ersetzt.

Die Tabelle I_T_DATA besitzt eine flache 250 Byte lange Struktur. Die Daten sind im Feld DATA abzulegen. Ist die Struktur der DataStore-Objekt-Tabelle länger als 250 bytes, dann werden zusätzlichen Zeilen benötigt; das Feld CONTINUATION sollte in der ersten Zeile leer sein, und für jede weitere Zeile mit einem X markiert sein.

Daten werden entweder vollständig akzeptiert oder vollständig abgelehnt. Sie müssen daher die Richtigkeit der Daten sicherstellen und besonders darauf achten, dass die Struktur der Daten mit der Struktur der DataStore-Objekt-Tabelle genau übereinstimmt. Sonst kann es zu SQL-Fehlern kommen, zu Exceptions oder dazu, dass die Daten im falschen Format übergeben werden.

Da ein DataStore-Objekt für direktes Schreiben oft mit neuen Daten versorgt wird, muss das Sperrmanagement im aufrufenden Programm implementiert worden sein. Zum Beispiel könnten Sie für schnelle, kleine Änderungen keine Sperre implementieren (außer auf Datenbankebene), dafür aber für länger dauernde und umfangreichere Änderungen.

Weitere technische Hinweise:

Der RFC-fähige Funktionsbaustein RSDRI_ODSO_UPDATE_RFC verwendet den lokalen Funktionsbaustein RSDRI_ODSO_UPDATE.

Für remote-Aufrufe sollten Sie den Funktionsbaustein RSDRI_ODSO_UPDATE_RFC verwenden. Für lokale Aufrufe sollten Sie den Funktionsbaustein RSDRI_ODSO_UPDATE verwenden, so dass Datenkonvertierungen vor und nach dem Aufruf gespeichert werden, und eine bessere Performance gegeben ist.

Weiterführende Informationen





Parameter

E_NUMROWS
I_AUTHORITY_CHECK
I_ODSOBJECT
I_RFCDATA_UC
I_TRIGGER_SMARTMERGE
I_T_DATA

Ausnahmen

ACTIVE_TABLE_NAME_NOT_FOUND
ARRAY_UPDATE_FAILED
DATA_TARGET_NOT_ODS
INTERNAL_ERROR
ODS_TYPE_NOT_TRANSACTIONAL
RECORD_KEY_DOES_NOT_EXIST

Funktionsgruppe

RSDRI_ODSO

Addresses (Business Address Services)   rdisp/max_wprun_time - Maximum work process run time  
Diese Dokumentation steht unter dem Copyright der SAP AG.

Length: 4528 Date: 20240605 Time: 072153     sap01-206 ( 89 ms )