Local generation

Under certain conditions, it is sometimes necessary to suspend the generation.

Within the generation method, 2 methods can be used:

The method IS_CALL_METHODS_ACTIVE is called before the generation is started. In the standard system, this method always returns "True".

If required, this method can be redefined to deactivate complete generation classes.

The method IS_METHOD_ACTIVE is called before each call of a public method of the class. In the standard system, this method always returns "True".

If required, this method can be redefined to deactivate certain generation methods.

Global Generation

After each action ( manual input, BUS call, Builder...) the global generation is called to ensure a consistent state.

If multiple actions must be processed sequentially ( e.g. a program calls a BUS method 3 times:  BUS→CHANGE then BUS→CREATE_REL and then BUS→ACTIVITY ), it is counterproductive - for performance reasons - to run the global generation each time.

It is sufficient if the last action alone triggers the global generation. For this reason, the BUS methods have a parameter iv_suppress_globgen. This allows you to suspend global generation completely.

The first 2 actions could be called with the parameter iv_suppress_globgen = abap_true.

However, an error message is automatically generated at the changed QPPD object: "The global generation must still be activated" ( message class /SCT/QP Message 190 ).

If the parameter iv_suppress_globgen is omitted in the third action, global generation is then started and the error message is deleted.