SAP RH_DELETE_OBJECT Function Module for Delete Object
RH_DELETE_OBJECT is a standard rh delete object SAP function module available within SAP R/3 or S/4 Hana systems, depending on your version and release level. It is used for Delete Object processing and below is the pattern details for this FM, showing its interface including any import and export parameters, exceptions etc. there is also a full "cut and paste" ABAP pattern code example, along with implementation ABAP coding, documentation and contribution comments specific to this or related objects.
See here to view full function module documentation and code listing for rh delete object FM, simply by entering the name RH_DELETE_OBJECT into the relevant SAP transaction such as SE37 or SE38.
Function Group: RHAP
Program Name: SAPLRHAP
Main Program: SAPLRHAP
Appliation area: H
Release date: 02-Sep-1999
Mode(Normal, Remote etc): Normal Function Module
Update:

Function RH_DELETE_OBJECT pattern details
In-order to call this FM within your sap programs, simply using the below ABAP pattern details to trigger the function call...or see the full ABAP code listing at the end of this article. You can simply cut and paste this code into your ABAP progrom as it is, including variable declarations.CALL FUNCTION 'RH_DELETE_OBJECT'"Delete Object.
EXPORTING
* PLVAR = "Plan Version
* DELETE_USER_PROFILES = 'X' "Delete User Profiles of Activity Group
* DELETE_DEPENDENTS = 'X' "Delete Dependent Objects
* KEEP_LUPD = "Retain Last Changed By/On
* WORKF_ACTV = 'X' "Workflow Switch Active
* NO_EXCEPT_FOREIGN_DATA = ' ' "
* OTYPE = "Object Type
* OBJID = "Object ID
VTASK = "Update (B=Buffer,D=Online,V=Update,S=Sync)
* ORDER_FLG = 'X' "Switch: Take Record Sequence Into Account
* COMMIT_FLG = 'X' "Switch with COMMIT
* AUTHY = 'X' "Authorization Check Switch
* CONFIRM = ' ' "DIALOG BOX Show Deletion Confirmation
* DELETE_1205_WFDID = 'X' "Delete Workflow Definition
IMPORTING
CONFIRM_EXIT = "User Action in Confirmation Dialog Box
TABLES
* DEL_OBJECTS = "Objects to be deleted
* ILFCODE = "Table of Logical Function Codes
EXCEPTIONS
ERROR_DURING_DELETE = 1 NO_AUTHORIZATION = 2 CORR_EXIT = 3 BUFFER_UPD_WITH_FOREIGN_DATA = 4
IMPORTING Parameters details for RH_DELETE_OBJECT
PLVAR - Plan Version
Data type: WPLOG-PLVAROptional: Yes
Call by Reference: No ( called with pass by value option)
DELETE_USER_PROFILES - Delete User Profiles of Activity Group
Data type: HRRHAP-COMMIT_FLGDefault: 'X'
Optional: Yes
Call by Reference: No ( called with pass by value option)
DELETE_DEPENDENTS - Delete Dependent Objects
Data type: HRRHAP-COMMIT_FLGDefault: 'X'
Optional: Yes
Call by Reference: No ( called with pass by value option)
KEEP_LUPD - Retain Last Changed By/On
Data type: HRRHAP-KEEP_LUPDOptional: Yes
Call by Reference: No ( called with pass by value option)
WORKF_ACTV - Workflow Switch Active
Data type: HRRHAP-WORKF_ACTVDefault: 'X'
Optional: Yes
Call by Reference: No ( called with pass by value option)
NO_EXCEPT_FOREIGN_DATA -
Data type: HRRHAP-COMMIT_FLGDefault: SPACE
Optional: Yes
Call by Reference: No ( called with pass by value option)
OTYPE - Object Type
Data type: WPLOG-OTYPEOptional: Yes
Call by Reference: No ( called with pass by value option)
OBJID - Object ID
Data type: WPLOG-OBJIDOptional: Yes
Call by Reference: No ( called with pass by value option)
VTASK - Update (B=Buffer,D=Online,V=Update,S=Sync)
Data type: HRRHAP-VTASKOptional: No
Call by Reference: No ( called with pass by value option)
ORDER_FLG - Switch: Take Record Sequence Into Account
Data type: HRRHAP-ORDER_FLGDefault: 'X'
Optional: Yes
Call by Reference: No ( called with pass by value option)
COMMIT_FLG - Switch with COMMIT
Data type: HRRHAP-COMMIT_FLGDefault: 'X'
Optional: Yes
Call by Reference: No ( called with pass by value option)
AUTHY - Authorization Check Switch
Data type: HRRHAP-AUTHYDefault: 'X'
Optional: Yes
Call by Reference: No ( called with pass by value option)
CONFIRM - DIALOG BOX Show Deletion Confirmation
Data type: HRRHAP-COMMIT_FLGDefault: SPACE
Optional: Yes
Call by Reference: No ( called with pass by value option)
DELETE_1205_WFDID - Delete Workflow Definition
Data type: HRRHAP-COMMIT_FLGDefault: 'X'
Optional: Yes
Call by Reference: No ( called with pass by value option)
EXPORTING Parameters details for RH_DELETE_OBJECT
CONFIRM_EXIT - User Action in Confirmation Dialog Box
Data type:Optional: No
Call by Reference: No ( called with pass by value option)
TABLES Parameters details for RH_DELETE_OBJECT
DEL_OBJECTS - Objects to be deleted
Data type: HROBJECTOptional: Yes
Call by Reference: No ( called with pass by value option)
ILFCODE - Table of Logical Function Codes
Data type: ILFCODOptional: Yes
Call by Reference: No ( called with pass by value option)
EXCEPTIONS details
ERROR_DURING_DELETE - Deletion error
Data type:Optional: No
Call by Reference: No ( called with pass by value option)
NO_AUTHORIZATION - No Authorization
Data type:Optional: No
Call by Reference: No ( called with pass by value option)
CORR_EXIT - Error/Termination While Assigning Correction Number
Data type:Optional: No
Call by Reference: No ( called with pass by value option)
BUFFER_UPD_WITH_FOREIGN_DATA - Buffer Update with Foreign Data
Data type:Optional: No
Call by Reference: No ( called with pass by value option)
Copy and paste ABAP code example for RH_DELETE_OBJECT Function Module
The ABAP code below is a full code listing to execute function module POPUP_TO_CONFIRM including all data declarations. The code uses the original data declarations rather than the latest in-line data DECLARATION SYNTAX but I have included an ABAP code snippet at the end to show how declarations would look using the newer method of declaring data variables on the fly. This will allow you to compare and fully understand the new inline method. Please note some of the newer syntax such as the @DATA is not available until a later 4.70 service pack (SP8), which i why i have stuck to the origianl for this example.| DATA: | ||||
| lv_plvar | TYPE WPLOG-PLVAR, " | |||
| lt_del_objects | TYPE STANDARD TABLE OF HROBJECT, " | |||
| lv_confirm_exit | TYPE HROBJECT, " | |||
| lv_error_during_delete | TYPE HROBJECT, " | |||
| lv_delete_user_profiles | TYPE HRRHAP-COMMIT_FLG, " 'X' | |||
| lv_delete_dependents | TYPE HRRHAP-COMMIT_FLG, " 'X' | |||
| lv_keep_lupd | TYPE HRRHAP-KEEP_LUPD, " | |||
| lv_workf_actv | TYPE HRRHAP-WORKF_ACTV, " 'X' | |||
| lv_no_except_foreign_data | TYPE HRRHAP-COMMIT_FLG, " SPACE | |||
| lv_otype | TYPE WPLOG-OTYPE, " | |||
| lt_ilfcode | TYPE STANDARD TABLE OF ILFCOD, " | |||
| lv_no_authorization | TYPE ILFCOD, " | |||
| lv_objid | TYPE WPLOG-OBJID, " | |||
| lv_corr_exit | TYPE WPLOG, " | |||
| lv_vtask | TYPE HRRHAP-VTASK, " | |||
| lv_buffer_upd_with_foreign_data | TYPE HRRHAP, " | |||
| lv_order_flg | TYPE HRRHAP-ORDER_FLG, " 'X' | |||
| lv_commit_flg | TYPE HRRHAP-COMMIT_FLG, " 'X' | |||
| lv_authy | TYPE HRRHAP-AUTHY, " 'X' | |||
| lv_confirm | TYPE HRRHAP-COMMIT_FLG, " SPACE | |||
| lv_delete_1205_wfdid | TYPE HRRHAP-COMMIT_FLG. " 'X' |
|   CALL FUNCTION 'RH_DELETE_OBJECT' "Delete Object |
| EXPORTING | ||
| PLVAR | = lv_plvar | |
| DELETE_USER_PROFILES | = lv_delete_user_profiles | |
| DELETE_DEPENDENTS | = lv_delete_dependents | |
| KEEP_LUPD | = lv_keep_lupd | |
| WORKF_ACTV | = lv_workf_actv | |
| NO_EXCEPT_FOREIGN_DATA | = lv_no_except_foreign_data | |
| OTYPE | = lv_otype | |
| OBJID | = lv_objid | |
| VTASK | = lv_vtask | |
| ORDER_FLG | = lv_order_flg | |
| COMMIT_FLG | = lv_commit_flg | |
| AUTHY | = lv_authy | |
| CONFIRM | = lv_confirm | |
| DELETE_1205_WFDID | = lv_delete_1205_wfdid | |
| IMPORTING | ||
| CONFIRM_EXIT | = lv_confirm_exit | |
| TABLES | ||
| DEL_OBJECTS | = lt_del_objects | |
| ILFCODE | = lt_ilfcode | |
| EXCEPTIONS | ||
| ERROR_DURING_DELETE = 1 | ||
| NO_AUTHORIZATION = 2 | ||
| CORR_EXIT = 3 | ||
| BUFFER_UPD_WITH_FOREIGN_DATA = 4 | ||
| . " RH_DELETE_OBJECT | ||
ABAP code using 7.40 inline data declarations to call FM RH_DELETE_OBJECT
The below ABAP code uses the newer in-line data declarations. This allows you to see the coding differences/benefits of the later inline syntax. Please note some of the newer syntax below, such as the @DATA is not available until 4.70 EHP 8.| "SELECT single PLVAR FROM WPLOG INTO @DATA(ld_plvar). | ||||
| "SELECT single COMMIT_FLG FROM HRRHAP INTO @DATA(ld_delete_user_profiles). | ||||
| DATA(ld_delete_user_profiles) | = 'X'. | |||
| "SELECT single COMMIT_FLG FROM HRRHAP INTO @DATA(ld_delete_dependents). | ||||
| DATA(ld_delete_dependents) | = 'X'. | |||
| "SELECT single KEEP_LUPD FROM HRRHAP INTO @DATA(ld_keep_lupd). | ||||
| "SELECT single WORKF_ACTV FROM HRRHAP INTO @DATA(ld_workf_actv). | ||||
| DATA(ld_workf_actv) | = 'X'. | |||
| "SELECT single COMMIT_FLG FROM HRRHAP INTO @DATA(ld_no_except_foreign_data). | ||||
| DATA(ld_no_except_foreign_data) | = ' '. | |||
| "SELECT single OTYPE FROM WPLOG INTO @DATA(ld_otype). | ||||
| "SELECT single OBJID FROM WPLOG INTO @DATA(ld_objid). | ||||
| "SELECT single VTASK FROM HRRHAP INTO @DATA(ld_vtask). | ||||
| "SELECT single ORDER_FLG FROM HRRHAP INTO @DATA(ld_order_flg). | ||||
| DATA(ld_order_flg) | = 'X'. | |||
| "SELECT single COMMIT_FLG FROM HRRHAP INTO @DATA(ld_commit_flg). | ||||
| DATA(ld_commit_flg) | = 'X'. | |||
| "SELECT single AUTHY FROM HRRHAP INTO @DATA(ld_authy). | ||||
| DATA(ld_authy) | = 'X'. | |||
| "SELECT single COMMIT_FLG FROM HRRHAP INTO @DATA(ld_confirm). | ||||
| DATA(ld_confirm) | = ' '. | |||
| "SELECT single COMMIT_FLG FROM HRRHAP INTO @DATA(ld_delete_1205_wfdid). | ||||
| DATA(ld_delete_1205_wfdid) | = 'X'. | |||
Search for further information about these or an SAP related objects