更多文章正在写作中
本教程迄今为止我们介绍的各种 ABAP 程序的编写,都是在事物码 SE38 或者 SE80 里完成之后,直接点击工具栏的执行按钮,或者使用 F8 快捷键来执行的:
以这种方式启动的 ABAP 程序,是以在线方式(online)
运行的,有时也称 联机
模式。
也就是说,如果在执行 ABAP 程序的过程中,出现了网络连接中断的问题,或者不小心关闭了 SAPGUI,因为 ABAP 程序的执行是在 ABAP 服务器上进行的,那么这时 ABAP 程序的执行就会中断。执行过程中没有进行持久化操作(比如保存执行结果到数据库表),则所有数据会全部丢失。
在 SAP 很多业务场景中,我们会遇到一些确实需要长时间运行的 ABAP 报表,对这种类型的程序,最适合的方式就是让它们以后台作业(background job)
的形式在 ABAP 服务器上运行。这种脱机工作的方式,其优点之一就是一旦将作业调度之后,我们就可以关闭 SAPGUI,直至作业执行完毕。
下面是具体的步骤讲解。
按照上面超链接里文章的步骤学习之后,在事物码 SM37 里指定监控条件,显示用户名为 WANGJER, 状态为 Active
的后台作业:
下图的意思是后台作业 ZJERRY_JOB
状态为 Active,说明对应的 ABAP 报表已经开始执行了,总共持续时间为 388 秒。