SO_DOCUMENT_INSERT is a standard SAP function module available within R/3 SAP systems depending on your version and release level. Below is the pattern details for this FM showing its interface including any import and export parameters, exceptions etc as well as any documentation contributions (Comments) specific to the object.
See here to view full function module documentation and code listing, simply by entering the name SO_DOCUMENT_INSERT into the relevant SAP transaction such as SE37 or SE80.
Associated Function Group:
SOA1
Released Date:
Not Released
Processing type: Remote-Enabled
CALL FUNCTION 'SO_DOCUMENT_INSERT' "SAPoffice: Insert document with binary content
EXPORTING
parent_id = " soodk
object_hd_change = " sood1
* object_fl_change = " sofm1
document_type = " sood-objtp
* owner = " soud-usrnam
IMPORTING
document_id = " soodk
object_hd_display = " sood2
object_fl_display = " sofm2
* TABLES
* objcont_text = " soli
* objcont_bin = " solix
* objhead = " soli
* objpara = " selc
* objparb = " soop1
EXCEPTIONS
ACTIVE_USER_NOT_EXIST = 1 "
DL_NAME_EXIST = 2 "
FOLDER_NOT_EXIST = 3 "
FOLDER_NO_AUTHORIZATION = 4 "
OBJECT_TYPE_NOT_EXIST = 5 "
OPERATION_NO_AUTHORIZATION = 6 "
OWNER_NOT_EXIST = 7 "
PARAMETER_ERROR = 8 "
SUBSTITUTE_NOT_ACTIVE = 9 "
SUBSTITUTE_NOT_DEFINED = 10 "
X_ERROR = 11 "
. " SO_DOCUMENT_INSERT
The ABAP code below is a full code listing to execute function module SO_DOCUMENT_INSERT including all data declarations. The code uses 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 original method of declaring data variables up front. 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).
| ld_document_id | TYPE SOODK , |
| ld_object_hd_display | TYPE SOOD2 , |
| ld_object_fl_display | TYPE SOFM2 , |
| it_objcont_text | TYPE STANDARD TABLE OF SOLI,"TABLES PARAM |
| wa_objcont_text | LIKE LINE OF it_objcont_text , |
| it_objcont_bin | TYPE STANDARD TABLE OF SOLIX,"TABLES PARAM |
| wa_objcont_bin | LIKE LINE OF it_objcont_bin , |
| it_objhead | TYPE STANDARD TABLE OF SOLI,"TABLES PARAM |
| wa_objhead | LIKE LINE OF it_objhead , |
| it_objpara | TYPE STANDARD TABLE OF SELC,"TABLES PARAM |
| wa_objpara | LIKE LINE OF it_objpara , |
| it_objparb | TYPE STANDARD TABLE OF SOOP1,"TABLES PARAM |
| wa_objparb | LIKE LINE OF it_objparb . |
The below ABAP code uses the older none in-line data declarations. This allows you to see the coding differences/benefits of the later inline syntax. It may also be useful if you are using an older version of SAP as some of the newer syntax above, such as the @DATA is not available until 4.70 EHP 8.
DATA:
| ld_document_id | TYPE SOODK , |
| ld_parent_id | TYPE SOODK , |
| it_objcont_text | TYPE STANDARD TABLE OF SOLI , |
| wa_objcont_text | LIKE LINE OF it_objcont_text, |
| ld_object_hd_display | TYPE SOOD2 , |
| ld_object_hd_change | TYPE SOOD1 , |
| it_objcont_bin | TYPE STANDARD TABLE OF SOLIX , |
| wa_objcont_bin | LIKE LINE OF it_objcont_bin, |
| ld_object_fl_display | TYPE SOFM2 , |
| ld_object_fl_change | TYPE SOFM1 , |
| it_objhead | TYPE STANDARD TABLE OF SOLI , |
| wa_objhead | LIKE LINE OF it_objhead, |
| it_objpara | TYPE STANDARD TABLE OF SELC , |
| wa_objpara | LIKE LINE OF it_objpara, |
| ld_document_type | TYPE SOOD-OBJTP , |
| it_objparb | TYPE STANDARD TABLE OF SOOP1 , |
| wa_objparb | LIKE LINE OF it_objparb, |
| ld_owner | TYPE SOUD-USRNAM . |
Please help keep this info upto date and use the comments section below to add useful hints, tips and information specific to this SAP function. This will then be available for you and other users to easily find by simply searching on the object name SO_DOCUMENT_INSERT or its description.