SAP EXIT_SAPLC1CA_004 Function Module for EHS: Determines the language version of the MSDS
EXIT_SAPLC1CA_004 is a standard exit saplc1ca 004 SAP function module available within SAP R/3 or S/4 Hana systems, depending on your version and release level. It is used for EHS: Determines the language version of the MSDS 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 exit saplc1ca 004 FM, simply by entering the name EXIT_SAPLC1CA_004 into the relevant SAP transaction such as SE37 or SE38.
Function Group: XC1A
Program Name: SAPLXC1A
Main Program: SAPLXC1A
Appliation area:
Release date: N/A
Mode(Normal, Remote etc): Normal Function Module
Update:

Function EXIT_SAPLC1CA_004 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 'EXIT_SAPLC1CA_004'"EHS: Determines the language version of the MSDS.
EXPORTING
I_REASON = "Reason for order
I_INFO_FOR_ERROR_MAIL = "Context information for error handling
I_REPORT_VERSION_DATE = "Key date report version
I_CUSDATA = "Customer data
I_MATERIAL_DATA = "Material Data
I_INITIATOR = "Sender
* I_REPTYPE = "Report category
TABLES
I_RECINFO_TAB = "MSDS recipient data
I_SDDATA_TAB = "SD-specific data
E_RECLANGU_TAB = "Table with report languages and recipient link
EXCEPTIONS
SDS_LANGUAGE_VERSION_FAILED = 1
Related Function Modules
Below is a list of related SAP function modules this CUSTOMER FUNCTION exit / user exit is relevant for.C1CA_APPEND_DDO_TO_ERRORTAB NOTRANSL: EHS: Anhängen von Informationen an Errortabelle
C1CA_INTERFACE_ERR_MESSAGE NOTRANSL: EHS: Versenden einer Fehlermeldung bei Abbruch SD_DATA_INTERCHAG
C1CA_MAN_ADD_FILL_WITH_DATA NOTRANSL: EHS: !!! Obsolete !!! efüllen der ADD mit Daten aus dem man. Dia
C1CA_MESSAGE NOTRANSL: EHS: Ausgabe einer Nachricht
C1CA_MESSAGES_WRITE NOTRANSL: EHS: Schreiben von Nachrichten in das Application-Log
C1CA_RAWMAT_GET_FROM_MAT EHS: Determines the mat. ID assigned to substances in EH&S
C1CA_READ_APPLICATION_LOG NOTRANSL: EHS: Aufruf einer Transaktion zum Lesen von Application-Log-Eint
C1CA_REPORT_DISTRIBUTION NOTRANSL: EHS: Starten des Berichtsversandes
C1CA_SDS_LANGUAGE_VERSION EHS: Determines the language version of the MSDS
C1CA_SDS_REPORT_SELECTION NOTRANSL: EHS: Berichtsselektion für SDB Versand
C1CA_SD_ADD_FILL_WITH_DATA NOTRANSL: EHS: !!! Obsolete !!! Befüllen der ADD mit SD-spezifischen Daten
C1CA_SD_DATA_INTERCHANGE NOTRANSL: EHS: !!! Obsolete !!! Schnittstelle für den Datenaustausch zwisc
C1CA_SD_DATA_INT_ERR_MESSAGE NOTRANSL: EHS: !!! Obsolete !!! Versenden einer Fehlermeldung bei Abbruch
C1CA_SD_FILL_EXTENSION NOTRANSL: EHS: Aufruf eines Customer-Exits zum Ermitteln des Erweiterungsf
C1CA_SD_INTERFACE_TO_EHS NOTRANSL: EHS: !!! Obsolete !!! Schnittstelle SD zu EHS
C1CA_SD_INTERFACE_TO_EHS_NEW NOTRANSL: EHS: Schnittstelle SD zu EHS
C1CA_SD_READ_ENVPARA NOTRANSL: EHS: Lesen des Trace-levels für SD-SS
C1CA_SET_LG_APL_WRITE NOTRANSL: EHS: Setzen von lg_apl_write
C1CA_SET_LG_MAIL NOTRANSL: EHS: Setzen von lg_mail
C1CA_SET_TRACE_PARAMETER NOTRANSL: EHS: Setzen des Trace-Parameters
C1CA_SUBTAB_FOR_SDS_DIST NOTRANSL: EHS: Erzeugen einer Tabelle mit allen Stoffen für SDB-Versand
C1CA_SUB_SDS_DIST_CHECK NOTRANSL: EHS: Bestimmung der SDB-Pflicht eines Stoffes aus EH&S
C1CA_VALDAT_FOR_SDS NOTRANSL: EHS: Selektion des Stichtages für Berichtsselektion und Berichts
C1CA_VARIANT_FIND NOTRANSL: EHS: Suchen einer Stoffberichtsgenerierungsvariante
IMPORTING Parameters details for EXIT_SAPLC1CA_004
I_REASON - Reason for order
Data type: CVDREASONOptional: No
Call by Reference: No ( called with pass by value option)
I_INFO_FOR_ERROR_MAIL - Context information for error handling
Data type: RCGSDERROROptional: No
Call by Reference: No ( called with pass by value option)
I_REPORT_VERSION_DATE - Key date report version
Data type: CVDREPORT-VALDATOptional: No
Call by Reference: No ( called with pass by value option)
I_CUSDATA - Customer data
Data type: RCGCUSDATAOptional: No
Call by Reference: No ( called with pass by value option)
I_MATERIAL_DATA - Material Data
Data type: CVDMATOptional: No
Call by Reference: No ( called with pass by value option)
I_INITIATOR - Sender
Data type: CVDDH-INITIATOROptional: No
Call by Reference: No ( called with pass by value option)
I_REPTYPE - Report category
Data type: TCGL1-REPTYPEOptional: Yes
Call by Reference: No ( called with pass by value option)
TABLES Parameters details for EXIT_SAPLC1CA_004
I_RECINFO_TAB - MSDS recipient data
Data type: CVDRECINFOOptional: No
Call by Reference: No ( called with pass by value option)
I_SDDATA_TAB - SD-specific data
Data type: CVDDPOptional: No
Call by Reference: No ( called with pass by value option)
E_RECLANGU_TAB - Table with report languages and recipient link
Data type: ESP10_SDS_CUS_LANGU_TABOptional: No
Call by Reference: No ( called with pass by value option)
EXCEPTIONS details
SDS_LANGUAGE_VERSION_FAILED - Determination of language version failed
Data type:Optional: No
Call by Reference: No ( called with pass by value option)
Copy and paste ABAP code example for EXIT_SAPLC1CA_004 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_i_reason | TYPE CVDREASON, " | |||
| lt_i_recinfo_tab | TYPE STANDARD TABLE OF CVDRECINFO, " | |||
| lv_sds_language_version_failed | TYPE CVDRECINFO, " | |||
| lt_i_sddata_tab | TYPE STANDARD TABLE OF CVDDP, " | |||
| lv_i_info_for_error_mail | TYPE RCGSDERROR, " | |||
| lt_e_reclangu_tab | TYPE STANDARD TABLE OF ESP10_SDS_CUS_LANGU_TAB, " | |||
| lv_i_report_version_date | TYPE CVDREPORT-VALDAT, " | |||
| lv_i_cusdata | TYPE RCGCUSDATA, " | |||
| lv_i_material_data | TYPE CVDMAT, " | |||
| lv_i_initiator | TYPE CVDDH-INITIATOR, " | |||
| lv_i_reptype | TYPE TCGL1-REPTYPE. " |
|   CALL FUNCTION 'EXIT_SAPLC1CA_004' "EHS: Determines the language version of the MSDS |
| EXPORTING | ||
| I_REASON | = lv_i_reason | |
| I_INFO_FOR_ERROR_MAIL | = lv_i_info_for_error_mail | |
| I_REPORT_VERSION_DATE | = lv_i_report_version_date | |
| I_CUSDATA | = lv_i_cusdata | |
| I_MATERIAL_DATA | = lv_i_material_data | |
| I_INITIATOR | = lv_i_initiator | |
| I_REPTYPE | = lv_i_reptype | |
| TABLES | ||
| I_RECINFO_TAB | = lt_i_recinfo_tab | |
| I_SDDATA_TAB | = lt_i_sddata_tab | |
| E_RECLANGU_TAB | = lt_e_reclangu_tab | |
| EXCEPTIONS | ||
| SDS_LANGUAGE_VERSION_FAILED = 1 | ||
| . " EXIT_SAPLC1CA_004 | ||
ABAP code using 7.40 inline data declarations to call FM EXIT_SAPLC1CA_004
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 VALDAT FROM CVDREPORT INTO @DATA(ld_i_report_version_date). | ||||
| "SELECT single INITIATOR FROM CVDDH INTO @DATA(ld_i_initiator). | ||||
| "SELECT single REPTYPE FROM TCGL1 INTO @DATA(ld_i_reptype). | ||||
Search for further information about these or an SAP related objects