zoukankan      html  css  js  c++  java
  • ABAP程序并行处理

    • CASE1. 程序中 start new task ,并在后面获取处理结果
      *"----------------------------------------------------------------------
      *"*"本地接口:
      *"  IMPORTING
      *"     VALUE(IS_NAST) TYPE  NAST
      *"  EXPORTING
      *"     VALUE(CV_SUBRC) TYPE  SY-SUBRC
      *"----------------------------------------------------------------------
      DATA:IV_FUNCNAME    TYPE    RS38L_FNAM.
        DATA et_return   TYPE TABLE OF bapiret2.
        DATA et_pro_stru TYPE TABLE OF zif_pro_structure.
        DATA lt_bapiret2 TYPE TABLE OF bapiret2.
      
      
            CALL FUNCTION 'ZIF_FUNC_CALL' STARTING NEW TASK is_nast-objky
              PERFORMING frm_function_recevie_data ON END OF TASK
              EXPORTING
                iv_funcname = lv_funcname
                iv_zproid   = ls_pro-zproid
                is_nast     = is_nast
              TABLES
                rt_bapiret2 = lt_bapiret2[].
      
      FORM frm_function_recevie_data  USING ck .
      
        DATA: lt_bapiret2 TYPE TABLE OF bapiret2 .
      
      
        RECEIVE RESULTS FROM FUNCTION 'ZIF_FUNC_CALL'
          TABLES
            rt_bapiret2       = lt_bapiret2
          EXCEPTIONS
            communication_failure = 1
            system_failure        = 2
            .
      
        gt_bapiret2 = lt_bapiret2 .
        gv_done     = 'X'.
      
      ENDFORM.
      说明:转自 https://www.cnblogs.com/jiangzhengjun/p/4265586.html

    • 20.1.2.             RFC函数:远程调用

      20.1.2.1.       同步

      CALL FUNCTION func [DESTINATION dest]  [?desti?nei??n]

      (在DESTINATION不省略的情况下,且dest取值又不为SPACE,则函数一定要是RFC函数才能采用此方式进行远程同步调用)

      20.1.2.2.       异步

      CALL FUNCTION rfm_name STARTING NEW TASK [DESTINATION dest]taskname PERFORMING return_form ON END OF TASK
      
      FORM return_form USING taskname.
        ...
        RECEIVE RESULTS FROM FUNCTION rfm_name
        ...
      ENDFORM.

      等待多个异步调用的返回结果:WAIT UNTIL log_exp [UP TO sec SECONDS].

      异步调用时不能有IMPORTING参数;函数一定要是RFC函数才能采用异步调用;只要有STARTING NEW TASK选项,即为异步调用;如果是异步调用同一目标端的RFC函数,则可以省略DESTINATION

  • 相关阅读:
    搞懂 Python 中多继承与Mixin设计模式
    Python 中的新式类和经典类的区别?
    值得收藏!15个 Pythonic 的代码示例
    windows启动nacos1.3.2
    Linux完成MySQL安装,本地连接时出现1064错误
    vagrant安装的坑
    AvaloniaUI TextBox 不能显示中文的问题解决
    [笔记] zookeeper 本地测试部署
    docker: Error response from daemon: Ports are not available
    smartsql 入门使用踩坑笔记
  • 原文地址:https://www.cnblogs.com/rainysblog/p/11566641.html
Copyright © 2011-2022 走看看