`
evangxli
  • 浏览: 235435 次
  • 性别: Icon_minigender_1
  • 来自: 大连
社区版块
存档分类
最新评论

sap submit and return

阅读更多
转自: Barry 白
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
[color=blue]*it being displayed on screen
[/color]
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_ASCI error !! ', sy-subrc.
ENDIF.

5、Submit为后台执行

*Submit report as job(i.e. in background)

data: jobname like tbtcjob-jobname value
                             ' TRANSFER TRANSLATION'.
data: jobcount like tbtcjob-jobcount,
      host like msxxlist-host.
data: begin of starttime.
        include structure tbtcstrt.
data: end of starttime.
data: starttimeimmediate 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 + 1.
  starttime-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.
分享到:
评论

相关推荐

    ABAP程序相互调用

    SUBMIT zreport AND RETURN. ``` 2. Submit报表通过其自己的选择屏幕 我们可以使用VIA SELECTION-SCREEN关键字来实现报表的提交通过其自己的选择屏幕。例如: ```abap SUBMIT zreport VIA SELECTION-SCREEN. ``` 3....

    SUBMIT的几种情况

    SUBMIT zreport AND RETURN. ``` - **通过自己的选择屏幕提交** 可以让报告使用它自己的选择屏幕进行提交: ```abap SUBMIT zreport VIA SELECTION-SCREEN. ``` - **使用选择屏幕变体提交** 使用`USING ...

    abapsubmit用法(一)调用外部程序[参考].pdf

    理解如何正确地使用 `SUBMIT` 和 `AND RETURN` 以及如何处理 ABAP 内存的数据,对于构建复杂的 SAP 应用程序至关重要。在实际开发中,开发者应根据需求选择合适的数据传递方式和控制流程的策略。

    ABAP 通过SUBMIT获取ALV的数据

    4. `AND RETURN`: 这个关键字告诉ABAP在`ZPPR1001`完成后,将结果返回到当前程序。 5. `TRY...CATCH...`: 这是异常处理结构,尝试获取`cl_salv_bs_runtime_info`的`data_ref`,如果成功,将数据引用赋值给`lo_data`...

    ABAP的系统字段,供参考

    如果程序是从屏幕事务开始执行的,或者使用了`SUBMIT`(不含`AND RETURN`)指令,则该字段会被设置为其调用者程序的值。 #### 四、sy结构 - **定义**:`sy`结构是一个重要的内部结构,它存在于每次内部会话期间,并...

    按钮显示和隐藏

    return ( <button onClick={toggleVisibility}>Toggle Visibility {isVisible && <button>Submit</button>} ); } ``` #### 四、总结 通过上述分析,我们可以看到如何通过简单的JavaScript代码实现按钮的...

    可以修改任何程序

    - **程序执行**:通过 `SUBMIT(PROGRAM) VIA SELECTION-SCREEN AND RETURN` 可以直接运行选定的程序。 - **程序修改**:示例中的代码能够实现对程序的直接修改,包括替换和创建新的程序。 ### 三、注意事项与风险...

Global site tag (gtag.js) - Google Analytics