SAP Function RPY_CLIF_REL_MULTI_INSERT - Insert a relationship for 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
ERROR_SET RPYGSER 268 Output: Error messages
FRIENDS_RELATION_SET RPYCLFR 102 X Input: Friend relationships
INSTANCE_RELATION_SET RPYCLIR 92 X Input: Instance relationships
META_RELATION_SET RPYCLMR 134 X Input: Metarelationships

Functionality
This function module inserts a set of new outgoing relatinships (isfriends with, inherits from, contains, references) for an object type(class or interface).
This is a modification of an existing object type - a check in inMODIFY mode.
The following criteria must be fulfilled 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 alreadey exist and havebeen entered in the correction or repair request, that is, it mustalready have been checked out (seeRPY_CLIF_MULTI_READ_LOCK).
The relationship that you want to add must be complete (all inputtables must have been filled).
The relationships that you want to insert must be consistent (seebelow).
If these requirements are not met, or another error occurs duringinsertion, the check in does not table place and the relationships arenot added. 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.
By default, all long texts are added in the system language. If youwant to add texts in another language, pass its ID to the functionmodule in the LANGUAGE parameter.
In the import parameter CLASS_INTERFACE_ID, enter the name of theobject type for which you want to add the relationships.
In the table parameters (META_RELATION_SET etc.), pass all of therequired information about the relationships that you want to insert.
The function module does not trigger any exceptions. Problem or errormessages are passed back to the called in the table parameterERROR_SET. If the insertion is successful, the errortable is empty.
For general inforamtion about consistency checks, refer toRPY_CLIF_MULTI_INSERT. This functionmoduel only checks the consistency of the new relationships that youwant to insert.
The system automatically generates and inserts attributes for the newinstance relationships.

Example
The following call adds relationships to an existing object type:
* Data declaration
DATA: METARELS LIKE RPYCLMR OCCURS 100 WITH HEADER LINE.
DATA: IMPLRELS LIKE RPYCLIR OCCURS 100 WITH HEADER LINE.
DATA: FRIENDRELS LIKE RPYCLFR 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, e.g.
LOOP AT ...
MOVE-CORRESPONDING ... TO METARELS. APPEND METARELS.
ENDLOOP.
... (etc.)
* Call function module
CALL FUNCTION 'RPY_CLIF_REL_MULTI_INSERT'
EXPORTING
CICO_REQUEST_NO = REQNO
* LANGUAGE = SY_LANGU
CLASS_INTERFACE_ID = CLIF_ID
TABLES
META_RELATION_SET = METARELS
INSTANCE_RELATION_SET = IMPLRELS
FRIENDS_RELATION_SET = FRIENDRELS
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_COMP_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