SAP SO_OBJECT_SEND Function Module for Send in SAPoffice and Externally









SO_OBJECT_SEND is a standard so object send SAP function module available within SAP R/3 or S/4 Hana systems, depending on your version and release level. It is used for Send in SAPoffice and Externally 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 so object send FM, simply by entering the name SO_OBJECT_SEND into the relevant SAP transaction such as SE37 or SE38.

Function Group: SOA2
Program Name: SAPLSOA2
Main Program: SAPLSOA2
Appliation area: S
Release date: N/A
Mode(Normal, Remote etc): Remote-Enabled
Update:



Function SO_OBJECT_SEND 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 'SO_OBJECT_SEND'"Send in SAPoffice and Externally
EXPORTING
* FOLDER_ID = ' ' "Existing object: Folder ID
* DELETE_FLAG = ' ' "
* SENDER = ' ' "
* CHECK_SEND_AUTHORITY = ' ' "
* CHECK_ALREADY_SENT = ' ' "
* GIVE_OBJECT_BACK = "
* ORIGINATOR = ' ' "
* ORIGINATOR_TYPE = 'J' "
* LINK_FOLDER_ID = ' ' "
* SEND_REQUEST_OID = ' ' "GUID of send request
* IP_ENCRYPT = 'U' "Indicator: Encryption Required
* FORWARDER = ' ' "Existing object: Name of forwarder
* IP_SIGN = 'U' "Indicator: Signature Required
* IP_REC_COUNT_ADD = "Number of Copy-List Recipients Through SMTP Plug-In
* OBJECT_FL_CHANGE = "New object: Folder information
* OBJECT_HD_CHANGE = ' ' "New object: General header data
* OBJECT_ID = ' ' "Existing object: ID of object
* OBJECT_TYPE = ' ' "New object: Object type
* OUTBOX_FLAG = ' ' "Store object in outbox
* OWNER = ' ' "User responsible for the transmission process
* STORE_FLAG = ' ' "Store new object in folder

IMPORTING
OBJECT_ID_NEW = "New object: ID of object
SENT_TO_ALL = "Not sent to all
ALL_BINDING_DONE = "
OFFICE_OBJECT_KEY = "
ORIGINATOR_ID = "
E_SEND_REQUEST_OID = "Globally Unique Identifier

TABLES
* OBJCONT = "New object: Contents
* LINK_LIST = "
* APPLICATION_OBJECT = "
* OBJHEAD = "New object: Specific header data
* OBJPARA = "New object: Parameter for transaction/report
* OBJPARB = "New object: Parameter for dialog/function
* RECEIVERS = "Recipient table with send attributes
* PACKING_LIST = "
* ATT_CONT = "
* ATT_HEAD = "
* NOTE_TEXT = "

EXCEPTIONS
ACTIVE_USER_NOT_EXIST = 1 OBJECT_NO_AUTHORIZATION = 10 OBJECT_TYPE_NOT_EXIST = 11 OPERATION_NO_AUTHORIZATION = 12 OWNER_NOT_EXIST = 13 PARAMETER_ERROR = 14 SUBSTITUTE_NOT_ACTIVE = 15 SUBSTITUTE_NOT_DEFINED = 16 SYSTEM_FAILURE = 17 TOO_MUCH_RECEIVERS = 18 USER_NOT_EXIST = 19 COMMUNICATION_FAILURE = 2 ORIGINATOR_NOT_EXIST = 20 X_ERROR = 21 COMPONENT_NOT_AVAILABLE = 3 FOLDER_NOT_EXIST = 4 FOLDER_NO_AUTHORIZATION = 5 FORWARDER_NOT_EXIST = 6 NOTE_NOT_EXIST = 7 OBJECT_NOT_EXIST = 8 OBJECT_NOT_SENT = 9
.



IMPORTING Parameters details for SO_OBJECT_SEND

FOLDER_ID - Existing object: Folder ID

Data type: SOODK
Default: SPACE
Optional: Yes
Call by Reference: No ( called with pass by value option)

DELETE_FLAG -

Data type: SONV-FLAG
Default: SPACE
Optional: Yes
Call by Reference: No ( called with pass by value option)

SENDER -

Data type: SOUD-USRNAM
Default: SPACE
Optional: Yes
Call by Reference: No ( called with pass by value option)

CHECK_SEND_AUTHORITY -

Data type: SONV-FLAG
Default: SPACE
Optional: Yes
Call by Reference: No ( called with pass by value option)

