SAP Function Modules

ISM_SD_API_SELECT_RETURN SAP Function module - Select Return







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

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


Pattern for FM ISM_SD_API_SELECT_RETURN - ISM SD API SELECT RETURN





CALL FUNCTION 'ISM_SD_API_SELECT_RETURN' "Select Return
* EXPORTING
*   evkstart =                  " rjksd_evkstart_range_tab
*   evkstbez =                  " rjksd_evkstbez_range_tab
*   iumseinfl =                 " rjksd_iumseinfl_range_tab
*   vkorg =                     " rjksd_vkorg_range_tab
*   vtweg =                     " rjksd_vtweg_range_tab
*   spart =                     " rjksd_spart_range_tab
*   vkbur =                     " rjksd_vkbur_range_tab
*   vkgrp =                     " rjksd_vkgrp_range_tab
*   gpnr =                      " rjksd_unsoldgpnr_range_tab
*   vbeln =                     " rjksd_vbeln_range_tab
*   unsoldnumber =              " rjksd_unsoldnumber_range_tab
*   recallnumber =              " rjksd_recallnumber_range_tab  IS-M: Range Table for RECALLNUMBER
*   unsoldtypenew =             " rjksd_unsoldtype_range_tab
*   unsolddate =                " rjksd_unsolddate_range_tab
*   erfuser =                   " rjksd_erfuser_range_tab
*   erfdate =                   " rjksd_erfdate_range_tab
*   erftime =                   " rjksd_erftime_range_tab  Range Table for ERFTIME
*   aenuser =                   " rjksd_aenuser_range_tab
*   aendate =                   " rjksd_aendate_range_tab
*   aendtime =                  " rjksd_aentime_range_tab  Range Table for AENTIME
*   orderreason =               " rjksd_augru_range_tab  Range Table for AUGRU
*   werks =                     " rjksd_werks_range_tab  Range Table for Plants
*   route =                     " rjksd_route_range_tab
*   status =                    " rjksd_returnstate_range_tab
*   issue =                     " rjksd_issue_range_tab
*   product =                   " rjksd_product_range_tab  Range Table for Media Products
*   family =                    " rjksd_family_range_tab
*   copynumber =                " rjksd_copynumber_range_tab
*   publdate =                  " rjksd_publdate_range_tab
*   ean11 =                     " rjksd_ean11_range_tab  Range Table for European Article Number
*   perrule =                   " rjksd_ismperregel_range_tab
*   collectdate =               " rjksd_collectdate_range_tab  IS-M: Range Table for Recall Date
*   unsolddateitem =            " rjksd_unsolddate_range_tab  Item Notification Date
*   timeselection =             " rjksdreturntimesel2  Return Selection Criteria Period
*   read_comment =              " xfeld
*   read_all_items =            " xfeld
  IMPORTING
    et_head =                   " jksdunsold_tab  Header Data
    et_item =                   " jksdunsolditem_tab  Item Data
    et_comment =                " jksdunsoldcom_tab  Comment
* TABLES
*   return =                    " bapiret2      Return Parameter(s)
*   mstav =                     " rjksd_mstav_range  IS-M: Range Type for Cross-Distribution Chain Status
*   vmsta =                     " rjksd_vmsta_range  IS-M: Range Type for Cross-Distribution Chain Status
*   mstae =                     " rjksd_mstae_range  IS-M: Range Type for Cross-Plant Status
*   mmsta =                     " rjksd_mmsta_range  IS-M: Range Type for Plant-Specific Status
  EXCEPTIONS
    NOT_FOUND = 1               "               No Data Found
    .  "  ISM_SD_API_SELECT_RETURN

ABAP code example for Function Module ISM_SD_API_SELECT_RETURN





The ABAP code below is a full code listing to execute function module ISM_SD_API_SELECT_RETURN 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_et_head  TYPE JKSDUNSOLD_TAB ,
ld_et_item  TYPE JKSDUNSOLDITEM_TAB ,
ld_et_comment  TYPE JKSDUNSOLDCOM_TAB ,
it_return  TYPE STANDARD TABLE OF BAPIRET2,"TABLES PARAM
wa_return  LIKE LINE OF it_return ,
it_mstav  TYPE STANDARD TABLE OF RJKSD_MSTAV_RANGE,"TABLES PARAM
wa_mstav  LIKE LINE OF it_mstav ,
it_vmsta  TYPE STANDARD TABLE OF RJKSD_VMSTA_RANGE,"TABLES PARAM
wa_vmsta  LIKE LINE OF it_vmsta ,
it_mstae  TYPE STANDARD TABLE OF RJKSD_MSTAE_RANGE,"TABLES PARAM
wa_mstae  LIKE LINE OF it_mstae ,
it_mmsta  TYPE STANDARD TABLE OF RJKSD_MMSTA_RANGE,"TABLES PARAM
wa_mmsta  LIKE LINE OF it_mmsta .

