网页资讯视频图片知道文库贴吧地图采购
进入贴吧全吧搜索

 
 
 
日一二三四五六
       
       
       
       
       
       

签到排名:今日本吧第个签到,

本吧因你更精彩,明天继续来努力!

本吧签到人数:0

一键签到
成为超级会员,使用一键签到
一键签到
本月漏签0次!
0
成为超级会员,赠送8张补签卡
如何使用?
点击日历上漏签日期,即可进行补签。
连续签到:天  累计签到:天
0
超级会员单次开通12个月以上,赠送连续签到卡3张
使用连续签到卡
11月25日漏签0天
abap吧 关注:2,987贴子:15,797
  • 看贴

  • 图片

  • 吧主推荐

  • 视频

  • 游戏

  • 11回复贴,共1页
<<返回abap吧
>0< 加载中...

好久没开贴了,今天讨论下多进程job 作业吧

  • 只看楼主
  • 收藏

  • 回复
  • Wenkai
  • 人中龙凤
    11
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
好久没开贴了,今天讨论下多进程job 作业吧


  • Wenkai
  • 人中龙凤
    11
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
首先你得写一个单独可执行的report,记得把report 处理对象是否成功可以write 到spool ,这样可以看到每条处理的结果日志吧。


2025-11-25 11:16:56
广告
不感兴趣
开通SVIP免广告
  • Wenkai
  • 人中龙凤
    11
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
其次 再写一个report 每次取到数据后 比如取到600条数据,每次job 处理30条,开20个作业。每个作业开启间隔时间3秒。


  • Janewar
  • 武林盟主
    14
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
代码


  • Wenkai
  • 人中龙凤
    11
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼

