SAP Function Modules

SO_OBJECT_RESUBMISSION_SEND SAP Function module - SAPoffice: Send an Object with Resubmissions







SO_OBJECT_RESUBMISSION_SEND 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_OBJECT_RESUBMISSION_SEND into the relevant SAP transaction such as SE37 or SE80.

Associated Function Group: SOA2
Released Date: Not Released
Processing type: Normal fucntion module
Normal function module settings


Pattern for FM SO_OBJECT_RESUBMISSION_SEND - SO OBJECT RESUBMISSION SEND





CALL FUNCTION 'SO_OBJECT_RESUBMISSION_SEND' "SAPoffice: Send an Object with Resubmissions
* EXPORTING
*   extern_address = SPACE      "               Address for external transmission (X.400 address)
*   folder_id = SPACE           " soodk         Existing object: ID of folder
*   forwarder = SPACE           " soud-usrnam   Existing object: name of forwarder
*   object_fl_change = SPACE    " sofm1         News object: folder information
*   object_hd_change = SPACE    " sood1         New object: general header data
*   object_id = SPACE           " soodk         Existing object: ID of object
*   object_type = SPACE         " sood-objtp    New object: object type
*   outbox_flag = SPACE         " sonv-flag     Object is to be stored in the outbox
*   owner = SPACE               " soud-usrnam   Responsible user of send process
*   store_flag = SPACE          " sonv-flag     New object is to be stored in folder
  IMPORTING
    all_resubmissions_done =    " sonv-flag     'X' = all resubmissions were carried out
    f_object_not_sent =         " sonv-flag     Document could not be sent at all
    object_id_new =             " soodk         New object: ID of object
    resubmission_not_done =     " sonv-flag     Resubmission was not carried out
    sent_to_all =               " sonv-flag     'X' = Object was sent to all
    wrong_factory_calendar =    " sonv-flag     'X' = Incorrect factory calendar in the user master
  TABLES
    objcont =                   " soli          New object: Contents
    objhead =                   " soli          New object: specific header data
    objpara =                   " selc          New object: parameter for transaction/report
    objparb =                   " soop1         New object: Parameter for dialog/function
    receivers =                 " soos1         Recipient table with send attributes
    resubmissions =             " soxrr         Resubmission data + recipient
*   packing_list =              " soxpl
*   att_head =                  " soli
*   att_cont =                  " soli
  EXCEPTIONS
    ACTIVE_USER_NOT_EXIST = 1   "               Active user is not a SAPoffice user
    COMPONENT_NOT_AVAILABLE = 2  "              SAPoffice component is inactive
    FOLDER_NOT_EXIST = 3        "               No access authorization for folder
    FOLDER_NO_AUTHORIZATION = 4  "              Folder does not exist
    FORWARDER_NOT_EXIST = 5     "               Forwarder does not exist
    NOTE_NOT_EXIST = 6          "               Specified note does not exist
    OBJECT_NOT_EXIST = 7        "               Object does not exist
    OBJECT_NO_AUTHORIZATION = 8  "              No access authorization for object
    OBJECT_TYPE_NOT_EXIST = 9   "               The object type specified does not exist
    OPERATION_NO_AUTHORIZATION = 10  "          No authorization for operation
    OWNER_NOT_EXIST = 11        "               The person in charge does not exist
    PARAMETER_ERROR = 12        "               Incorrect entry of data
    SUBSTITUTE_NOT_ACTIVE = 13  "               Substitute not activated
    SUBSTITUTE_NOT_DEFINED = 14  "              Substitute not defined
    TOO_MUCH_RECEIVERS = 15     "
    USER_NOT_EXIST = 16         "               The SAPoffice user does not exist
    X_ERROR = 17                "
    .  "  SO_OBJECT_RESUBMISSION_SEND

ABAP code example for Function Module SO_OBJECT_RESUBMISSION_SEND





The ABAP code below is a full code listing to execute function module SO_OBJECT_RESUBMISSION_SEND 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).

