Most runtime object types in the Repository (such as a BDoc type definition) has its meta-information functions with a specific interface. The interface is a function module that calls the corresponding repository service.
Initially, all services must be generated. A service is a set of runtime objects. If you make changes to object types or generation templates later, you must regenerate the services. If you transport changed meta-information to another system, you must see the transport log for further action.
The runtime objects to be generated are dictionary objects, function groups with include files and function modules. The input for the generation are templates in form of includes and table records of the repository, e.g. the BDoc repository. Thus, there is a close relationship between generated ABAP objects and table entries of the CRM Repository. This relationship is consolidated again in tables that are part of the Repository.
If not delivered through the installation, you must generate runtime objects on each CRM Server involved (development, test and production systems). As the objects are generated in package $SAP_MSAGEN, they cannot be transported.
Depending on the object type, a specified scope of runtime objects is generated. The full scope of runtime objects generated for all object types is as follows:
· Structure definitions and table type definitions
They are used to build the container for segments and BDoc types.
· Function groups and Function modules
Two types of function groups are generated:
· Flow function groups
Flow function groups are used by the flow component. Each of them corresponds to a BDoc. They contain all function modules that depend on a BDoc, especially all service function modules. For each function group, an include file containing the BDoc structure definition and a flow definition include file are generated.
· General function groups
General function groups are used for the remaining function modules. Their number depends on the number of function modules to be grouped. They are logically structured by the name depending on the functionality: Functions dealing with replication and publication objects have their own functions groups and so do the R/3-adapter function modules.
· Tables
Lookup tables are generated.
· Indexes
Indexes are generated for lookup tables and application tables.
· Enqueue objects
Enqueue objects are generated for the lookup tables.
You can generate these runtime objects for object categories such as:
· BDoc types
· Replication objects
· Publication objects
· Adapter objects
All the functions listed below are accessible via Architecture and Technology ® Middleware ® Development ® Generation ® Generation.
Note that the generation of the replication and
publication services depends on the industry selected in the SAP
Implementation Guide. The industry parameter value is client-dependent. To generate services by object types,
select Generate
Services. Advantage: All runtime objects necessary for
an object type are regenerated, so there are no inconsistencies within an
object type. Other interdependencies (e.g. BDoc types and replication objects)
are not taken into account. Disadvantage: Due to internal dependencies,
several function modules are regenerated again and again. This may cause very
long generation times because the generation is not optimized. Another
disadvantage is that after a failure the generation stops. As a result you
must jump from one failure to the next until the generation is
finished. In the Generate Services screen, proceed as
follows:
...
1.
Choose one of
the repository object categories.
2.
Choose one or
more objects for which you want to generate runtime objects.
3.
Execute the
function. During code generation, SQL queries are created
dynamically. To keep runtime low, you should generate indexes
for application table fields: ·
To display
missing indexes, select Generate
Application Table Indexes. Table fields with missing table indexes are
displayed in a list. ·
To create the
missing indexes, click on the Adjust
Indexes pushbutton. Missing indexes are created and creation is
confirmed.
For details, see Help
® Application
Help. Changes to a generation template
require a regeneration of affected services. To regenerate such services, select Regenerate Services on Template
Change.
Please note that large-scale template
changes may require a regeneration time of more than 30 minutes.
You can generate industry-specific
replication and publication services for an additional industry in another
client. Select Generate Industry-Specific
Objects. On confirmation in a dialog window,
industry-specific objects can be generated in a background job.
You have to initially generate all
objects specific to the industry you selected. To generate these objects, select Start Initial/Total
Generation. All objects necessary to run the CRM
Server with the selected industry are generated in a background job.
The
Generation Workbench is a developer's tool for analyzing generation details
and regenerating runtime objects. For details, see Using the Generation
Workbench. All
relevant tasks are performed to delete objects that are specific to an
industry . All
subscriptions specific to the selected industry must be deleted using the
Admin Console. This prerequisite is checked by the program. Depending on the installation, the screen contains
one or two selection lists. ·
The selection
list on the left displays all available system clients with their associated
industry parameters. You can select one or several client/industry
pairs. Choosing Delete Objects deletes all
industry-specific objects of the client/industry pair(s) you selected. The
relevant configuration table parameter for the selected industry will be set
to an initial value . ·
The selection
list on the right displays the clients for which no industry was
specified. The
actions performed are displayed in a list.
Generating Services By Object Type
Generating Application Table Indexes
Regenerating Services on
Template Changes
Generating Industry-Specific Objects
Starting Initial/Total Generation of All Objects
Using the Generation
Workbench
Deleting Generated
Industry-Specific Objects