FORM frm_process_data .
DATA:lv_error_flag TYPE c,
lv_dref TYPE REF TO data.
CASE p_name.
WHEN '/NSL/CML_ADV_REV_BATCH_CLE' .
CREATE DATA lv_dref TYPE TABLE OF /nsl/cml_adv_rev.
ASSIGN lv_dref->* TO <gt_table>.
PERFORM frm_get_data TABLES <gt_table>
USING p_name
CHANGING lv_error_flag.
IF lv_error_flag EQ abap_true.
MESSAGE e109.
RETURN.
ELSE.
PERFORM frm_submmit_job TABLES <gt_table>
USING p_name.
ENDIF.
WHEN ''.
WHEN OTHERS.
ENDCASE.
ENDFORM.


  • Wenkai
  • 人中龙凤
    11
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
FORM frm_set_main_data TABLES pt_rspar STRUCTURE rsparams
USING ps_table TYPE any
pv_name TYPE trdir-name.
DATA: ls_rspar TYPE rsparams,
lv_name TYPE string.
FIELD-SYMBOLS: <lv_comp> TYPE any .
CASE pv_name.
WHEN '/NSL/CML_ADV_REV_BATCH_CLE'.
lv_name = 'ADVID'.
ASSIGN COMPONENT lv_name OF STRUCTURE ps_table TO <lv_comp>.
CLEAR ls_rspar.
ls_rspar-selname = 'S_ADVID'.
ls_rspar-kind = 'S'.
ls_rspar-sign = 'I'.
ls_rspar-option = 'EQ'.
ls_rspar-low = <lv_comp>.
APPEND ls_rspar TO pt_rspar.
ENDCASE.
ENDFORM.
FORM frm_bat_job_check TABLES pt_job STRUCTURE /nsl/cml_rbatch_jobinfo
USING pv_time TYPE num03
pv_jobnum TYPE num03
CHANGING pv_error_flag TYPE c.
* 发布新作业前的检查
* Check before open a new job
CALL FUNCTION '/NSL/CML_FVD_BAT_JOB_CHECK'
EXPORTING
i_time = pv_time
i_number = pv_jobnum
TABLES
t_jobinfo = pt_job.
ENDFORM.
FORM frm_name_job USING pv_name TYPE trdir-name
CHANGING pv_jobseq TYPE num5
pv_jobname TYPE btcjob.
* 整理作业名称
DATA:lv_name TYPE char17.
pv_jobseq = pv_jobseq + 1.
CASE pv_name.
WHEN '/NSL/CML_ADV_REV_BATCH_CLE'.
lv_name = 'REV_BATCH_CLE '.
WHEN ''.
WHEN OTHERS.
ENDCASE.
CONCATENATE lv_name '-' sy-datum '-' pv_jobseq
INTO pv_jobname.
ENDFORM.
FORM frm_open_job TABLES pt_job STRUCTURE /nsl/cml_rbatch_jobinfo
USING pv_jobname TYPE btcjob
CHANGING pv_jobcount TYPE btcjobcnt
pv_error_flag TYPE c.
DATA:
ls_job TYPE /nsl/cml_rbatch_jobinfo.
pv_error_flag = abap_false.
CALL FUNCTION 'JOB_OPEN'
EXPORTING
jobname = pv_jobname "作业名
IMPORTING
jobcount = pv_jobcount "作业号
EXCEPTIONS
cant_create_job = 1
invalid_job_data = 2
jobname_missing = 3
OTHERS = 4.
IF sy-subrc <> 0.
pv_error_flag = abap_true.
MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
ELSE.
ls_job-jobname = pv_jobname.
ls_job-jobcount = pv_jobcount.
APPEND ls_job TO pt_job.
ENDIF.
ENDFORM.
DATA: ls_rspar TYPE rsparams.
CASE pv_name.
WHEN '/NSL/CML_ADV_REV_BATCH_CLE'.
* Key date
CLEAR ls_rspar.
ls_rspar-selname = 'P_CLE_DA'.
ls_rspar-kind = 'P'.
ls_rspar-sign = 'I'.
ls_rspar-option = 'EQ'.
ls_rspar-low = p_pday.
APPEND ls_rspar TO pt_rspar.
CLEAR ls_rspar.
ls_rspar-selname = 'S_RANL'.
ls_rspar-kind = 'S'.
ls_rspar-sign = 'I'.
ls_rspar-option = 'CP'.
ls_rspar-low = '*'.
APPEND ls_rspar TO pt_rspar.
WHEN ''.
WHEN OTHERS.
ENDCASE.
* 作业名
* Jobname
CLEAR ls_rspar.
ls_rspar-selname = 'P_JOBNAM'.
ls_rspar-kind = 'P'.
ls_rspar-sign = 'I'.
ls_rspar-option = 'EQ'.
ls_rspar-low = pv_jobname.
APPEND ls_rspar TO pt_rspar.
ENDFORM.
FORM frm_close_job USING pv_jobname TYPE btcjob
pv_jobcount TYPE btcjobcnt
CHANGING pv_error_flag TYPE c.
pv_error_flag = abap_false.
* 关闭作业 (Including COMMIT WORK)
* Close Background Request With COMMIT WORK
CALL FUNCTION 'JOB_CLOSE'
EXPORTING
jobcount = pv_jobcount
jobname = pv_jobname
strtimmed = 'X'
EXCEPTIONS
cant_start_immediate = 1
invalid_startdate = 2
jobname_missing = 3
job_close_failed = 4
job_nosteps = 5
job_notex = 6
lock_failed = 7
invalid_target = 8
OTHERS = 9.
* 如果发生错误
* Error happens
IF sy-subrc <> 0.
pv_error_flag = abap_true.
MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
ENDIF.
ENDFORM.


  • 深山无名
  • 人中龙凤
    11
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
所有的代码都分享出来..


  • 深山无名
  • 人中龙凤
    11
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
上载个完整的代码文件出来


2025-11-25 11:10:56
广告
不感兴趣
开通SVIP免广告
  • 丶奈_______
  • 武林高手
    9
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
在前台做会不会跑到数据库服务器上去


登录百度账号

扫二维码下载贴吧客户端

下载贴吧APP
看高清直播、视频!
  • 贴吧页面意见反馈
  • 违规贴吧举报反馈通道
  • 贴吧违规信息处理公示
  • 11回复贴,共1页
<<返回abap吧
分享到:
©2025 Baidu贴吧协议|隐私政策|吧主制度|意见反馈|网络谣言警示