CHECK_ALREADY_SENT -

Data type: SOXAS
Default: SPACE
Optional: Yes
Call by Reference: No ( called with pass by value option)

GIVE_OBJECT_BACK -

Data type: SONV-FLAG
Optional: Yes
Call by Reference: No ( called with pass by value option)

ORIGINATOR -

Data type: SOOS1-RECEXTNAM
Default: SPACE
Optional: Yes
Call by Reference: No ( called with pass by value option)

ORIGINATOR_TYPE -

Data type: SOOS1-RECESC
Default: 'J'
Optional: Yes
Call by Reference: No ( called with pass by value option)

LINK_FOLDER_ID -

Data type: SOODK
Default: SPACE
Optional: Yes
Call by Reference: No ( called with pass by value option)

SEND_REQUEST_OID - GUID of send request

Data type: OS_GUID
Default: SPACE
Optional: Yes
Call by Reference: No ( called with pass by value option)

IP_ENCRYPT - Indicator: Encryption Required

Data type: BCSD_ENCR
Default: 'U'
Optional: Yes
Call by Reference: No ( called with pass by value option)

FORWARDER - Existing object: Name of forwarder

Data type: SOUD-USRNAM
Default: SPACE
Optional: Yes
Call by Reference: No ( called with pass by value option)

IP_SIGN - Indicator: Signature Required

Data type: BCSD_SIGN
Default: 'U'
Optional: Yes
Call by Reference: No ( called with pass by value option)

IP_REC_COUNT_ADD - Number of Copy-List Recipients Through SMTP Plug-In

Data type: I
Optional: Yes
Call by Reference: No ( called with pass by value option)

OBJECT_FL_CHANGE - New object: Folder information

Data type: SOFM1
Optional: Yes
Call by Reference: No ( called with pass by value option)

OBJECT_HD_CHANGE - New object: General header data

Data type: SOOD1
Default: SPACE
Optional: Yes
Call by Reference: No ( called with pass by value option)

OBJECT_ID - Existing object: ID of object

Data type: SOODK
Default: SPACE
Optional: Yes
Call by Reference: No ( called with pass by value option)

OBJECT_TYPE - New object: Object type

Data type: SOOD-OBJTP
Default: SPACE
Optional: Yes
Call by Reference: No ( called with pass by value option)

OUTBOX_FLAG - Store object in outbox

Data type: SONV-FLAG
Default: SPACE
Optional: Yes
Call by Reference: No ( called with pass by value option)

OWNER - User responsible for the transmission process

Data type: SOUD-USRNAM
Default: SPACE
Optional: Yes
Call by Reference: No ( called with pass by value option)

STORE_FLAG - Store new object in folder

Data type: SONV-FLAG
Default: SPACE
Optional: Yes
Call by Reference: No ( called with pass by value option)

EXPORTING Parameters details for SO_OBJECT_SEND

OBJECT_ID_NEW - New object: ID of object

Data type: SOODK
Optional: No
Call by Reference: No ( called with pass by value option)

SENT_TO_ALL - Not sent to all

Data type: SONV-FLAG
Optional: No
Call by Reference: No ( called with pass by value option)

ALL_BINDING_DONE -

Data type: SONV-FLAG
Optional: No
Call by Reference: No ( called with pass by value option)

OFFICE_OBJECT_KEY -

Data type: SWOTOBJID-OBJKEY
Optional: No
Call by Reference: No ( called with pass by value option)

ORIGINATOR_ID -

Data type: SOUDK
Optional: No
Call by Reference: No ( called with pass by value option)

E_SEND_REQUEST_OID - Globally Unique Identifier

Data type: OS_GUID
Optional: No
Call by Reference: No ( called with pass by value option)

TABLES Parameters details for SO_OBJECT_SEND

OBJCONT - New object: Contents

Data type: SOLI
Optional: Yes
Call by Reference: No ( called with pass by value option)

LINK_LIST -

Data type: SOXLL
Optional: Yes
Call by Reference: No ( called with pass by value option)

APPLICATION_OBJECT -

Data type: SWOTOBJID
Optional: Yes
Call by Reference: No ( called with pass by value option)

OBJHEAD - New object: Specific header data

Data type: SOLI
Optional: Yes
Call by Reference: No ( called with pass by value option)

OBJPARA - New object: Parameter for transaction/report

Data type: SELC
Optional: Yes
Call by Reference: No ( called with pass by value option)

OBJPARB - New object: Parameter for dialog/function