DATA:
ld_all_resubmissions_done  TYPE SONV-FLAG ,
ld_f_object_not_sent  TYPE SONV-FLAG ,
ld_object_id_new  TYPE SOODK ,
ld_resubmission_not_done  TYPE SONV-FLAG ,
ld_sent_to_all  TYPE SONV-FLAG ,
ld_wrong_factory_calendar  TYPE SONV-FLAG ,
it_objcont  TYPE STANDARD TABLE OF SOLI,"TABLES PARAM
wa_objcont  LIKE LINE OF it_objcont ,
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 ,
it_receivers  TYPE STANDARD TABLE OF SOOS1,"TABLES PARAM
wa_receivers  LIKE LINE OF it_receivers ,
it_resubmissions  TYPE STANDARD TABLE OF SOXRR,"TABLES PARAM
wa_resubmissions  LIKE LINE OF it_resubmissions ,
it_packing_list  TYPE STANDARD TABLE OF SOXPL,"TABLES PARAM
wa_packing_list  LIKE LINE OF it_packing_list ,
it_att_head  TYPE STANDARD TABLE OF SOLI,"TABLES PARAM
wa_att_head  LIKE LINE OF it_att_head ,
it_att_cont  TYPE STANDARD TABLE OF SOLI,"TABLES PARAM
wa_att_cont  LIKE LINE OF it_att_cont .

DATA(ld_extern_address) = 'some text here'.
DATA(ld_folder_id) = 'Check type of data required'.

SELECT single USRNAM
FROM SOUD
INTO @DATA(ld_forwarder).

DATA(ld_object_fl_change) = 'Check type of data required'.
DATA(ld_object_hd_change) = 'Check type of data required'.
DATA(ld_object_id) = 'Check type of data required'.

SELECT single OBJTP
FROM SOOD
INTO @DATA(ld_object_type).


DATA(ld_outbox_flag) = some text here

SELECT single USRNAM
FROM SOUD
INTO @DATA(ld_owner).


DATA(ld_store_flag) = some text here

"populate fields of struture and append to itab
append wa_objcont to it_objcont.

"populate fields of struture and append to itab
append wa_objhead to it_objhead.

"populate fields of struture and append to itab
append wa_objpara to it_objpara.

"populate fields of struture and append to itab
append wa_objparb to it_objparb.

"populate fields of struture and append to itab
append wa_receivers to it_receivers.

"populate fields of struture and append to itab
append wa_resubmissions to it_resubmissions.

"populate fields of struture and append to itab
append wa_packing_list to it_packing_list.

"populate fields of struture and append to itab
append wa_att_head to it_att_head.

"populate fields of struture and append to itab
append wa_att_cont to it_att_cont. . CALL FUNCTION 'SO_OBJECT_RESUBMISSION_SEND' * EXPORTING * extern_address = ld_extern_address * folder_id = ld_folder_id * forwarder = ld_forwarder * object_fl_change = ld_object_fl_change * object_hd_change = ld_object_hd_change * object_id = ld_object_id * object_type = ld_object_type * outbox_flag = ld_outbox_flag * owner = ld_owner * store_flag = ld_store_flag IMPORTING all_resubmissions_done = ld_all_resubmissions_done f_object_not_sent = ld_f_object_not_sent object_id_new = ld_object_id_new resubmission_not_done = ld_resubmission_not_done sent_to_all = ld_sent_to_all wrong_factory_calendar = ld_wrong_factory_calendar TABLES objcont = it_objcont objhead = it_objhead objpara = it_objpara objparb = it_objparb receivers = it_receivers resubmissions = it_resubmissions * packing_list = it_packing_list * att_head = it_att_head * att_cont = it_att_cont EXCEPTIONS ACTIVE_USER_NOT_EXIST = 1 COMPONENT_NOT_AVAILABLE = 2 FOLDER_NOT_EXIST = 3 FOLDER_NO_AUTHORIZATION = 4 FORWARDER_NOT_EXIST = 5 NOTE_NOT_EXIST = 6 OBJECT_NOT_EXIST = 7 OBJECT_NO_AUTHORIZATION = 8 OBJECT_TYPE_NOT_EXIST = 9 OPERATION_NO_AUTHORIZATION = 10 OWNER_NOT_EXIST = 11 PARAMETER_ERROR = 12 SUBSTITUTE_NOT_ACTIVE = 13 SUBSTITUTE_NOT_DEFINED = 14 TOO_MUCH_RECEIVERS = 15 USER_NOT_EXIST = 16 X_ERROR = 17 . " SO_OBJECT_RESUBMISSION_SEND
IF SY-SUBRC EQ 0. "All OK ELSEIF SY-SUBRC EQ 1. "Exception "Add code for exception here ELSEIF SY-SUBRC EQ 2. "Exception "Add code for exception here ELSEIF SY-SUBRC EQ 3. "Exception "Add code for exception here ELSEIF SY-SUBRC EQ 4. "Exception "Add code for exception here ELSEIF SY-SUBRC EQ 5. "Exception "Add code for exception here ELSEIF SY-SUBRC EQ 6. "Exception "Add code for exception here ELSEIF SY-SUBRC EQ 7. "Exception "Add code for exception here ELSEIF SY-SUBRC EQ 8. "Exception "Add code for exception here ELSEIF SY-SUBRC EQ 9. "Exception "Add code for exception here ELSEIF SY-SUBRC EQ 10. "Exception "Add code for exception here ELSEIF SY-SUBRC EQ 11. "Exception "Add code for exception here ELSEIF SY-SUBRC EQ 12. "Exception "Add code for exception here ELSEIF SY-SUBRC EQ 13. "Exception "Add code for exception here ELSEIF SY-SUBRC EQ 14. "Exception "Add code for exception here ELSEIF SY-SUBRC EQ 15. "Exception "Add code for exception here ELSEIF SY-SUBRC EQ 16. "Exception "Add code for exception here ELSEIF SY-SUBRC EQ 17. "Exception "Add code for exception here ENDIF.







