Entering content frame

Background documentation Enhancements Locate the document in its SAP Library structure

BSP application SYSTEM is divided into two large areas, so that user-specific adjustments or enhancements are easier to make:

Own BSP Application

The BSP application contains the layout for the application.

Application Class CL_BSP_LOGIN_APPLICATION

The application class contains the business logic for an application.

The BSP application class is configured once for the whole BSP application. With this configuration, a reference to the application class is available for the duration of the stateful session within all pages, using parameter APPLICATION.

This graphic is explained in the accompanying text

To simplify enhancements, both language-dependent text strings and all data required for the BSP application are written to the application class. The BSP application itself contains references to this information only using the syntax.
application->…

Interface IF_BSP_APPLICATION_EVENTS was implemented to make it even easier to integrate the application class in the BSP application. This means that the application class has control both before and after processing and as a result it can integrate specific logon logic without large coding changes to the pages being necessary.

Possible Adjustments

Caution

Under no circumstances whatsoever should you make changes to BSP applications SYSTEM or its application class CL_BSP_LOGIN_APPLICATION!

For the enhancements, note the following points:

If you want to use one of the exit URLs, such as page TermsOfUse.htm, then additional pages are required as destinations. These pages must be publicly accessible. A possible implementation would be analogous to the method with layout changes. You could then write the pages that are additionally required directly in your new SYSTEM application.

Layout changes

It is recommended that you copy BSP application SYSTEM to a new BSP application.

Caution

If the copy process terminates with the error message that the name SYSTEM is reserved, proceed as described in Note 531028.

Continue to use the same application class, CL_BSP_LOGIN_APPLICATION, since it contains the whole logon logic.
Use your new BSP application to change the layout according to your requirements. For example, you could add your company logo to every page.

Note the following different settings that are required depending on the release status:

Area

SAP Web AS 6.10

SAP Web AS 6.20 and above

ICF service tree

First, in Transaction SICF (see also Structure linkCreating an ICF service) you must create the actual entry for your copies SYSTEM application in the ICF service tree, in path sap/bc/bsp/sap/<copied SYSTEM>.

Then make a new alias entry in the public path, so that your new SYSTEM application can be accessed publicly (using the SAPSYS user). The exact path for this in the ICF service tree is sap/public/bsp/sap/<copied SYSTEM>.

The entry for your copied SYSTEM application is automatically made in the ICF service tree in Transaction SICF as part of the copy process.

You only need to make a new alias entry in the public path of the ICF service tree, so that your new SYSTEM application can be accessed publicly (using the SAPSYS user). The exact path for this in the ICF service tree is sap/public/bsp/sap/<copied SYSTEM>.

MIME objects

As part of the copy process, only the pages are copied, not the MIME objects. This is why you must transfer the MIME objects to your new SYSTEM application after you copy the SYSTEM. Proceed as follows:

  1. In the MIME repository below the SAP tree, branch to the folder for the SYSTEM application.
  2. Select here all of the MIME objects for the SYSTEM application.
  3. Hold down the Control key and then drag the objects you selected to your new SYSTEM application.

Caution
In doing so, ensure that you objects are copied that is, duplicated (by holding down the Control key) and not merely moved from the
SYSTEM to your copied application.

During the copy process, you can copy MIME objects as well as pages. To do this, in the copy dialog box for the sub-objects to be copied, select the options for the MIME objects as well as the pages.

Pages that cannot be activated

There are three pages in your copied SYSTEM application that cannot be activated.
These pages do not have any additional influence on the functionality of the remaining
SYSTEM application. We therefore recommend that you manually delete the following three pages from your copy of the SYSTEM application:

  • hidden_buffered.htm
  • session_buffered_frame.htm
  • session_single_frame.htm

No changes required.

Once you have copied the SYSTEM application, use the name of your copied SYSTEM application for the redirect with the error pages and not the SYSTEM application itself.

Small changes to the logic

The special class CL_BSP_LOGIN_HANDLER is available for this. Implement your own class, which is derived from CL_BSP_LOGIN_HANDLER and, if necessary, overwrite all methods that you require for your application in a modified form. Then configure SYSTEM so that it uses your new handler class (BspHandlerClass). If the new application class is started, the specified handler class is also created and the handler class is also called.

Since all application-relevant information is available as public attributed in the application class, the handler class can overdefine specific information. Typical application areas for the handler classes are:

This particularly useful if you need a longer configuration URL than SICF supports. In this case, configure a handler class in which all required exit URLS are set, such as BspTermsOfUse.

An example is setting and resetting cookies which are required for the duration of the application. Further examples are executing additional authorization checks and writing logging information.

Enhance the SYSTEM application class.

This is not usually recommended, but may be necessary in extreme cases. Implement your own application class which is derived from CL_BSP_LOGIN_APPLICATION and overwrite the required methods. Then copy SYSTEM to your own application and configure the new application class.

Leaving content frame