Data type: SOOP1
Optional: Yes
Call by Reference: No ( called with pass by value option)

RECEIVERS - Recipient table with send attributes

Data type: SOOS1
Optional: Yes
Call by Reference: Yes

PACKING_LIST -

Data type: SOXPL
Optional: Yes
Call by Reference: No ( called with pass by value option)

ATT_CONT -

Data type: SOLI
Optional: Yes
Call by Reference: No ( called with pass by value option)

ATT_HEAD -

Data type: SOLI
Optional: Yes
Call by Reference: No ( called with pass by value option)

NOTE_TEXT -

Data type: SOLI
Optional: Yes
Call by Reference: No ( called with pass by value option)

EXCEPTIONS details

ACTIVE_USER_NOT_EXIST - Active user is not a SAPoffice user

Data type:
Optional: No
Call by Reference: No ( called with pass by value option)

OBJECT_NO_AUTHORIZATION - No access authorization for object

Data type:
Optional: No
Call by Reference: No ( called with pass by value option)

OBJECT_TYPE_NOT_EXIST - Specified object type does not exist

Data type:
Optional: No
Call by Reference: No ( called with pass by value option)

OPERATION_NO_AUTHORIZATION - No authorization for this operation

Data type:
Optional: No
Call by Reference: No ( called with pass by value option)

OWNER_NOT_EXIST - The responsible user does not exist

Data type:
Optional: No
Call by Reference: No ( called with pass by value option)

PARAMETER_ERROR - Data entered incorrectly

Data type:
Optional: No
Call by Reference: No ( called with pass by value option)

SUBSTITUTE_NOT_ACTIVE - Substitute is inactive

Data type:
Optional: No
Call by Reference: No ( called with pass by value option)

SUBSTITUTE_NOT_DEFINED - Substitute not defined

Data type:
Optional: No
Call by Reference: No ( called with pass by value option)

SYSTEM_FAILURE -

Data type:
Optional: No
Call by Reference: No ( called with pass by value option)

TOO_MUCH_RECEIVERS -

Data type:
Optional: No
Call by Reference: No ( called with pass by value option)

USER_NOT_EXIST - SAPoffice user does not exist

Data type:
Optional: No
Call by Reference: No ( called with pass by value option)

COMMUNICATION_FAILURE -

Data type:
Optional: No
Call by Reference: No ( called with pass by value option)

ORIGINATOR_NOT_EXIST -

Data type:
Optional: No
Call by Reference: No ( called with pass by value option)

X_ERROR - Internal error

Data type:
Optional: No
Call by Reference: No ( called with pass by value option)

COMPONENT_NOT_AVAILABLE - SAPoffice component is inactive

Data type:
Optional: No
Call by Reference: No ( called with pass by value option)

FOLDER_NOT_EXIST - Folder does not exist

Data type:
Optional: No
Call by Reference: No ( called with pass by value option)

FOLDER_NO_AUTHORIZATION - No access authorization for folder

Data type:
Optional: No
Call by Reference: No ( called with pass by value option)

FORWARDER_NOT_EXIST - Forwarder does not exist

Data type:
Optional: No
Call by Reference: No ( called with pass by value option)

NOTE_NOT_EXIST - The specified note does not exist

Data type:
Optional: No
Call by Reference: No ( called with pass by value option)

OBJECT_NOT_EXIST - Object does not exist

Data type:
Optional: No
Call by Reference: No ( called with pass by value option)

OBJECT_NOT_SENT - Object was not sent

Data type:
Optional: No
Call by Reference: No ( called with pass by value option)