DATA(ld_evkstart) = 'Check type of data required'.
DATA(ld_evkstbez) = 'Check type of data required'.
DATA(ld_iumseinfl) = 'Check type of data required'.
DATA(ld_vkorg) = 'Check type of data required'.
DATA(ld_vtweg) = 'Check type of data required'.
DATA(ld_spart) = 'Check type of data required'.
DATA(ld_vkbur) = 'Check type of data required'.
DATA(ld_vkgrp) = 'Check type of data required'.
DATA(ld_gpnr) = 'Check type of data required'.
DATA(ld_vbeln) = 'Check type of data required'.
DATA(ld_unsoldnumber) = 'Check type of data required'.
DATA(ld_recallnumber) = 'Check type of data required'.
DATA(ld_unsoldtypenew) = 'Check type of data required'.
DATA(ld_unsolddate) = 'Check type of data required'.
DATA(ld_erfuser) = 'Check type of data required'.
DATA(ld_erfdate) = 'Check type of data required'.
DATA(ld_erftime) = 'Check type of data required'.
DATA(ld_aenuser) = 'Check type of data required'.
DATA(ld_aendate) = 'Check type of data required'.
DATA(ld_aendtime) = 'Check type of data required'.
DATA(ld_orderreason) = 'Check type of data required'.
DATA(ld_werks) = 'Check type of data required'.
DATA(ld_route) = 'Check type of data required'.
DATA(ld_status) = 'Check type of data required'.
DATA(ld_issue) = 'Check type of data required'.
DATA(ld_product) = 'Check type of data required'.
DATA(ld_family) = 'Check type of data required'.
DATA(ld_copynumber) = 'Check type of data required'.
DATA(ld_publdate) = 'Check type of data required'.
DATA(ld_ean11) = 'Check type of data required'.
DATA(ld_perrule) = 'Check type of data required'.
DATA(ld_collectdate) = 'Check type of data required'.
DATA(ld_unsolddateitem) = 'Check type of data required'.
DATA(ld_timeselection) = 'Check type of data required'.
DATA(ld_read_comment) = 'Check type of data required'.
DATA(ld_read_all_items) = 'Check type of data required'.

"populate fields of struture and append to itab
append wa_return to it_return.

"populate fields of struture and append to itab
append wa_mstav to it_mstav.

"populate fields of struture and append to itab
append wa_vmsta to it_vmsta.

"populate fields of struture and append to itab
append wa_mstae to it_mstae.

