Show TOC

Background documentationApplication Administration

 

The application administration tool serves as a starting point for different operations that you can execute to clean up the BRFplus database and remove out-of-date, unused objects or object versions. This helps you keeping the database focused on the productive objects only, which in turn leads to a reduction of potential problems in terms of cross-dependencies and transport-related problems.

All operations offered by the application administration tool are based on reports that are also available in the backend via the FDT_HELPERS transaction. The backend versions of the reports offer even more features than the application administration tool. Consequently, the backend version is recommended for system administrators, while the application administration tool addresses occasional users. On the other hand, using the application administration tool in the BRFplus workbench has advantages with respect to giving the user a detailed overview of what an operation is about to do. Once you have defined a selection, the system collects all affected objects and presents them in a list. This overview on the level of single objects is available only in the application administration tool, not in the backend.

Features

The application administration tool offers the following operations:

Selection

All of the operations available in the application administration tool are executed for the minimum object scope of an application. Some of the operations allow for multiple applications and additional selection criteria, like transport behavior, storage type, application component, software component, and so on.

Once you have defined the object scope and clicked Apply, the system determines the applications that match the criteria and contain objects that are about to be touched by the operation that you want to perform. These applications are listed in the UI for you to check if this is the desired scope. If not, you can easily modify the selection criteria.

From the list of selected objects, you can make the system perform the operation in question for single objects only, rather than for the entire selection. For example, from a list of unused objects to be deleted, you can choose to delete only a few and then cancel the mass operation.

Note Note

If you have defined selection criteria for an operation that supports different criteria at the same time, and then switch to another operation type that only supports selecting an application, then all the additional selection criteria are lost. However, in this situation, the system notifies you so that you can preserve your selection.

End of the note.
Operations
Delete Unused Objects

With this operation, you can delete all objects in an application that are not referenced by any other objects. Objects may be unused because of different reasons:

  • Objects that have only been created for test purposes.

  • Objects that were used once but have been replaced by another object.

  • Objects that were created as an embedded object of a container object, and the container has been deleted in the meantime.

Unused objects fall into two different categories:

  • Named objects

    Named unused objects are mostly covered by the first two groups listed above.

  • Unnamed objects

    Unnamed unused objects are automatically created behind the scenes by the system as a reaction to a particular user action. For example, in previous releases of BRFplus, when you entered a range into the condition cell of a decision table, the system would automatically create an unnamed range expression in the same application and establish a reference relationship between the decision table and the range expression. This kind of object is particularly hard to find because they are not shown in the repository tree or any other kind of object list.

Once you have made your selection and click Apply, the system collects the affected objects. If named unused objects are found, they are shown in a list, and the Delete button is enabled. If unnamed unused objects are found, the Cleanup Unnamed Unused Objects button is enabled.

Note Note

Unlike most other operations offered by the application administration tool, the Delete Unused Objects operation cannot be run in test mode. If you click the Delete or Cleanup button, the system performs that operation and removes the affected objects from the database. However, keep in mind that the missing test mode is substituted by the list of affected objects that is populated when you apply the selection data to the tool. In addition, the objects collected by this operation are by definition unused, so there is no threat of data loss.

When you have performed this operation successfully, we recommend that you reapply the same selection once again. This is to find out if there are any new unused objects in the application after the first deletion run. New unused objects can occur if there are objects in the system that were previously used by an unused object that has been deleted in the previous run. After the run, an object that was previously used by a now deleted object only becomes unused itself after the previous run, thus becoming subject to the same operation in a second run, and so on.

End of the note.
Delete Objects Marked for Deletion

With this operation, you can logically delete all objects in a given set of applications that have been marked for deletion and are not referenced by any other objects. Once you have made your selection and click Apply, the system collects the applications with affected objects.

Besides being marked for deletion and not being referenced by any other object, there is a third criterion that must be fulfilled before an object is actually deleted by this operation: Based on the current system date, the system subtracts a predefined amount of time referred to as the data retention period. The resulting date after this subtraction serves as a threshold: Only objects that have been marked for deletion before that threshold date are actually deleted.

The default value for the data retention period is 90 days. However, the resulting threshold date can be manually adjusted in the Application Administration tool.

Note Note

This operation can only be performed on entire applications. It is not possible to include or exclude individual objects from the processing.

End of the note.
Discard Old Object Versions

With this operation, you can logically delete outdated object versions in a given set of applications. The system cuts off all object versions that are older than the given threshold date. The version that was in effect at the threshold date is modified such that the threshold date is assigned as the version's start date. The system takes care that all dependencies between the affected objects are properly preserved, so that it is still possible to revert the system to the state it was in at the threshold date. The discarded object versions remain physically in the database after processing but can no longer be accessed. They are physically removed after a retention period from the system by an additional cleanup run.

Caution Caution

Keep in mind that there may be important reasons for object versioning, most typically for reasons of legal compliance and auditing. Therefore, be very careful when you use this operation. You should make it totally clear that the object versions to be discarded won't be needed for whatever purpose ever again.

End of the caution.
Clean up Database

With this operation, you can explicitly clean up the database from the deactivated objects and object versions that exist in the database as a result of the operations described above, Delete Objects Marked for Deletion as well as Discard Old Object Versions. By executing this operation, hidden object versions as well as logically deleted objects are physically deleted from the database and cannot be retrieved anymore.

Reorganize Objects

With this operation, you can reorganize the internal structure of certain expressions (for example, decision table, loop, case, boolean) in a BRFplus application that have been taken over from an older release of BRFplus. This helps to improve performance as well as to simplify the maintenance of such legacy objects.

More Information

Deleting Objects

Versioning