Ansicht
Dokumentation
ABAPINSERT_TARGET - INSERT TARGET
ABAP Short Reference BAL_S_LOG - Application Log: Log header dataDiese Dokumentation steht unter dem Copyright der SAP AG.
INSERT dbtab - target
Syntax
... {dbtab|(dbtab_syntax)} [CLIENT SPECIFIED]
[CONNECTION {con|(con_syntax)}] ... .
Alternativen:
1. ... dbtab
2. ... (dbtab_syntax)
Zusatz:
Wirkung
Die Angaben in target legen statisch oder dynamisch fest, auf welche
Datenbanktabelle bzw. welchen
View zugegriffen wird, und regeln die
Mandantenbehandlung.
Alternative 1
... dbtab
Wirkung
Für dbtab kann eine im ABAP Dictionary definierte Datenbanktabelle oder ein im ABAP Dictionary definierter View angegeben werden.
Es können nur Views angegeben werden, die sich auf eine einzige Datenbanktabelle beziehen und deren Pflegestatus im ABAP Dictionary ändernde Zugriffe erlaubt.
Alternative 2
... (dbtab_syntax)
Wirkung
Statt der statischen Angabe kann ein eingeklammertes Datenobjekt dbtab_syntax angegeben werden,
das bei Ausführung der Anweisung den Namen der Datenbanktabelle bzw. des Views enthalten muss. Für das Datenobjekt dbtab_syntax kann ein zeichenartiges Datenobjekt oder eine
Standardtabelle ohne
sekundäre
Tabellenschlüssel mit zeichenartigem Zeilentyp angegeben werden. Die Syntax in dbtab_syntax ist wie im ABAP Editor unabhängig von Groß- und Kleinschreibung.
Zusatz
... CLIENT SPECIFIED
Wirkung
Dieser Zusatz schaltet die automatische Mandantenbehandlung von Open SQL ab. Bei Verwendung des Zusatzes CLIENT SPECIFIED wird die in source angegebene Mandantenkennung berücksichtigt. Ohne den Zusatz CLIENT SPECIFIED übergibt die ABAP-Laufzeitumgebung nicht die in source angegebene Mandantenkennung an das Datenbanksystem, sondern die Kennung des aktuellen Mandanten.
Hinweis
Da jeder Mandant eine in sich abgeschlossene Einheit darstellt, sollte die automatische Mandantenbehandlung in Anwendungsprogrammen nie abgeschaltet werden. Auf Systemen mit Multitenancy wird dies von der ABAP-Laufzeitumgebung zugesichert.
-
Der Zusatz CLIENT SPECIFIED kann nicht verwendet werden, wenn eine Subquery als Datenquelle verwendet wird.
Beispiel
Die beiden folgenden INSERT-Anweisungen haben die gleiche Wirkung. Die erste Anweisung verwendet den Zusatz USING CLIENT und zeigt damit die empfohlene Variante, auf einen bestimmten Mandanten zuzugreifen. Die zweite Anweisung schaltet dagegen mit CLIENT SPECIFIED die automatische Mandantenbehandlung ab und muss deshalb das Mandantenfeld im übergebenen Arbeitsbereich mit dem gewünschten Wert füllen.
DELETE FROM demo_expressions USING CLIENT '800'.
INSERT demo_expressions USING CLIENT '800'
FROM @( VALUE #( id = 'X' num1 = '555' ) ).
DELETE FROM demo_expressions CLIENT SPECIFIED WHERE mandt = '800'.
INSERT demo_expressions CLIENT SPECIFIED
FROM @( VALUE #( mandt = '800' id = 'X' num1 = '555' ) ).
Beispiel
Mit dem Zusatz USING CLIENT hinter INSERT werden zwei Spalten einer Datenbanktabelle mit drei Zeilen für den Mandanten 100 gefüllt. Danach werden diese Zeilen über die Angabe von USING CLIENT in einer Subquery in den aktuellen Mandanten kopiert.
DELETE FROM demo_expressions.
DELETE FROM demo_expressions USING CLIENT '100'.
INSERT demo_expressions USING CLIENT '100'
FROM TABLE @( VALUE #( ( id = 'X' num1 = 1 )
( id = 'Y' num1 = 2 )
( id = 'Z' num1 = 3 ) ) ).
INSERT demo_expressions FROM
( SELECT * FROM demo_expressions USING CLIENT '100' ) ##NULL_VALUES.
SELECT id, num1
FROM demo_expressions
INTO TABLE @DATA(itab).
SELECT id, num1
FROM demo_expressions USING CLIENT '100'
INTO TABLE @DATA(itab_100).
ASSERT itab = itab_100.
Fill RESBD Structure from EBP Component Structure RFUMSV00 - Advance Return for Tax on Sales/Purchases
Diese Dokumentation steht unter dem Copyright der SAP AG.
Length: 6756 Date: 20240419 Time: 195947 sap01-206 ( 76 ms )