"populate fields of struture and append to itab
append wa_mmsta to it_mmsta. . CALL FUNCTION 'ISM_SD_API_SELECT_RETURN' * EXPORTING * evkstart = ld_evkstart * evkstbez = ld_evkstbez * iumseinfl = ld_iumseinfl * vkorg = ld_vkorg * vtweg = ld_vtweg * spart = ld_spart * vkbur = ld_vkbur * vkgrp = ld_vkgrp * gpnr = ld_gpnr * vbeln = ld_vbeln * unsoldnumber = ld_unsoldnumber * recallnumber = ld_recallnumber * unsoldtypenew = ld_unsoldtypenew * unsolddate = ld_unsolddate * erfuser = ld_erfuser * erfdate = ld_erfdate * erftime = ld_erftime * aenuser = ld_aenuser * aendate = ld_aendate * aendtime = ld_aendtime * orderreason = ld_orderreason * werks = ld_werks * route = ld_route * status = ld_status * issue = ld_issue * product = ld_product * family = ld_family * copynumber = ld_copynumber * publdate = ld_publdate * ean11 = ld_ean11 * perrule = ld_perrule * collectdate = ld_collectdate * unsolddateitem = ld_unsolddateitem * timeselection = ld_timeselection * read_comment = ld_read_comment * read_all_items = ld_read_all_items IMPORTING et_head = ld_et_head et_item = ld_et_item et_comment = ld_et_comment * TABLES * return = it_return * mstav = it_mstav * vmsta = it_vmsta * mstae = it_mstae * mmsta = it_mmsta EXCEPTIONS NOT_FOUND = 1 . " ISM_SD_API_SELECT_RETURN
IF SY-SUBRC EQ 0. "All OK ELSEIF SY-SUBRC EQ 1. "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_et_head  TYPE JKSDUNSOLD_TAB ,
ld_evkstart  TYPE RJKSD_EVKSTART_RANGE_TAB ,
it_return  TYPE STANDARD TABLE OF BAPIRET2 ,
wa_return  LIKE LINE OF it_return,
ld_et_item  TYPE JKSDUNSOLDITEM_TAB ,
ld_evkstbez  TYPE RJKSD_EVKSTBEZ_RANGE_TAB ,
it_mstav  TYPE STANDARD TABLE OF RJKSD_MSTAV_RANGE ,
wa_mstav  LIKE LINE OF it_mstav,
ld_et_comment  TYPE JKSDUNSOLDCOM_TAB ,
ld_iumseinfl  TYPE RJKSD_IUMSEINFL_RANGE_TAB ,
it_vmsta  TYPE STANDARD TABLE OF RJKSD_VMSTA_RANGE ,
wa_vmsta  LIKE LINE OF it_vmsta,
ld_vkorg  TYPE RJKSD_VKORG_RANGE_TAB ,
it_mstae  TYPE STANDARD TABLE OF RJKSD_MSTAE_RANGE ,
wa_mstae  LIKE LINE OF it_mstae,
ld_vtweg  TYPE RJKSD_VTWEG_RANGE_TAB ,
it_mmsta  TYPE STANDARD TABLE OF RJKSD_MMSTA_RANGE ,
wa_mmsta  LIKE LINE OF it_mmsta,
ld_spart  TYPE RJKSD_SPART_RANGE_TAB ,
ld_vkbur  TYPE RJKSD_VKBUR_RANGE_TAB ,
ld_vkgrp  TYPE RJKSD_VKGRP_RANGE_TAB ,
ld_gpnr  TYPE RJKSD_UNSOLDGPNR_RANGE_TAB ,
ld_vbeln  TYPE RJKSD_VBELN_RANGE_TAB ,
ld_unsoldnumber  TYPE RJKSD_UNSOLDNUMBER_RANGE_TAB ,
ld_recallnumber  TYPE RJKSD_RECALLNUMBER_RANGE_TAB ,
ld_unsoldtypenew  TYPE RJKSD_UNSOLDTYPE_RANGE_TAB ,
ld_unsolddate  TYPE RJKSD_UNSOLDDATE_RANGE_TAB ,
ld_erfuser  TYPE RJKSD_ERFUSER_RANGE_TAB ,
ld_erfdate  TYPE RJKSD_ERFDATE_RANGE_TAB ,
ld_erftime  TYPE RJKSD_ERFTIME_RANGE_TAB ,
ld_aenuser  TYPE RJKSD_AENUSER_RANGE_TAB ,
ld_aendate  TYPE RJKSD_AENDATE_RANGE_TAB ,
ld_aendtime  TYPE RJKSD_AENTIME_RANGE_TAB ,
ld_orderreason  TYPE RJKSD_AUGRU_RANGE_TAB ,
ld_werks  TYPE RJKSD_WERKS_RANGE_TAB ,
ld_route  TYPE RJKSD_ROUTE_RANGE_TAB ,
ld_status  TYPE RJKSD_RETURNSTATE_RANGE_TAB ,
ld_issue  TYPE RJKSD_ISSUE_RANGE_TAB ,
ld_product  TYPE RJKSD_PRODUCT_RANGE_TAB ,
ld_family  TYPE RJKSD_FAMILY_RANGE_TAB ,
ld_copynumber  TYPE RJKSD_COPYNUMBER_RANGE_TAB ,
ld_publdate  TYPE RJKSD_PUBLDATE_RANGE_TAB ,
ld_ean11  TYPE RJKSD_EAN11_RANGE_TAB ,
ld_perrule  TYPE RJKSD_ISMPERREGEL_RANGE_TAB ,
ld_collectdate  TYPE RJKSD_COLLECTDATE_RANGE_TAB ,
ld_unsolddateitem  TYPE RJKSD_UNSOLDDATE_RANGE_TAB ,
ld_timeselection  TYPE RJKSDRETURNTIMESEL2 ,
ld_read_comment  TYPE XFELD ,
ld_read_all_items  TYPE XFELD .

ld_evkstart = 'Check type of data required'.

"populate fields of struture and append to itab
append wa_return to it_return.
ld_evkstbez = 'Check type of data required'.

"populate fields of struture and append to itab
append wa_mstav to it_mstav.
ld_iumseinfl = 'Check type of data required'.

"populate fields of struture and append to itab
append wa_vmsta to it_vmsta.
ld_vkorg = 'Check type of data required'.

"populate fields of struture and append to itab
append wa_mstae to it_mstae.
ld_vtweg = 'Check type of data required'.

"populate fields of struture and append to itab
append wa_mmsta to it_mmsta.
ld_spart = 'Check type of data required'.
ld_vkbur = 'Check type of data required'.
ld_vkgrp = 'Check type of data required'.
ld_gpnr = 'Check type of data required'.
ld_vbeln = 'Check type of data required'.
ld_unsoldnumber = 'Check type of data required'.
ld_recallnumber = 'Check type of data required'.
ld_unsoldtypenew = 'Check type of data required'.
ld_unsolddate = 'Check type of data required'.
ld_erfuser = 'Check type of data required'.
ld_erfdate = 'Check type of data required'.
ld_erftime = 'Check type of data required'.
ld_aenuser = 'Check type of data required'.
ld_aendate = 'Check type of data required'.
ld_aendtime = 'Check type of data required'.
ld_orderreason = 'Check type of data required'.
ld_werks = 'Check type of data required'.
ld_route = 'Check type of data required'.
ld_status = 'Check type of data required'.
ld_issue = 'Check type of data required'.
ld_product = 'Check type of data required'.
ld_family = 'Check type of data required'.
ld_copynumber = 'Check type of data required'.
ld_publdate = 'Check type of data required'.
ld_ean11 = 'Check type of data required'.
ld_perrule = 'Check type of data required'.
ld_collectdate = 'Check type of data required'.
ld_unsolddateitem = 'Check type of data required'.
ld_timeselection = 'Check type of data required'.
ld_read_comment = 'Check type of data required'.
ld_read_all_items = 'Check type of data required'.

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