Copy and paste ABAP code example for SO_OBJECT_SEND 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_objcont  TYPE STANDARD TABLE OF SOLI, "   
lv_folder_id  TYPE SOODK, "   SPACE
lv_object_id_new  TYPE SOODK, "   
lv_active_user_not_exist  TYPE SOODK, "   
lt_link_list  TYPE STANDARD TABLE OF SOXLL, "   
lv_delete_flag  TYPE SONV-FLAG, "   SPACE
lv_object_no_authorization  TYPE SONV, "   
lv_sender  TYPE SOUD-USRNAM, "   SPACE
lt_application_object  TYPE STANDARD TABLE OF SWOTOBJID, "   
lv_object_type_not_exist  TYPE SWOTOBJID, "   
lv_check_send_authority  TYPE SONV-FLAG, "   SPACE
lv_operation_no_authorization  TYPE SONV, "   
lv_owner_not_exist  TYPE SONV, "   
lv_check_already_sent  TYPE SOXAS, "   SPACE
lv_parameter_error  TYPE SOXAS, "   
lv_give_object_back  TYPE SONV-FLAG, "   
lv_originator  TYPE SOOS1-RECEXTNAM, "   SPACE
lv_substitute_not_active  TYPE SOOS1, "   
lv_originator_type  TYPE SOOS1-RECESC, "   'J'
lv_substitute_not_defined  TYPE SOOS1, "   
lv_link_folder_id  TYPE SOODK, "   SPACE
lv_system_failure  TYPE SOODK, "   
lv_send_request_oid  TYPE OS_GUID, "   SPACE
lv_too_much_receivers  TYPE OS_GUID, "   
lv_ip_encrypt  TYPE BCSD_ENCR, "   'U'
lv_user_not_exist  TYPE BCSD_ENCR, "   
lt_objhead  TYPE STANDARD TABLE OF SOLI, "   
lv_forwarder  TYPE SOUD-USRNAM, "   SPACE
lv_sent_to_all  TYPE SONV-FLAG, "   
lv_communication_failure  TYPE SONV, "   
lv_ip_sign  TYPE BCSD_SIGN, "   'U'
lv_originator_not_exist  TYPE BCSD_SIGN, "   
lv_x_error  TYPE BCSD_SIGN, "   
lv_ip_rec_count_add  TYPE I, "   
lt_objpara  TYPE STANDARD TABLE OF SELC, "   
lv_all_binding_done  TYPE SONV-FLAG, "   
lv_object_fl_change  TYPE SOFM1, "   
lv_component_not_available  TYPE SOFM1, "   
lt_objparb  TYPE STANDARD TABLE OF SOOP1, "   
lv_folder_not_exist  TYPE SOOP1, "   
lv_object_hd_change  TYPE SOOD1, "   SPACE
lv_office_object_key  TYPE SWOTOBJID-OBJKEY, "   
lv_object_id  TYPE SOODK, "   SPACE
lt_receivers  TYPE STANDARD TABLE OF SOOS1, "   
lv_originator_id  TYPE SOUDK, "   
lv_folder_no_authorization  TYPE SOUDK, "   
lv_object_type  TYPE SOOD-OBJTP, "   SPACE
lt_packing_list  TYPE STANDARD TABLE OF SOXPL, "   
lv_e_send_request_oid  TYPE OS_GUID, "   
lv_forwarder_not_exist  TYPE OS_GUID, "   
lt_att_cont  TYPE STANDARD TABLE OF SOLI, "   
lv_outbox_flag  TYPE SONV-FLAG, "   SPACE
lv_note_not_exist  TYPE SONV, "   
lv_owner  TYPE SOUD-USRNAM, "   SPACE
lt_att_head  TYPE STANDARD TABLE OF SOLI, "   
lv_object_not_exist  TYPE SOLI, "   
lt_note_text  TYPE STANDARD TABLE OF SOLI, "   
lv_store_flag  TYPE SONV-FLAG, "   SPACE
lv_object_not_sent  TYPE SONV. "   

  CALL FUNCTION 'SO_OBJECT_SEND'  "Send in SAPoffice and Externally
    EXPORTING
         FOLDER_ID = lv_folder_id
         DELETE_FLAG = lv_delete_flag
         SENDER = lv_sender
         CHECK_SEND_AUTHORITY = lv_check_send_authority
         CHECK_ALREADY_SENT = lv_check_already_sent
         GIVE_OBJECT_BACK = lv_give_object_back
         ORIGINATOR = lv_originator
         ORIGINATOR_TYPE = lv_originator_type
         LINK_FOLDER_ID = lv_link_folder_id
         SEND_REQUEST_OID = lv_send_request_oid
         IP_ENCRYPT = lv_ip_encrypt
         FORWARDER = lv_forwarder
         IP_SIGN = lv_ip_sign
         IP_REC_COUNT_ADD = lv_ip_rec_count_add
         OBJECT_FL_CHANGE = lv_object_fl_change
         OBJECT_HD_CHANGE = lv_object_hd_change
         OBJECT_ID = lv_object_id
         OBJECT_TYPE = lv_object_type
         OUTBOX_FLAG = lv_outbox_flag
         OWNER = lv_owner
         STORE_FLAG = lv_store_flag
    IMPORTING
         OBJECT_ID_NEW = lv_object_id_new
         SENT_TO_ALL = lv_sent_to_all
         ALL_BINDING_DONE = lv_all_binding_done
         OFFICE_OBJECT_KEY = lv_office_object_key
         ORIGINATOR_ID = lv_originator_id
         E_SEND_REQUEST_OID = lv_e_send_request_oid
    TABLES
         OBJCONT = lt_objcont
         LINK_LIST = lt_link_list
         APPLICATION_OBJECT = lt_application_object
         OBJHEAD = lt_objhead
         OBJPARA = lt_objpara
         OBJPARB = lt_objparb
         RECEIVERS = lt_receivers
         PACKING_LIST = lt_packing_list
         ATT_CONT = lt_att_cont
         ATT_HEAD = lt_att_head
         NOTE_TEXT = lt_note_text
    EXCEPTIONS
        ACTIVE_USER_NOT_EXIST = 1
        OBJECT_NO_AUTHORIZATION = 10
        OBJECT_TYPE_NOT_EXIST = 11
        OPERATION_NO_AUTHORIZATION = 12
        OWNER_NOT_EXIST = 13
        PARAMETER_ERROR = 14
        SUBSTITUTE_NOT_ACTIVE = 15
        SUBSTITUTE_NOT_DEFINED = 16
        SYSTEM_FAILURE = 17
        TOO_MUCH_RECEIVERS = 18
        USER_NOT_EXIST = 19
        COMMUNICATION_FAILURE = 2
        ORIGINATOR_NOT_EXIST = 20
        X_ERROR = 21
        COMPONENT_NOT_AVAILABLE = 3
        FOLDER_NOT_EXIST = 4
        FOLDER_NO_AUTHORIZATION = 5
        FORWARDER_NOT_EXIST = 6
        NOTE_NOT_EXIST = 7
        OBJECT_NOT_EXIST = 8
        OBJECT_NOT_SENT = 9
