SAP Function RPY_CLIF_COMP_MULTI_INSERT - Insert components of a class or interface

Parameter Reference Type Length Default Optional Text
CICO_REQUEST_NO RPYGSGF-CICO_REQNO C 20 Transport request number
CLASS_INTERFACE_ID RPYCLOK u 30 Class or interface name
LANGUAGE SYST-LANGU C 1 SY-LANGU X Language

Parameter Reference Length Optional Text
ATTRIBUTE_SET RPYCLAT 504 X Input: Attributes
ERROR_SET RPYGSER 268 Output: Error messages
EVENT_SET RPYCLEV 236 X Input: Events
EXCEPTION_SET RPYCLEX 200 X Input: Exceptions
METHOD_SET RPYCLME 236 X Input: Methods
PARAMETER_SET RPYCLPA 463 X Input: Parameters

Functionality
This function module adds a set of new components (attributes/methods/events) and subcomponents (parameters/exceptions) to an existing objecttype (class or interface).
The function module modifies an existing object type - that is, it isa check in in modify mode.
The following criteria must be met in order for the check in to besuccessful:
There must be a valid correction or repair request. If necessary, youcan generate one using the function moduleRPY_CICO_REQUEST_OPEN.
The object type that you want to modify must already exist and havebeen entered in the correction/repair request (that is, it must alreadyhave been checked out - seeRPY_CLIF_MULTI_READ_LOCK).
The components that you want to add must be complete, that is, allinput tables must be filled.
The components that you want to insert must be consistent (see below).
If these conditions are not met, or another error occurs during theinserting, the checkin does not take place and the components are notaddedd. The relevant error messages are placed in the error tableERROR_SET.
In the import parameter CICO_REQUEST_NO, enter the number of thecorrection or repair request.
All long texts are inserted in the system language by default. If youwant to insert texts in another language, pass the language to thefunction module using the import parameter LANGUAGE.
In the CLASS_INTERFACE_ID import parameter, enter the name of theobject type to which you want to add the components.
In the tables parameters (ATTRIBUTE_SET, METHOD_SET, etc.) you specifyall of the information about the components and subcomponents that youwant to add.
The function module does not trigger any exceptions. Problem and errormessages are returned to the table parameterERROR_SET. If the insertion is successful, the errortable is empty.
For general information about consistency checks, refer toRPY_CLIF_MULTI_INSERT. This functionmodule only checks the consistency of the new components.

Example
The following call adds new components to an existing object type:
* Data declaration
DATA: ATTRIBUTES LIKE RPYCLAT OCCURS 100 WITH HEADER LINE.
DATA: METHODS LIKE RPYCLME OCCURS 100 WITH HEADER LINE.
DATA: EVENTS LIKE RPYCLEV OCCURS 100 WITH HEADER LINE.
DATA: PARAMETERS LIKE RPYCLPA OCCURS 100 WITH HEADER LINE.
DATA: EXCEPTIONS LIKE RPYCLEX OCCURS 100 WITH HEADER LINE.
DATA: ERRORS LIKE RPYGSER OCCURS 100 WITH HEADER LINE.
DATA: REQNO LIKE RPYGSGF-CICO_REQNO
DATA: CLIF_ID LIKE VSEOCLIF-CLSNAME
* Fill request number
REQNO = ...
* Fill object type name
CLIF_ID = ...
* Fill input table, for example:
LOOP AT ...
MOVE-CORRESPONDING ... TO ATTRIBUTES. APPEND ATTRIBUTES.
ENDLOOP.
LOOP AT ...
MOVE-CORRESPONDING ... TO METHODS. APPEND METHODS.
ENDLOOP.
... (etc.)
* Call function module
CALL FUNCTION 'RPY_CLIF_COMP_MULTI_INSERT'
EXPORTING
CICO_REQUEST_NO = REQNO
* LANGUAGE = SY_LANGU
CLASS_INTERFACE_ID = CLIF_ID
TABLES
ATTRIBUTE_SET = ATTRIBUTES
METHOD_SET = METHODS
EVENT_SET = EVENTS
PARAMETER_SET = PARAMETERS
EXCEPTION_SET = EXCEPTIONS
ERROR_SET = ERRORS
EXCEPTIONS
OTHERS = 0.
* Error handling
LOOP AT ERRORS.
...
ENDLOOP.

Further information
Other function modules in the Class Library API:
RPY_CLIF_MULTI_READ
RPY_CLIF_MULTI_READ_LOCK
RPY_CLIF_MULTI_INSERT
RPY_CLIF_REL_MULTI_INSERT
RPY_CLIF_INFO_UPDATE
RPY_CLIF_COMP_UPDATE
RPY_CLIF_REL_UPDATE
RPY_CLIF_COMP_DELETE
RPY_CLIF_REL_DELETE
RPY_CLIF_DELETE