ABAP程序并行处理
2024-09-01 14:04:25
- 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 =
system_failure =
. gt_bapiret2 = lt_bapiret2 .
gv_done = 'X'. ENDFORM. 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
最新文章
- MySQL常用SQL总结
- Unity3D-ScrollRect 各参数的代码引用以及作用
- linux 进程管理相关内容
- 【C#进阶系列】01 CLR的执行模型——一个Hello World的故事
- Redis常用命令速查 02_转
- hdu 1753 大明A+B
- photoshop:把路径存储为形状
- [Objective-c 基础 - 2.11] SEL数据类型
- [codevs2152]滑雪
- shell编程(一)--常用变量及表达式
- [译]URL和URI的区别
- 使用JQUERY操作Radio
- 最新合购网源码net.asp程序 彩票合买功能采用全新内核、全新架构,更小巧、功能更强、更快、更安全稳定
- SpringBoot MVC 拦截器
- Python学习之旅(十)
- spring boot maven META-INF/MAINIFEST.MF
- Day2作业及默写
- 嵌入式开发之hi3519---i2c EEPROM
- linux下kill -9 pid 强制不能杀掉进程原因
- imooc-c++学习感悟