. " SO_OBJECT_SEND




ABAP code using 7.40 inline data declarations to call FM SO_OBJECT_SEND

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_folder_id) = ' '.
 
 
 
 
"SELECT single FLAG FROM SONV INTO @DATA(ld_delete_flag).
DATA(ld_delete_flag) = ' '.
 
 
"SELECT single USRNAM FROM SOUD INTO @DATA(ld_sender).
DATA(ld_sender) = ' '.
 
 
 
"SELECT single FLAG FROM SONV INTO @DATA(ld_check_send_authority).
DATA(ld_check_send_authority) = ' '.
 
 
 
DATA(ld_check_already_sent) = ' '.
 
 
"SELECT single FLAG FROM SONV INTO @DATA(ld_give_object_back).
 
"SELECT single RECEXTNAM FROM SOOS1 INTO @DATA(ld_originator).
DATA(ld_originator) = ' '.
 
 
"SELECT single RECESC FROM SOOS1 INTO @DATA(ld_originator_type).
DATA(ld_originator_type) = 'J'.
 
 
DATA(ld_link_folder_id) = ' '.
 
 
DATA(ld_send_request_oid) = ' '.
 
 
DATA(ld_ip_encrypt) = 'U'.
 
 
 
"SELECT single USRNAM FROM SOUD INTO @DATA(ld_forwarder).
DATA(ld_forwarder) = ' '.
 
"SELECT single FLAG FROM SONV INTO @DATA(ld_sent_to_all).
 
 
DATA(ld_ip_sign) = 'U'.
 
 
 
 
 
"SELECT single FLAG FROM SONV INTO @DATA(ld_all_binding_done).
 
 
 
 
 
DATA(ld_object_hd_change) = ' '.
 
"SELECT single OBJKEY FROM SWOTOBJID INTO @DATA(ld_office_object_key).
 
DATA(ld_object_id) = ' '.
 
 
 
 
"SELECT single OBJTP FROM SOOD INTO @DATA(ld_object_type).
DATA(ld_object_type) = ' '.
 
 
 
 
 
"SELECT single FLAG FROM SONV INTO @DATA(ld_outbox_flag).
DATA(ld_outbox_flag) = ' '.
 
 
"SELECT single USRNAM FROM SOUD INTO @DATA(ld_owner).
DATA(ld_owner) = ' '.
 
 
 
 
"SELECT single FLAG FROM SONV INTO @DATA(ld_store_flag).
DATA(ld_store_flag) = ' '.
 
 


Search for further information about these or an SAP related objects



Comments on this SAP object

What made you want to lookup this SAP object? Please tell us what you were looking for and anything you would like to be included on this page!