SAP Function RPY_CLIF_COMP_UPDATE - Change a component of a class or interface

Parameter Reference Type Length Default Optional Text
ATTRIBUTE RPYCLAT u 504 X Input: An attribute
CICO_REQUEST_NO RPYGSGF-CICO_REQNO C 20 Transport request number
CLASS_INTERFACE_ID RPYCLOK u 30 Class or interface name
EVENT RPYCLEV u 236 X Input: An event
LANGUAGE SYST-LANGU C 1 SY-LANGU X Language
METHOD RPYCLME u 236 X Input: A method

Parameter Reference Length Optional Text
ERROR_SET RPYGSER 268 Output: Error messages
EXCEPTION_SET RPYCLEX 200 X Input: Exceptions of the method
PARAMETER_SET RPYCLPA 463 X Input: Parameters of the method

Functionality
This function module changes a component of an object type.
It modifies an existing object type, that is, it is a check in inMODIFY mode.
The following conditions must be fulfilled for the check in to besuccessful:
There must be a valid correction or repair requiest. 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 havebeen checked out (seeRPY_CLIF_MULTI_READ_LOCK).
The changed component must be consistent (see below).
If these conditions are not met, or another error occurs, the checkindoes not take place and the changes are not made. The relevant errormessages are placed in the error table ERROR_SET.
In the import parameter CICO_REQUEST_NO enter the number of thecorrection or repair request.
All long texts are, by default, changed in the system language. If youwant to change the text in another language, enter the language in theimport parameter LANGUAGE.
In the import parameter CLASS_INTERFACE_ID, enter the name of theobject type whose component you want to change.
Pass the component that you want to change to the function module inone of the import parameter ATTRIBUTE, METHOD, or EVENT. You can onlychange one component each time you call the function module, and onlyone of these attributes can be filled. If the component is a method,you can pass its parameters and exceptions in the tables parametersPARAMETER_SET and EXCEPTION_SET. If the component is an event, you canpass its event parameters in the table parameter PARAMETER_SET.
The function module does not trigger any exceptions. Problem or errormessages are returned in the tables parameterERROR_SET. If the change 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 changed component. It doesnot take into account possible effects on subclasses or classes andprograms that use the class that you are changing. When you use thisfunction module, you must ensure that it does not leave the class in aninconsistent state.

Example
The following call changes a method of an existing object type:
* Data declaration
DATA: REQNO LIKE RPYGSGF-CICO_REQNO.
DATA: CLIF_ID LIKE RPYCLOK.
DATA: METHOD LIKE RPYCLME.
DATA: PARAMETERS LIKE RPYCLPA OCCURS 10 WITH HEADER LINE.
DATA: EXCEPTIONS LIKE RPYCLEX OCCURS 10 WITH HEADER LINE.
* Fill request number
REQNO = ...
* Fill object type ID
CLIF_ID = ...
* Fill method of object type
METHOD = ...
* Fill parameters and exceptions of the method, e.g.:
LOOP AT ...
MOVE-CORRESPONDING ... TO PARAMETERS. APPEND PARAMETERS.
ENDLOOP.
LOOP AT ...
MOVE-CORRESPONDING ... TO EXCEPTIONS. APPEND EXCEPTIONS.
ENDLOOP.
* Call function module
CALL FUNCTION 'RPY_CLIF_COMP_UPDATE'
EXPORTING
CICO_REQUEST_NO = REQNO
* LANGUAGE = SY-LANGU
CLASS_INTERFACE_ID = CLIF_ID
METHOD = METHOD
TABLES
PARAMETER_SET = PARAMETERS
EXCEPTION_SET = EXCEPTIONS
ERROR_SET = ERRORS
EXCEPTIONS
OTHERS = 0.
* Error handling
LOOP AT ERRORS.
...
ENDLOOP.
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_INFO_UPDATE
RPY_CLIF_REL_UPDATE
RPY_CLIF_COMP_DELETE
RPY_CLIF_REL_DELETE
RPY_CLIF_DELETE