SAP Function RPY_CLIF_REL_UPDATE - Change a relationship of a class or interface

Parameter Reference Type Length Default Optional Text
CICO_REQUEST_NO RPYGSGF-CICO_REQNO C 20
CLASS_INTERFACE_ID RPYCLOK u 30
FRIENDS_RELATION RPYCLFR u 102 X
INSTANCE_RELATION RPYCLIR u 92 X
LANGUAGE SYST-LANGU C 1 SY-LANGU X
META_RELATION RPYCLMR u 134 X

Parameter Reference Length Optional Text
ERROR_SET RPYGSER 268

Functionality
This function module changes a relationship of an object type.
It is a modification of an existing object type, that is, a check in inMODIFY mode.
For the check in to be successful, the following criteria must be met:
There must be a valid correction or repair request. If required, youcan generate one using the function moduleRPY_CICO_REQUEST_OPEN.
The object type that you want to modify must exist and have beenentered in a correction or repair request, that is, it must already bechecked out (seeRPY_CLIF_MULTI_READ_LOCK).
The changed relationship must be consistent (see below).
If these criteria are not met, or another error occurs during theoperation, the check in does not take place and no changes are made.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 changed in the system language. If youwant to change them in a different language, enter its ID in theLANGUAGE parameter.
In the import parameter CLASS_INTERFACE_ID, enter the name of theobject type whose relationship you want to change.
Pass the relationship to the function module in one of the importparameters META_RELATION, INSTANCE_RELATION, or FRIENDS_RELATION. Youcan only change one relationship each time you call the functionmodule, and only one of these import parameters may be filled in eachcall.
The function module does not trigger any exceptions. Problem or errormessages are passed back to the user in the table parameterERROR_SET. If the changes are successful, the errortable contains no entries.
For general information about consistency checks, refer toRPY_CLIF_MULTI_INSERT. This functionmodule only checks the consistency of the changed relationship andtakes no account of the possible effects on subclasses or classes or pprograms that use the object type. When you use the function module, itis your responsibility to ensure that no inconsistencies arise.

Example
The following call changes a metarelationship of an existing objecttype.
* Data declarations
DATA: REQNO LIKE RPYGSGF-CICO_REQNO.
DATA: CLIF_ID LIKE RPYCLOK.
DATA: META_RELATION LIKE RPYCLMR.
* Fill request number
REQNO = ...
* Fill object type ID
CLIF_ID = ...
* Fill metarelationship of the object type
META_RELATION-CLSNAME = ...
META_RELATION-REFCLSNAME = ...
... (etc.)
* Call function module
CALL FUNCTION 'RPY_CLIF_REL_UPDATE'
EXPORTING
CICO_REQUEST_NO = REQNO
* LANGUAGE = SY-LANGU
CLASS_INTERFACE_ID = CLIF_ID
META_RELATION = META_RELATION
TABLES
ERROR_SET = ERRORS
EXCEPTIONS
OTHERS = 0.
* Error handling
LOOP AT ERRORS.
...
ENDL
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_REL_MULTI_INSERT
RPY_CLIF_COMP_UPDATE
RPY_CLIF_INFO_UPDATE
RPY_CLIF_COMP_DELETE
RPY_CLIF_REL_DELETE
RPY_CLIF_DELETE