Ansicht
Dokumentation

ABENCLIENT_HANDLING_GUIDL - CLIENT HANDLING GUIDL

ABENCLIENT_HANDLING_GUIDL - CLIENT HANDLING GUIDL

SUBST_MERGE_LIST - merge external lists to one complete list with #if... logic for R3up   BAL Application Log Documentation  
Diese Dokumentation steht unter dem Copyright der SAP AG.
SAP E-Book

Mandantenbehandlung

Ein Mandant kennzeichnet einen Datenbereich auf der Datenbank eines AS ABAP, der unabhängige Anwendungsdaten enthält. Die Anwendungsdaten verschiedener Mandanten nutzen zwar dieselben Datenbanktabellen, sind in diesen aber durch ihre dreistellige Mandantenkennung bezeichnet.

Bei der Anmeldung an einen AS ABAP muss die Mandantenkennung angegeben werden, um den Mandanten auszuwählen, mit dessen Daten die Benutzersitzung arbeiten soll. Der aktuelle Mandant kann dem Systemfeld sy-mandt entnommen werden.

  • -Anweisungen arbeiten mit einer impliziten Mandantenbehandlung, bei der standardmäßig auf die Daten des aktuellen Mandanten zugegriffen wird. Dies geschieht dadurch, dass WHERE-Bedingungen eine implizite Bedingung für den aktuellen Mandanten enthalten und dass Mandanten, die bei ändernden Anweisungen in Arbeitsbereichen angegeben sind, nicht berücksichtigt werden. Die implizite Mandantenbehandlung von kann mit dem Zusatz USING in Queries oder mit den Zusätzen USING oder CLIENT SPECIFIED in ändernden Anweisungen auf einen oder mehrere anderen Mandanten umgestellt werden.
  • Native SQL und AMDP führen keine implizite Mandantenbehandlung durch. Bei einem Zugriff über Native SQL oder AMDP auf mandantenabhängige Datenbanktabellen oder Views muss der gewünschte Mandant explizit selektiert werden.

Nicht auf die Daten anderer Mandanten zugreifen

Greifen Sie in den Persistenz-Services von betriebswirtschaftlichen Anwendungen ausschließlich auf die Daten des aktuellen Mandanten zu.

Jeder Mandant innerhalb des AS ABAP soll als abgeschlossene Einheit betrachtet werden. Die Zusätze USING CLIENT und CLIENT SPECIFIED sollen in -Anweisungen betriebswirtschaftlicher Anwendungen nicht verwendet werden. Bei der Verwendung von Native SQL oder AMDP soll dort nur der aktuelle Mandant selektiert werden.

In der Regel ist auch keine Auswertung des Systemfeldes sy-mandt nötig, außer es wird über Native SQL oder AMDP auf mandantenabhängige Datenbanktabellen oder Views zugegriffen. Dann wird die Mandantenkennung benötigt, um explizit die Daten des aktuellen Mandanten zu selektieren.

Hinweise

  • Mandantenunabhängige Datenbanktabellen, das heißt Tabellen ohne Mandantenkennung, sind in der Regel Systemtabellen. Der mandantenübergreifende Zugriff auf solche Tabellen ist damit auch Systemprogrammen vorbehalten.
  • Der Zusatz CLIENT SPECIFIED ist in Queries vollständig obsolet und in ändernden Anweisungen teilweise obsolet.

Folgender Quelltext zeigt einen -Zugriff auf Anwendungsdaten, bei dem die implizite Mandantenbehandlung auf einen anderen Mandanten umgestellt wird.

SELECT SINGLE ...
       FROM scarr USING '...'
       WHERE ...             ...
       INTO ...

Folgender Quelltext zeigt die gewünschte Verwendung von , bei der die implizite Mandantenbehandlung standardmäßig auf den aktuellen Mandanten zugreift..

SELECT SINGLE ...
       FROM scarr
       WHERE ...
       INTO ...






General Material Data   Fill RESBD Structure from EBP Component Structure  
Diese Dokumentation steht unter dem Copyright der SAP AG.

Length: 4431 Date: 20240523 Time: 155531     sap01-206 ( 74 ms )