SAP工具箱 增强后台作业调度程序详解(二)

2021-10-29 23:50发布


          点击此处--->   EasySAP.com 群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)

点击蓝字 关注我们

前言

因为标准事务代码SM36调度的后台作业功能相对比较简单.项目中需要针对后台作业做很多特殊的处理,这些处理有些可以通过标准功能实现, 有些无法通过标准功能实现. 

为了简化后台作业的定义及丰富后台作业的控制,开发了这个后台作业二次调度程序

ZBC_IF_JOB_SCHEDULE

本文给出了增强后台作业调度的几个配置场景及示例.

详细参数设置
无峰,公众号:ABAP 技巧与实战SAP工具箱 增强后台作业调度程序详解(一)

场景及示例

列举出了如下场景

  • 一个作业定义多个步骤

  • 带有通配符号的变式在一个作业中

  • 定义程序的并发作业

  • 定义多变式的并发

  • 按天定义的作业

  • 控制指定时间段不执行作业


01

一个作业定义多个步骤


示例场景是一个主数据下传场景,需要优先下传主数据部分,然后下传商品的不同视图信息, 最后下传各种列表.

这些JOB编号有一个共同的作业名称ZIF_MD205.有相同的作业间隔期间.  同时设置了步骤顺序.

个别步骤之间有等待时间,通过程序 ZBC_JOB_WAIT 实现等待. 

在SM37中查看作业细节时可以看到这些等待步骤.


02

带有通配符号的变式在一个作业中


变式中维护通配符号,并且通过变式处理方式在一个作业的实现多个步骤.

示例是处理系统后台开票程序.开票程序中只能限定一个销售组织. 所以要为每一个销售组织都创建一个变式,这些变式都以VF06开头.

后台调度配置表中变式维护VF06* .同时定义变式处理方式A . 这样每个VF06*开头的变式都会创建一个步骤.

变式允许的输入方式

程序的多个变式

SM37中看到的作业详情


03

定义程序的并发作业


示例是交货单过账程序.

在一个运行周期无法处理完所有需要自动过账的交货单. 

所以为该JOB编号定义了并发处理. 并发10个作业处理. 同时传递选择参数S_VBELN到并发调度程序ZBC_MULTI_JOB_ALL.

SM37中可以看到具体的并发作业. 这些并发作业都是由作业ZA_DN_POST_MULTI再次调度而来 并发作业命名用原程序_<时间>_<尾号开始>_<尾号截至>. 

因为定义了10个并发 所以依次处理 00_09  10_19 .....90_99 的尾号.


04

定义多变式的并发


程序ZA_DN_POST创建了多个以BGRUN开头的变式.作业中定义变式 BGRUN* 变式处理方式B(多个作业执行). 这样也可以实现作业的并发执行. 并发通过变式中限定的条件实现.

SM37中可以看到最终生成的三个作业 作业名 = <原作业名>_<变式名>

相比定义程序的并发作业. 这种方式需要创建若干个变式,好处是可以随意区分间隔.


05

按天定义的作业


给出作业周期为86400秒,同时限定作业执行的时间范围. 计算作业的执行会在间隔期间修正. 避免作业因为延迟的原因. 导致某天没有执行.


06

指定时间段不执行作业


传输请求时,如果传输的请求包含重要信息的改变,比如表结构调整. 此时如果后台还在执行创建单据的动作. 则后台作业会大量报错 "版本不一致",该错误在ST22中可以查看到.

为了避免这种报错. 给出一个空挡期不执行后台作业, 每天在此空挡期才传输请求.

下图中给出了11:30 - 12:00 的空档期. 在此期间将没有作业执行,可以用来传输请求.


总结

ZBC_IF_JOB_SCHEDULE用于增强调度后台作业. 在标准调度基础上添加了很多实用功能. 管理人员可以通过SE16N维护表ZTIF002BJ,实现批量维护,调整后台作业.

在项目实践中,极大简化了的作业的定义,调整过程.并附加了很多实用功能.用于定义更复杂的作业.

关于新版的下载: 旧版已经可以完成大部分功能了.如需新版,可以打赏后文章向作者索取.

THE

END

约定

如果你对这篇文章感兴趣,请帮忙点赞,在看,分享.       

    (如果你真的喜欢这篇文章,请记得回来打个赏,作为支持我继续下去的动力,这是一个正反馈过程. 越多的人打赏,作者越有动力分享,读者就能享受更多的福利.毕竟打赏的金额富不了我,穷不了你,却能支持这个公众号长久发文.)



公众号 : syjf1976_abap

          ABAP开发技巧

微信号 : 392077


公众号主群加入受限, 请扫码加入副群后,向管理员申请加入主群

赞赏支持