SAP RSDSO_DU_WRITE_API Function Module for Write API for DataStore objects (advanced)
RSDSO_DU_WRITE_API is a standard rsdso du write api SAP function module available within SAP R/3 or S/4 Hana systems, depending on your version and release level. It is used for Write API for DataStore objects (advanced) 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 rsdso du write api FM, simply by entering the name RSDSO_DU_WRITE_API into the relevant SAP transaction such as SE37 or SE38.
Function Group: RSDSO_API_DIRECT_UPD
Program Name: SAPLRSDSO_API_DIRECT_UPD
Main Program: SAPLRSDSO_API_DIRECT_UPD
Appliation area:
Release date: N/A
Mode(Normal, Remote etc): Normal Function Module
Update:

Function RSDSO_DU_WRITE_API 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 'RSDSO_DU_WRITE_API'"Write API for DataStore objects (advanced).
EXPORTING
I_ADSONM = "Technical name of DataStore object (advanced)
* I_ALLOW_NEW_SIDS = RS_C_TRUE "Create new SIDs for CHAVLs if not exist
* I_INSERT_ONLY = RS_C_TRUE "Boolean
* I_TRIGGER_MERGE = RS_C_TRUE "
IT_DATA = "Data to be loaded into inbound queue
IMPORTING
E_LINES_INSERTED = "Number of records inserted into inbound queue
ET_MSG = "Log messages
E_UPD_REQ_TSN = "Request TSN of load request
EXCEPTIONS
WRITE_FAILED = 1 DATASTORE_NOT_FOUND = 2
IMPORTING Parameters details for RSDSO_DU_WRITE_API
I_ADSONM - Technical name of DataStore object (advanced)
Data type: RSOADSONMOptional: No
Call by Reference: Yes
I_ALLOW_NEW_SIDS - Create new SIDs for CHAVLs if not exist
Data type: RS_BOOLDefault: RS_C_TRUE
Optional: Yes
Call by Reference: Yes
I_INSERT_ONLY - Boolean
Data type: RS_BOOLDefault: RS_C_TRUE
Optional: Yes
Call by Reference: Yes
I_TRIGGER_MERGE -
Data type: RS_BOOLDefault: RS_C_TRUE
Optional: Yes
Call by Reference: Yes
IT_DATA - Data to be loaded into inbound queue
Data type: STANDARD TABLEOptional: No
Call by Reference: Yes
EXPORTING Parameters details for RSDSO_DU_WRITE_API
E_LINES_INSERTED - Number of records inserted into inbound queue
Data type: INT4Optional: No
Call by Reference: Yes
ET_MSG - Log messages
Data type: RS_T_MSGOptional: No
Call by Reference: Yes
E_UPD_REQ_TSN - Request TSN of load request
Data type: RSPM_REQUEST_TSNOptional: No
Call by Reference: Yes
EXCEPTIONS details
WRITE_FAILED -
Data type:Optional: No
Call by Reference: No ( called with pass by value option)
DATASTORE_NOT_FOUND -
Data type:Optional: No
Call by Reference: No ( called with pass by value option)
Copy and paste ABAP code example for RSDSO_DU_WRITE_API 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_adsonm | TYPE RSOADSONM, " | |||
| lv_write_failed | TYPE RSOADSONM, " | |||
| lv_e_lines_inserted | TYPE INT4, " | |||
| lv_et_msg | TYPE RS_T_MSG, " | |||
| lv_i_allow_new_sids | TYPE RS_BOOL, " RS_C_TRUE | |||
| lv_datastore_not_found | TYPE RS_BOOL, " | |||
| lv_e_upd_req_tsn | TYPE RSPM_REQUEST_TSN, " | |||
| lv_i_insert_only | TYPE RS_BOOL, " RS_C_TRUE | |||
| lv_i_trigger_merge | TYPE RS_BOOL, " RS_C_TRUE | |||
| lv_it_data | TYPE STANDARD TABLE. " |
|   CALL FUNCTION 'RSDSO_DU_WRITE_API' "Write API for DataStore objects (advanced) |
| EXPORTING | ||
| I_ADSONM | = lv_i_adsonm | |
| I_ALLOW_NEW_SIDS | = lv_i_allow_new_sids | |
| I_INSERT_ONLY | = lv_i_insert_only | |
| I_TRIGGER_MERGE | = lv_i_trigger_merge | |
| IT_DATA | = lv_it_data | |
| IMPORTING | ||
| E_LINES_INSERTED | = lv_e_lines_inserted | |
| ET_MSG | = lv_et_msg | |
| E_UPD_REQ_TSN | = lv_e_upd_req_tsn | |
| EXCEPTIONS | ||
| WRITE_FAILED = 1 | ||
| DATASTORE_NOT_FOUND = 2 | ||
| . " RSDSO_DU_WRITE_API | ||
ABAP code using 7.40 inline data declarations to call FM RSDSO_DU_WRITE_API
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_i_allow_new_sids) | = RS_C_TRUE. | |||
| DATA(ld_i_insert_only) | = RS_C_TRUE. | |||
| DATA(ld_i_trigger_merge) | = RS_C_TRUE. | |||
Search for further information about these or an SAP related objects