CL_BCM_CONTROLLER2 - Business shift quota of the controller

General Material Data   ABAP Short Reference  
This documentation is copyright by SAP AG.

Functionality

The class CL_BCM_CONTROLLER (BCM Controller) is the central control unit for the business layer (the application logic) for the configuration management application. In turn:

  • Flags for the ABAP/OO-Framework are set,
  • Transactions are started using:
  • MODIFY_FOLDER: a configuration folder is created, its status is read by the database, and the object reference is transferred to the caller. Changes to this folder can be saved.

  • CREATE_FOLDER_SUCCESSOR: a successor is created for a configuration folder. This can be saved.

  • CREATE_PRODUCT: a new product and an initial configuration folder is created and can be saved.

  • Transactions are stopped by:
  • SAVE: all open transactions (see below) are stopped, and the changes, which were also logged in the transaction, are posted. A system flag specifies whether the update is synchronous or asynchronous.

  • SAVE_SINGLE: the transaction that was open last (and not stopped) is stopped, and the changes are posted.

  • UNDO: all open transactions are stopped, the changes are not posted.

  • UNDO_SINGLE: the transaction that was open last is stopped, the changes are not posted.

  • The issue of configuration management data is started (with GET_FOLDER_AND_PRODUCT),
  • Tables are locked and unlocked.

Relationships

The BCM controller has relationships to system services such as:

  • Persistence manager (if_os_persistency_manager),
  • Transaction manager (if_os_transaction_manager),

as well as to a few objects of its own class and to a few objects from class CL_BCM_WORKLIST. There are no inheritance relationships.

Example

Notes

For methods that start a transaction, there also need to be methods to close them again. A transactiondoes not need to be closed immediately after it has been opened. Methods SAVE and UNDO close all opentransactions. Methods SAVE_SINGLE und UNDO_SINGLE close individual transactions. The *_SINGLE method operates in each case on the transaction that was opened last, not on already closed transactions.

The class is transient and implemented according to the singleton pattern; in other words, there is a maximum of one object for the class. The only way to get an object reference is to call method GET_CLASS_AGENT.

Further information

For the persistence service and the transaction service:



rdisp/max_wprun_time - Maximum work process run time   CPI1466 during Backup  
This documentation is copyright by SAP AG.


Length: 2952 Date: 20120526 Time: 090245     triton ( 112 ms )