abap submit

1、最普通的用法
*Code used to execute a report
SUBMIT Zreport.
2、带select-options程序的Submit的用法
*Code used to populate 'select-options' & execute report
DATA: seltab type table of rsparams,
      seltab_wa like line of seltab.


  seltab_wa-selname = 'PNPPERNR'.
  seltab_wa-sign    = 'I'.
  seltab_wa-option  = 'EQ'.


* load each personnel number accessed from the structure into
* parameters to be used in the report
  loop at pnppernr.
    seltab_wa-low = pnppernr-low.
    append seltab_wa to seltab.
  endloop.
  SUBMIT zreport with selection-table seltab
                                via selection-screen.
3、带parameters程序的Submit的用法
*Code used to populate 'parameters' & execute report
SUBMIT zreport with p_param1 = 'value' with p_param2 = 'value'.
4、其他情况
*Submit report and return to current program afterwards
SUBMIT zreport AND RETURN. *Submit report via its own selection screen
SUBMIT zreport VIA SELECTION-SCREEN. *Submit report using selection screen variant
SUBMIT zreport USING SELECTION-SET 'VARIANT1'. *Submit report but export resultant list to memory, rather than *it being displayed on screen
SUBMIT zreport  EXPORTING LIST  TO  MEMORY .
* Once report has finished and control has returned to calling
* program, use function modules LIST_FROM_MEMORY, WRITE_LIST and
* DISPLAY_LIST to retrieve and display report.
*Example Code (Retrieving list from memory)
DATA  BEGIN  OF itab_list  OCCURS  0 .
INCLUDE  STRUCTURE abaplist .
DATA  END  OF itab_list .
DATA BEGIN  OF vlist  OCCURS  0 ,
        filler1 ( 01 TYPE  c ,
        field1 ( 06 )   TYPE  c ,
        filler ( 08 )   TYPE  c ,
        field2 ( 10 )   TYPE  c ,
        filler3 ( 01 TYPE  c ,
        field3 ( 10 )   TYPE  c ,
        filler4 ( 01 TYPE  c ,
        field4 ( 3 )    TYPE  c ,
        filler5 ( 02 TYPE  c ,
        field5 ( 15 )   TYPE  c ,
        filler6 ( 02 TYPE  c ,
        field6 ( 30 )   TYPE  c ,
        filler7 ( 43 TYPE  c ,
        field7 ( 10 )   TYPE  c ,
       END  OF vlist .
SUBMIT zreport  EXPORTING LIST  TO  MEMORY .
CALL  FUNCTION  'LIST_FROM_MEMORY'
   TABLES
    listobject  itab_list
   EXCEPTIONS
    not_found   4
     OTHERS      8 .
CALL  FUNCTION  'LIST_TO_ASCI'
   EXPORTING
    list_index          - 1
   TABLES
    listasci            vlist
    listobject          itab_list
   EXCEPTIONS
    empty_list          1
    list_index_invalid  2
     OTHERS              3 .
IF sy -subrc  NE  '0' .
   WRITE :'LIST_TO_ASCIerror !! ' sy -subrc .
ENDIF .

5、Submit为后台执行

*Submit report as job(i.e. in background)
   DATAjobname LIKE tbtcjob-jobname VALUE ' TRANSFER TRANSLATION'.
   DATAjobcount LIKE tbtcjob-jobcounthost LIKE msxxlist-host.
   DATABEGIN OF starttime.
       INCLUDE STRUCTURE tbtcstrt.
   DATAEND OF starttime.
   DATAstarttimeimmediate LIKE btch0000-char1.
* Job open call function 'JOB_OPEN' exporting delanfrep = ' ' jobgroup = ' ' jobname = jobname sdlstrtdt = sy-datum sdlstrttm = sy-uzeit importing jobcount = jobcount exceptions cant_create_job = 01 invalid_job_data = 02 jobname_missing = 03. if
   sy-subrc ne 0"error processing endif. * Insert process into job SUBMIT zreport and return with p_param1 = 'value' with p_param2 = 'value' user sy-uname via job jobname number jobcount. if sy-subrc > 0. "error processing endif. * Close job
   starttime-sdlstrtdt sy-datum + 1starttime-sdlstrttm '220000'.
   CALL FUNCTION 'JOB_CLOSE'
     EXPORTING
       event_id             starttime-eventid
       event_param          starttime-eventparm
       event_periodic       starttime-periodic
       jobcount             jobcount
       jobname              jobname
       laststrtdt           =
                              starttime-laststrtdt
       laststrttm           starttime-laststrttm
       prddays              1
       prdhours             0
       prdmins              0
       prdmonths            0
       prdweeks             0
       sdlstrtdt            starttime-sdlstrtdt
       sdlstrttm            starttime-sdlstrttm
       strtimmed            starttimeimmediate
       targetsystem         host
     EXCEPTIONS
       cant_start_immediate 01
       invalid_startdate    02
       jobname_missing      03
       job_close_failed     04
       job_nosteps          05
       job_notex            06
       lock_failed          07
       OTHERS               99.
   IF sy-subrc EQ 0"error processing
   ENDIF.



猜你喜欢

转载自blog.csdn.net/champaignwolf/article/details/80331859