sapdev logo background
sapdev logo sapdev logo
Comments

SAP SHM CL ABAP MEMORY AREA documentation, setup help and example usage



Return to SAP documentation index


ARTICLE

Shared Objects - CL_ABAP_MEMORY_AREA
The CL_ABAP_MEMORY_AREA class is the common superclass of all area classes. It contains general methods for area handles .

Static Methods

GET_HANDLE_BY_OREF
Gets the area handle for an instance of a class. The instance can be in the shared memory or within the internal session.

Input parameter
  • OREF of type REF TO object

  • Reference to the instance of a class.

    Return value
  • HANDLE of type REF TO cl_abap_memory_area

  • Reference to the area handle of the corresponding area instance version. Typing means that essentially this reference is only suitable for creating objects.

    GET_HANDLE_BY_DREF
    Gets the area handle for a data object. The data object can be in the shared memory or within the internal session.

    Input parameter
  • DREF of type REF TO data

  • Reference to a data object in the shared memory.

    Return value
  • HANDLE of type REF TO cl_abap_memory_area

  • Reference to the area handle of the corresponding area instance version. Typing means that essentially this reference is only suitable for creating objects.

    GET_HANDLE_BY_DATA
    Gets the area handle for a data object. The data object can be in the shared memory or within the internal session.

    Input parameter
  • DATAOBJECT of type any

  • Data object in the shared memory. This can be specified as a field symbol, for example, which refers to a dereferenced data object in the shared memory.

    Return value
  • HANDLE of type REF TO cl_abap_memory_area

  • Reference to the area handle of the corresponding area instance version. Typing means that essentially this reference is only suitable for creating objects.

    Instance Methods

    IS_SHARED
    Checks whether the area handle represents an area instance version in the shared memory, or whether it represents the current internal session.

    Return value
  • SHARED of type ABAP_BOOL

  • ABAP_TRUE if an area instance version is represented in the shared objects memory, and ABAP_FALSE if the current internal session is represented.

    IS_VALID
    Checks whether the area handle can be used to access an area instance version in the shared memory, or whether the current internal session is accessed.

    Return value
  • VALID of type ABAP_BOOL

  • ABAP_TRUE if the area handle is used to access an area instance version or the current internal session; otherwise ABAP_FALSE .

    IS_ACTIVE_VERSION
    Checks whether the area handle refers to the active area instance version.

    Return value
  • ACTIVE_VERSION of type ABAP_BOOL

  • ABAP_TRUE if the current area instance version or the internal session is represented. ABAP_FALSE if an obsolete area instance version is represented, the area handle was already released, or if it is a change handle.

    HAS_ACTIVE_PROPERTIES
    Checks whether the area�s current dynamic properties match the properties of the area instance version that is represented:

    Return value
  • ACTIVE_PROPERTIES of type ABAP_BOOL

  • ABAP_TRUE if the area�s dynamic properties have not been changed since the current area instance version was built, or if the current internal session is represented. Otherwise, or if the area handle was already released, ABAP_FALSE .

    GET_DETACH_INFO
    Determines the reason for an invalid area handle.

    Return value
  • DETACH_INFO of type SHM_DETACH_INFO

  • The return value can be compared with one of the following constants of class CL_ABAP_MEMORY_AREA .
  • DETACH_INFO_NOT_DETACHED


  • The area handle is still valid. This value is also returned if a commit fails but no rollback has yet been performed. This value is also returned if the current internal session is represented.
  • DETACH_INFO_HANDLE


  • The shared lock or exclusive lock was released explicitly using one of the methods DETACH_COMMIT or DETACH_ROLLBACK .
  • DETACH_INFO_AREA


  • The read or change lock was released by one of the DETACH_AREA or
    DETACH_ALL_AREAS methods.
  • DETACH_INFO_ATTACH


  • The read lock was released by the ATTACH_FOR_WRITE method, and the constant CL_SHM_AREA= ATTACH_MODE_DETACH_READER was passed to the ATTACH_MODE parameter.
  • DETACH_INFO_INVALIDATE


  • The shared lock was released using an INVALIDATE_... method, and the ABAP_TRUE constant was passed to the TERMINATE_CHANGER
    parameter.
  • DETACH_INFO_PROPAGATE


  • The change lock was released by a PROPAGATE_... method.
  • DETACH_INFO_FREE


  • The shared lock or exclusive lock was released using a FREE_... method.
    Documentation extract taken from SAP system, � Copyright SAP AG. All rights reserved




    SHM_CLASSES
    SHM_CL_IMODE_AREA




    comments powered by Disqus