Configuration of the object collision check
The early object collision detection supports developers to identify problematic constellations during feature driven development. When trying to edit a repository object or customizing that is concurrently modified by another person, the developer is immediately notified by a dialog box.
1. Object comparison
The following approach is used to determine whether a specific object can be safely modified:
Determine the latest transport on the development system containing the current object or a top-level object of the current object.
If the transport request found in step 1 has not yet been released, the object can be edited.
Find the latest transport requests containing the current object on selected remote systems (e.g. development system for maintenance, QA systems and production).
Compare transport request numbers found in step 3 to transport request number found in step 1.
A warning popup is displayed to the developer if different transport request numbers were found in step 4.
If all transport request numbers found in steps 1 and 3 are identical, the object can be safely modified. The same object version is present on all selected systems.
Also, there is the special case: Newly created local objects (i.e. objects that are so far not associated with any transport request) may be edited.
2. Supported transactions
The object collision detection has been tested successfully in the following transactions:
SE11
SE24
SE37
SE38
SE80
3. Integration into the SAP system
Please run the TMS Index builder (Report /GAL/TMS_INDEX_BUILDER) on every system which is part of the collision check. This report can run several hours; therefore, it should be scheduled in background job with following variant:
A SAP function module needs to be modified to enable additional checks every time a workbench object is modified. In the first line of the function module RS_ACCESS_PERMISSION there is a call to form PRELIMINARIES_TEST. Right after this line you need to insert the following statement:
Figure 1: Modification of functions module RS_ACCESS_PERMISSION
If the object collision check of table keys is required, then the function module TRINT_ORDER_CHOICE needs to be modified too.
Figure 2: First modification of function module TRINT_ORDER_CHOICE
If the approval functionality is enabled, then a second modification is necessary at the end of the function module TRINT_ORDER_CHOICE.
Figure 3: Second modification of functions module TRINT_ORDER_CHOICE
4. Configuration
Configuration on SAP system and client level is performed in the Conigma Repository Browser. Open path ‘Configuration -> Infrastructure and communication -> Systems and clients’ and double-click on the development system. Go to the tab ‘System specific settings’, there you will find the parameter to enable or disable object collision check for this system.
Figure 4: Enable object collision check for a specific SAP system
Now double-click the development system in Conigma and select the tab ‘Object collision check’.
Figure 5: Configuration on SAP system level
In the table you can specify all systems you want to include in the version check for this development system.
Now double-click on the associated development client in Conigma and select the 'Object collision check' tab.
Figure 6: Configuration on SAP Client level
5. User interface
The following popup is displayed when a collision is detected:
Figure 7: User interface
The relevant conflict information is displayed next to the type and name of the object causing the conflict. The top portion of the window contains information about the local system, the table control on the bottom contains information about the conflicts found on remote systems. The dialog box only appears when a conflict was found on at least one of the systems to be checked. Although the collision detection shows this warning popup, the object can still be edited.