SAP OBJECT_CHECK_EWAOBJ Function Module for Classification: Material Existence Check
OBJECT_CHECK_EWAOBJ is a standard object check ewaobj SAP function module available within SAP R/3 or S/4 Hana systems, depending on your version and release level. It is used for Classification: Material Existence Check 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 object check ewaobj FM, simply by entering the name OBJECT_CHECK_EWAOBJ into the relevant SAP transaction such as SE37 or SE38.
Function Group: EEWA_MD_RO
Program Name: SAPLEEWA_MD_RO
Main Program: SAPLEEWA_MD_RO
Appliation area: M
Release date: N/A
Mode(Normal, Remote etc): Normal Function Module
Update:

Function OBJECT_CHECK_EWAOBJ 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 'OBJECT_CHECK_EWAOBJ'"Classification: Material Existence Check.
EXPORTING
* CALLED_FROM = 1 "1=from doc. 2=from class
* LANGUAGE = SY-LANGU "Language Key
* LOCK = ' ' "Flag: X = Master data rec. will be locked
* SINGLE = ' ' "Individual access via CL20/CL21
* DATE_OF_CHANGE = "Changed On
* I_AUTH_CHK = ' ' "
IMPORTING
FAULT_TEXT = "Error Text for Output in Classification
MEINS = "Unit of Measure
MESSAGE_TYPE = "Message Type E,W,I, or S
NO_AUTH = "No Authorization for Object
DISTRIBUTION_LOCK = "Distribution Lock is Set
TABLES
OTAB = "Materials Table
EXCEPTIONS
FOREIGN_LOCK = 1 OBJECT_NOT_FOUND = 2 SYSTEM_FAILURE = 3
Customer Function user exits
Below is a list of CUSTOMER FUNCTION exit user exits that are available within this program and maybe relevant for this FM.EXIT_SAPLEEWA_MD_ROUTE_001 Checks for Comparison: Service Frequency for Route/Container
EXIT_SAPLEEWA_MD_ROUTE_002 Prepares Customer Subscreen Call of Route
EXIT_SAPLEEWA_MD_ROUTE_003 Prepares Customer Subscreen (PAI) of Route
EXIT_SAPLEEWA_MD_ROUTE_004 Closes Route Customer Subscreen (PAI)
EXIT_SAPLEEWA_MD_RO_001 Check Default Route for Service Frequency
EXIT_SAPLEEWA_MD_RO_002 Check on Admissibility of Service Interval Grouping
EXIT_SAPLEEWA_MD_RO_004 Prepares the Customer Subscreen Call for Header Data
EXIT_SAPLEEWA_MD_RO_005 Prepares the CALL SUBSCREEN PAI for Header Data
EXIT_SAPLEEWA_MD_RO_006 Closes the CALL SUBSCREEN PAI of the Header Data
EXIT_SAPLEEWA_MD_RO_007 Prepares the Customer Subscreen Call for Item Data
EXIT_SAPLEEWA_MD_RO_008 Prepares the CALL SUBSCREEN PAI for Item Data
EXIT_SAPLEEWA_MD_RO_009 Closes the CALL SUBSCREEN PAI of the Item Data
IMPORTING Parameters details for OBJECT_CHECK_EWAOBJ
CALLED_FROM - 1=from doc. 2=from class
Data type:Default: 1
Optional: Yes
Call by Reference: Yes
LANGUAGE - Language Key
Data type: SY-LANGUDefault: SY-LANGU
Optional: Yes
Call by Reference: Yes
LOCK - Flag: X = Master data rec. will be locked
Data type:Default: SPACE
Optional: Yes
Call by Reference: Yes
SINGLE - Individual access via CL20/CL21
Data type:Default: SPACE
Optional: Yes
Call by Reference: Yes
DATE_OF_CHANGE - Changed On
Data type: RMCLF-DATUV1Optional: Yes
Call by Reference: Yes
I_AUTH_CHK -
Data type: RMCLF-KREUZDefault: SPACE
Optional: Yes
Call by Reference: Yes
EXPORTING Parameters details for OBJECT_CHECK_EWAOBJ
FAULT_TEXT - Error Text for Output in Classification
Data type:Optional: No
Call by Reference: Yes
MEINS - Unit of Measure
Data type: MARA-MEINSOptional: No
Call by Reference: Yes
MESSAGE_TYPE - Message Type E,W,I, or S
Data type:Optional: No
Call by Reference: Yes
NO_AUTH - No Authorization for Object
Data type:Optional: No
Call by Reference: Yes
DISTRIBUTION_LOCK - Distribution Lock is Set
Data type: T141-DLOCKOptional: No
Call by Reference: Yes
TABLES Parameters details for OBJECT_CHECK_EWAOBJ
OTAB - Materials Table
Data type: RMCLOBTXOptional: No
Call by Reference: No ( called with pass by value option)
EXCEPTIONS details
FOREIGN_LOCK - Record Locked by Another User
Data type:Optional: No
Call by Reference: No ( called with pass by value option)
OBJECT_NOT_FOUND - Material Does Not Exist
Data type:Optional: No
Call by Reference: No ( called with pass by value option)
SYSTEM_FAILURE - System Error When Locking
Data type:Optional: No
Call by Reference: No ( called with pass by value option)
Copy and paste ABAP code example for OBJECT_CHECK_EWAOBJ 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: | ||||
| lt_otab | TYPE STANDARD TABLE OF RMCLOBTX, " | |||
| lv_fault_text | TYPE RMCLOBTX, " | |||
| lv_called_from | TYPE RMCLOBTX, " 1 | |||
| lv_foreign_lock | TYPE RMCLOBTX, " | |||
| lv_meins | TYPE MARA-MEINS, " | |||
| lv_language | TYPE SY-LANGU, " SY-LANGU | |||
| lv_object_not_found | TYPE SY, " | |||
| lv_lock | TYPE SY, " SPACE | |||
| lv_message_type | TYPE SY, " | |||
| lv_system_failure | TYPE SY, " | |||
| lv_single | TYPE SY, " SPACE | |||
| lv_no_auth | TYPE SY, " | |||
| lv_date_of_change | TYPE RMCLF-DATUV1, " | |||
| lv_distribution_lock | TYPE T141-DLOCK, " | |||
| lv_i_auth_chk | TYPE RMCLF-KREUZ. " SPACE |
|   CALL FUNCTION 'OBJECT_CHECK_EWAOBJ' "Classification: Material Existence Check |
| EXPORTING | ||
| CALLED_FROM | = lv_called_from | |
| LANGUAGE | = lv_language | |
| LOCK | = lv_lock | |
| SINGLE | = lv_single | |
| DATE_OF_CHANGE | = lv_date_of_change | |
| I_AUTH_CHK | = lv_i_auth_chk | |
| IMPORTING | ||
| FAULT_TEXT | = lv_fault_text | |
| MEINS | = lv_meins | |
| MESSAGE_TYPE | = lv_message_type | |
| NO_AUTH | = lv_no_auth | |
| DISTRIBUTION_LOCK | = lv_distribution_lock | |
| TABLES | ||
| OTAB | = lt_otab | |
| EXCEPTIONS | ||
| FOREIGN_LOCK = 1 | ||
| OBJECT_NOT_FOUND = 2 | ||
| SYSTEM_FAILURE = 3 | ||
| . " OBJECT_CHECK_EWAOBJ | ||
ABAP code using 7.40 inline data declarations to call FM OBJECT_CHECK_EWAOBJ
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.| DATA(ld_called_from) | = 1. | |||
| "SELECT single MEINS FROM MARA INTO @DATA(ld_meins). | ||||
| "SELECT single LANGU FROM SY INTO @DATA(ld_language). | ||||
| DATA(ld_language) | = SY-LANGU. | |||
| DATA(ld_lock) | = ' '. | |||
| DATA(ld_single) | = ' '. | |||
| "SELECT single DATUV1 FROM RMCLF INTO @DATA(ld_date_of_change). | ||||
| "SELECT single DLOCK FROM T141 INTO @DATA(ld_distribution_lock). | ||||
| "SELECT single KREUZ FROM RMCLF INTO @DATA(ld_i_auth_chk). | ||||
| DATA(ld_i_auth_chk) | = ' '. | |||
Search for further information about these or an SAP related objects