Conflict Calculation
Trigger
The conflict calculation is triggered in the following situations:
-
When a transport request managed by Change Request Management has been changed
-
When Change Request Management triggers the release of a transport request
Procedure
Changed objects or objects that are part of the transport request are checked against the template rules for all global systems to which the development system of the transport request is assigned as a local system.
Depending on the global template protection configuration, the global-system-specific configuration and finally also the local lock handling, an identified conflict is visible as a warning or as an error within the popup of the transport-related check framework.
In case of an error, the change is not saved to the transport request or the release of the transport request is canceled.
In case of a warning, you may confirm the conflicts. Those conflicts are persisted to the Template Protection tables (Conflicts tab in the template protection cockpit) and reevaluated during the release of a transport request.
Customizing
Prevent Display of Existing Conflicts
If a conflict has been found again, this conflict is shown in the transport-related check framework popup again. You can prevent this with the following customizing option so that already-known conflicts are not shown anymore. This applies only for the change of transport requests, as unprocessed conflicts must be shown and confirmed during the release of a transport request.
| Parameter | DCNF_INACT |
| Value | X |
Threshold for Large Transport Requests
If a transport request contains many objects, an analysis of the transport request before the conflict calculation can increase the system performance. With the transport request analysis, the number of objects to be checked can be reduced. One use case is a table containing a lot of table keys. If there is no template rule for the table at all, there is no need to check every single key. With the following customizing activity, you can set the threshold for large transport requests. If the transport request contains more objects as set in the customizing, the transport analysis is performed before the actual conflict calculation.
| Parameter | PERFTH_OBJ |
| Value | Number, default is 1000 |
Conflict Handling Per Global System
You can define how conflicts with objects protected by a global system should react. This configuration applies to all corresponding template rules but can be overruled by local-system-specific lock handling and template-rule-specific local lock handling.
View cluster /SALM/TPP_VCUST -> Conflict Handling
| System | Global system in the format of <system id>:<client>. Wildcards (such as *:*) are supported. |
| Event | ONRELEASE: when releasing the transport request |
| ONSAVE: when changing the transport request | |
| Handling | Warning. Conflicts can be confirmed or ignored. |
| Error. Activity will be canceled. |
Conflict Handling Per Local System
You can define how template rules should react on a local system connected to a global system.
View /SALM/TPP_SG_LCU
| Global System GUID | Calculated when global system has been selected |
| Global System | Relevant global system (no wildcards allowed) |
| Local System GUID | Calculated when local system has been selected |
| Local System | Relevant local system |
| Parameter | CONFLICT_ONRELEASE: Check when releasing transport requests. |
| CONFLICT_ONSAVE: Check when changing transport requests. | |
| VALUE: | E: Error. Activity will be canceled. |
| W: Warning. Conflicts can be confirmed or ignored. |
Template-Rule-Specific Local Lock Handling
Within the template protection cockpit, you can define how a specific template rule should react for a selected local system.