ABAP-多线程处理
*&---------------------------------------------------------------------*
*& Report ZRICO_TEST26
*&
*&---------------------------------------------------------------------*
*&
*&
*&---------------------------------------------------------------------*
report zrico_test26.
data:gv_taskname() type c, "task name(同时运行的任务名称必须保持唯一)
gv_classname type rzlli_apcl, "Server Group Name
gv_applserver type rzllitab-applserver. "RFC Serve Group
data:gv_lin type char10,
gv_job type i,
gv_end type c,
gv_mess() type c. "并发执行出错信息
data:begin of wa_tab,
num1 type vbap-kwmeng,
num2 type vbap-kwmeng,
num3 type vbap-kwmeng,
flg type c,
exflg type c,
taskname type string,
end of wa_tab.
data:gt_tab like table of wa_tab.
field-symbols:
<fs_tab> like wa_tab. start-of-selection. call 'C_SAPGPARAM' "#EC CI_CCALL
id 'NAME' field 'rdisp/myname'
id 'VALUE' field gv_applserver. select single classname
from rzllitab
into gv_classname "Server Group Name
where applserver = gv_applserver
and grouptype = 'S'. "S:服务器组,空:登陆组 "shift gv_classname left deleting leading space. do times.
gv_lin = gv_lin + .
call function 'CONVERSION_EXIT_ALPHA_INPUT'
exporting
input = gv_lin
importing
output = gv_lin. append initial line to gt_tab assigning <fs_tab>.
<fs_tab>-num1 = sy-index.
concatenate 'TASK' gv_lin into <fs_tab>-taskname.
condense <fs_tab>-taskname no-gaps.
unassign <fs_tab>.
enddo. loop at gt_tab assigning <fs_tab>.
clear:gv_end. write:/ <fs_tab>-taskname,'BEGIN'. call function 'ZRICO_NEW_TARK'
starting new task <fs_tab>-taskname
destination in group gv_classname
performing frm_subroutine_done on end of task
exporting
i_num = <fs_tab>-num1
exceptions
communication_failure = message gv_mess
system_failure = message gv_mess
resource_failure = .
if sy-subrc = .
<fs_tab>-exflg = 'Y'.
gv_job = gv_job + .
else.
<fs_tab>-exflg = 'N'.
endif. write:/ <fs_tab>-taskname,'END'. endloop. loop at gt_tab assigning <fs_tab>.
write:/ <fs_tab>-num1,<fs_tab>-num2,<fs_tab>-flg,<fs_tab>-exflg,<fs_tab>-taskname.
endloop. form frm_subroutine_done using gv_taskname.
data:lv_num type vbap-kwmeng.
field-symbols:
<fs_tab> like line of gt_tab. receive results from function 'ZRICO_NEW_TARK'
importing
e_num = lv_num. loop at gt_tab assigning <fs_tab>
where taskname = gv_taskname.
<fs_tab>-num2 = lv_num.
<fs_tab>-flg = 'X'.
endloop. gv_end = 'X'.
endform.
ABAP-多线程处理的更多相关文章
- ABAP单元测试最佳实践
本文包含了我在开发项目中经历过的实用的ABAP单元测试指导方针.我把它们安排成为问答的风格,欢迎任何人添加更多的Q&A's,以完成这个列表. 在我的项目中,只使用传统的ABAP report. ...
- ABAP实现屏幕自己刷新和跳转功能
ABAP开发工程中,有时候需要让跳转出的屏幕自动实现跳转和刷新的功能,该功能的实现需要在屏幕PBO 里面调用相应的事件执行. 关键代码为: SET TITLEBAR ' 屏幕自动程序'. IF g_c ...
- 一步步实现ABAP后台导入EXCEL到数据库【3】
在一步步实现ABAP后台导入EXCEL到数据库[2]里,我们已经实现计划后台作业将数据导入数据库的功能.但是,这只是针对一个简单的自定义结构的导入程序.在实践应用中,面对不同的表.不同的导入文件,我们 ...
- 一步步实现ABAP后台导入EXCEL到数据库【2】
前文:http://www.cnblogs.com/hhelibeb/p/5912330.html 既然后台作业只能在应用服务器运行,那么,我们可以先将要上传的数据保存在应用服务器中,之后再以后台作业 ...
- 让ABAP开发者愈加轻松的若干快捷键
引言 ABAP是一种和当代编程语言在许多方面有着相当不同的编程语言.ABAP的某些方面可能会让我们奇怪,为什么它会如此复杂?而它的某些方面又是那么杰出,给予了ABAP开发者们比其它任何语言更多的便利. ...
- ABAP游标的使用
在Oracle,SQLServer中游标的使用是经常的,所以在ABAP不懂是不行的...... 1.声明游标 OPEN CURSOR [WITH HOLD] <c> FOR SEL ...
- 一步步实现ABAP后台导入EXCEL到数据库【1】
在SAP的应用当中,导入.导出EXCEL文件的情况是一个常见的需求,有时候用户需要将大量数据定期导入到SAP的数据库中.这种情况下,使用导入程序在前台导入可能要花费不少的时间,如果能安排导入程序为后台 ...
- ABAP关键字SUBMIT的简单例子和学习小记
网上有关SUBMIT实现程序调用的例子稍显复杂,而相关的参考和解释则不是很完善.本文给出一个SUBMIT的小示例程序(代码见文末),实现了最简单的程序间调用及返回值,以及SAP官方文档中相关内容的翻译 ...
- ABAP 常见查询问题解决方法
在ABAP 编程的时候会遇到查询单条语句的时候数能取对 但是条目数多了的话 会出现数不准确的问题 原因可能出现在查询使用了二分法查询方式 二分法查询下必须按排序的字段排序 还得按照排序的字段 ...
- 《C#本质论》读书笔记(18)多线程处理
.NET Framework 4.0 看(本质论第3版) .NET Framework 4.5 看(本质论第4版) .NET 4.0为多线程引入了两组新API:TPL(Task Parallel Li ...
随机推荐
- [转][C#]单例模式之懒加载
private static ILog log = LogManager.GetLogger(System.Reflection.MethodBase.GetCurrentMethod().Decla ...
- github中fork的使用
转载https://www.cnblogs.com/patchouli/p/6511251.html 由于git的权限控制功能比较弱,如果想给某个项目提供代码除了直接获得项目的push权限外,gith ...
- Unreal Engine 4 动态切割模型实现
转自:http://gad.qq.com/article/detail/33199 <合金装备:复仇>里面,有一个很有趣的设定,游戏里大部分的场景和物件都可以用主角的刀动态切割. UE4中 ...
- vue事件深入
事件对象: @click="show($event)" ev.clientX---接收 事件冒泡: 阻止冒泡: 1. ev.cancelBubble=true; 2.@click. ...
- 通过mysqlclient操作MySQL数据库
一,安装mysql 如果是windows 用户,mysql 的安装非常简单,直接下载安装文件,双击安装文件一步一步进行操作即可. Linux 下的安装可能会更加简单,除了下载安装包进行安装外,一般的l ...
- windows下使用gethostbyname函数报错无法解析的外部符号
#include <winsock.h> 使用gethostbyname的函数的时候,会显示无法解析的外部符号. 主要问题是因为没有引用WS2_32的lib库 在include上面引用就行 ...
- html跳页面传值
从a.html跳转到b.html并且把a.html的值name传入b.html 在a.html页面,url路径后面带参数,参数与url之间用?隔开 window.location.href = &q ...
- solr系统query检索词特殊字符的处理
solr是基于 lucence开发的应用,如果query中带有非法字符串,结果很可能是检索出所有内容或者直接报错,所以你对用户的输入必须要先做处理.输入星号,能够检索出所有内容:输入加号,则会报错. ...
- windows下maven的安装
1.下载maven的zip包,下载地址:http://maven.apache.org/download.cgi 2.解压到F:\maven 3.修改环境变量: MAVEN_HOME:F:\maven ...
- DRF 视图组件代码
序列化器代码 # 声明序列化器from rest_framework import serializersfrom djangoDome.models import Book class Publis ...