Ansicht
Dokumentation

BOOKSMODSMOD - BOOKSMODSMOD

BOOKSMODSMOD - BOOKSMODSMOD

Addresses (Business Address Services)   Fill RESBD Structure from EBP Component Structure  
This documentation is copyright by SAP AG.
SAP E-Book

An enhancement consists of one or more components (function exits, screen areas, ...). You then assign these to enhancements using SMOD. CAUTION: You should assign several components to one and the same enhancement only if they MUST be activated together (e.g. an additional function code and a function exit which has to react to it.)
The component to be assigned to an enhancement does not have to already exist. However, when you enter components, the system checks that you have observed the naming conventions. Also, a component cannot belong to more than one enhancement.
When you assign components to an enhancement, the above requirements are checked. However, the system does not automatically check that the component exists and is called in the relevant program.

With the Transaction SMOD, you can

  • create new enhancements
  • delete and rename enhancements
  • change and display enhancements
  • check enhancements (both for existence and whether components are called)
  • test enhancements
  • document enhancements
  • display a list of existing enhancements

Creating an enhancement (choose Enhancement -> Create):

To create an enhancement, you must first enter a name up to 8 characters long. Choose any characters other than special characters ('.,()''"=+*). To make selection easier for the customer, you should stick to the following convention: 4 characters to cover the application (1) work area (2) and sub-work area (1), followed by 4 digits (for example, S38W0001).

This takes you into the enhancement attributes where you have to enter a short text and a package. We recommend that you put the enhancement and all the components into the package that contains the relevant transaction.

After saving the short text, you can branch to the screen for entering the components (choose Components).

Please note the following when entering the components:

1. The component must conform to the naming convention
2. The component must not belong to any other enhancement

You enter the name for each component.

The enhancement components supported are as follows:

Function exit

Enter the name of the relevant function module. Stick to the naming convention: Prefix: EXIT_ , infix: Module pool, suffix: 3 digits.

Reserved function code

Enter the name of the program followed by the name of the code. This must begin with +.

Screen area

Enter the calling screen (program and screen number) followed by the name of the area and finally the called screen. If the number of the called screen is specified dynamically, you only have to enter the program. The program must be a function group for function exits, i.e. the first 5 characters of the name are SAPLX. If the number of the calling screen is specified statically, it must also be entered.

To save the components choose Save. You can delete a component from an enhancement with the appropriate function, but it is not necessary to save after doing this. The delete function only deletes the component from the enhancement, i.e. not the component itself (function exit, screen area, ...). When you have deleted a component from an enhancement, you can assign it to another enhancement.

You can also create or change components. Depending on the type of component, you branch to the maintenance of:

  • Function modules ,,(function exit)
  • Menu interface ,,(function code)
  • Function groups ,,(screen area)

You can display the components present in the system with the function 'Existing components'. First, this takes you into a screen where you have to choose which components are to be displayed. If you choose function exits, you can also enter the program in which the relevant function exits are called (generic entries are possible here). If you choose function codes or screen areas, the relevant (calling) program must always be entered in full. For screen areas, the number of the calling screen can also be entered.
You choose the components you require in the list by selecting the appropriate checkbox or by double clicking on them. Then, choose Copy and the components are copied to the enhancement.
Only those components that can be included in the enhancement are displayed, i.e. only those which do not yet belong to any other enhancement. Function exits are listed only if they are active in the Function Builder.

Deleting and renaming enhancements (choose Enhancement -> Delete or Enhancement -> Rename):

These functions delete (or rename) the enhancement with its attributes and components. Deleting or renaming applies ONLY to the enhancement itself, not to the components, which can be assigned to other enhancements afterwards. Likewise, the documentation of the enhancement or the components is not deleted/renamed. You should delete/rename the documentation of the enhancement itself manually (or assign it to another enhancement). You should delete/rename the documentation of the components only if the components themselves are deleted/renamed.
Since each component cannot belong to more than one enhancement, there is no copy function.
Enhancements that have been delivered to the customer cannot be deleted (renamed).

Changing enhancements:

This covers the creation and deletion of components, as well as the modification of short texts and documentation (sub-objects 'Components', 'Attributes' and 'Documentation' on the initial screen).
The components of enhancements delivered to the customer cannot be changed.

Documentation of enhancements:

(sub-object 'Documentation' on the initial screen.)

The documentation of an enhancement should make the function clearly recognizable and the customer should be able use it to make an enhancement without having to look at the SAP code. You may like to give an example.

Displaying a list of existing enhancements (choose Utilities -> List enhancements):

This takes you into a selection screen where you can specify the the names of the enhancements you are searching for, as well as the packages. If you do not enter a package, a list appears on the next screen of all the packages that contain enhancements. Here, you choose a packag and the relevant enhancements are displayed. If you want to display the enhancements for all packages, enter * in the field 'Package'.
You can display all enhancements with components by selecting Display components on the selection screen. You can also choose the enhancements for which you want components displayed by pressing F5 in the list. In addition, you can choose the enhancement or component for which you want documentation displayed.

Checking enhancements:

Here, the system checks that the components of enhancements exist. For function exits, the relevant function modules must have been created, and a reserved function code must have been created in the menu interface. For screen areas, the function group which contains the called screen must have been created (even if there are no function exits for data transfer).
The system also checks that the calling programs/screens are present. For function exits, an additional check is made to see if the relevant calls in the calling program are present, and the function exits have been released. For screen areas, an additional check is made to see if the calls in the calling screen are present. If all the checks are successful, you get a message confirming this. Otherwise you get a list of the incorrect components.

Testing enhancements:

For function exits, you can enter code that can be added to the screens in the subscreen. The incodes, screens and other objects that you create in tests are stored in the customer namespace, and can only be created as local objects (or in a package T*). This ensures that none of these objects can accidentally be delivered to customers. You can activate the SAP enhancement (see the online documentation for Transaction CMOD). This regenerates the programs, screens and GUI interfaces from which the enhancement components are called. You can then test the corresponding transactions by choosing "Test transaction".

CAUTION: AFTER TESTING, YOU MUST DEACTIVATE THE ENHANCEMENT AGAIN. OTHERWISE, AN ACTIVE "CALL CUSTOMER-FUNCTION" OR "CALL CUSTOMER-SUBSCREEN" MIGHT BE DELIVERED TO CUSTOMERS. SINCE THE REQUIRED INCLUDES AND SCREENS DO NOT EXIST IN THE CUSTOMER SYSTEM, THE TRANSACTION WOULD THEN TERMINATE!
To delete the programs, screens and other objects that you created during testing, choose "Delete customer objects".

Transporting enhancements:

When you change an enhancement, you must specify a correction number. ONLY the enhancement itself (together with short text and package ) is included in the correction. The associated function exits, screen areas etc. are not automatically included. Likewise for documentation (of an enhancement or a component), you have to specify a correction number. In addition, the documentation must be assigned to a package. We recommend that you choose the package which contains the enhancement and components for this purpose.

From Release 3.0C, the system generates a (global) TADIR entry for enhancements.

You should note that, during transports, all components and any modified programs/screens are transported with the enhancement.






CPI1466 during Backup   ABAP Short Reference  
This documentation is copyright by SAP AG.

Length: 10375 Date: 20240523 Time: 222509     sap01-206 ( 245 ms )