ABAP code to compare 7.40 inline data declaration with original syntax

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_all_resubmissions_done  TYPE SONV-FLAG ,
ld_extern_address  TYPE STRING ,
it_objcont  TYPE STANDARD TABLE OF SOLI ,
wa_objcont  LIKE LINE OF it_objcont,
ld_f_object_not_sent  TYPE SONV-FLAG ,
ld_folder_id  TYPE SOODK ,
it_objhead  TYPE STANDARD TABLE OF SOLI ,
wa_objhead  LIKE LINE OF it_objhead,
ld_object_id_new  TYPE SOODK ,
ld_forwarder  TYPE SOUD-USRNAM ,
it_objpara  TYPE STANDARD TABLE OF SELC ,
wa_objpara  LIKE LINE OF it_objpara,
ld_resubmission_not_done  TYPE SONV-FLAG ,
ld_object_fl_change  TYPE SOFM1 ,
it_objparb  TYPE STANDARD TABLE OF SOOP1 ,
wa_objparb  LIKE LINE OF it_objparb,
it_receivers  TYPE STANDARD TABLE OF SOOS1 ,
wa_receivers  LIKE LINE OF it_receivers,
ld_sent_to_all  TYPE SONV-FLAG ,
ld_object_hd_change  TYPE SOOD1 ,
ld_wrong_factory_calendar  TYPE SONV-FLAG ,
ld_object_id  TYPE SOODK ,
it_resubmissions  TYPE STANDARD TABLE OF SOXRR ,
wa_resubmissions  LIKE LINE OF it_resubmissions,
ld_object_type  TYPE SOOD-OBJTP ,
it_packing_list  TYPE STANDARD TABLE OF SOXPL ,
wa_packing_list  LIKE LINE OF it_packing_list,
it_att_head  TYPE STANDARD TABLE OF SOLI ,
wa_att_head  LIKE LINE OF it_att_head,
ld_outbox_flag  TYPE SONV-FLAG ,
it_att_cont  TYPE STANDARD TABLE OF SOLI ,
wa_att_cont  LIKE LINE OF it_att_cont,
ld_owner  TYPE SOUD-USRNAM ,
ld_store_flag  TYPE SONV-FLAG .

ld_extern_address = 'some text here'.

"populate fields of struture and append to itab
append wa_objcont to it_objcont.
ld_folder_id = 'Check type of data required'.

"populate fields of struture and append to itab
append wa_objhead to it_objhead.

SELECT single USRNAM
FROM SOUD
INTO ld_forwarder.


"populate fields of struture and append to itab
append wa_objpara to it_objpara.
ld_object_fl_change = 'Check type of data required'.

"populate fields of struture and append to itab
append wa_objparb to it_objparb.

"populate fields of struture and append to itab
append wa_receivers to it_receivers.
ld_object_hd_change = 'Check type of data required'.
ld_object_id = 'Check type of data required'.

"populate fields of struture and append to itab
append wa_resubmissions to it_resubmissions.

SELECT single OBJTP
FROM SOOD
INTO ld_object_type.


"populate fields of struture and append to itab
append wa_packing_list to it_packing_list.

"populate fields of struture and append to itab
append wa_att_head to it_att_head.

ld_outbox_flag = some text here

"populate fields of struture and append to itab
append wa_att_cont to it_att_cont.

SELECT single USRNAM
FROM SOUD
INTO ld_owner.


ld_store_flag = some text here

Contribute (Add Comments)

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_OBJECT_RESUBMISSION_SEND or its description.