原创 无峰 [ ABAP 技巧与实战 ](javascript:void\(0\);)
**点击蓝字** 关注我们
一
前言
自动单据系列程序需要调整使用知识库功能.
> 知识库功能详见链接 无峰,公众号:ABAP 技巧与实战 [ SAP工具箱 知识库
> ](http://mp.weixin.qq.com/s?__biz=Mzg4MjA1MjE4NQ==&mid=2247486206&idx=1&sn=49381c138341dc8eb193e2ab33ab0e13&chksm=cf5dd7c8f82a5edee77aa1ea7c0ec7be04edc10afccb4ec442e187d748d16bee48e003e4137e#rd)
涉及到大概50多个程序需要修改.为了偷懒,花了两天时间写了一个程序,用于批量修改源代码.
**本文主要介绍程序ZBC128 批量修改程序**
二
代码共同点
可以批量修改的源代码都有共同点. 比如,都是复制同一个模板程序.
GV_TEST.
三
执行步骤
按下述步骤完成批量修改程序
_**01** _
**执行TCODE ZBC128**
输入程序限制及要最终要写入的传输请求号
_**02** _
**输入旧代码**
在执行界面中点击旧代码按钮,输入要替换的代码. 空白行不作为判断依据,在执行代码比较时,会忽略空白行.
_**03** _
**更新内容**
输入旧代码保存后,会更新列表状态
• 包含旧代码标记
• 命中旧代码次数
• 旧代码语法检查状态
_**04** _
**输入新代码**
点击新代码按钮 输入新代码.
如果仅仅是注释旧代码. 则新代码部分输入旧代码及注释符号. 新代码部分可以添加注释行, 注释行会作为新代码的一部分,参与替换.
_**05** _
**执行替换**
执行替换后后会更新字段
• 图标字段
• 最后依次执行的消息
• 新代码语法检查状态
• 最大版本号:每次替换都会保存一个新的版本信息.
两种情况会导致替换失败
• 新代码存在语法错误
• 新代码写入传输请求失败
_**06** _
**查看替换效果**
双击程序名查看替换效果.
替换包含以下部分信息
• 批量替换,处理日期,时间,处理人
• 旧代码注释部分
• 新代码部分
_**07** _
**写入请求**
替换成功的程序会自动写入传输请求.
四
附加功能
每次替换成功, 都会记录一个版本信息. 通过恢复版本功能可以恢复到替换之前的版本. 多次替换会持续记录版本信息.
弹框选择版本信息后.选择要恢复的版本,确定后,程序会恢复到替换前的版本.
五
关于源代码
批量修改代码只是一个用处不大的小工具.
如果你对这个工具感兴趣或者想通过源代码了解实现方式.可以打赏文章后, 联系微信号392077索取源代码.
六
总结
设计大量类似程序时,最好把相同的基本功能整合到代码块中.
根据情况,可以使用如下几种模块化的方式
• 包含相同的INCLUDE程序
• 调用同一个程序的子例程PERFORM FRM IN PROGRAM
• 调用函数
• 调用类
这样基本功能只需一次调整,所有相关代码都会生效.
但是因为历史原因确实产生了大量程序使用了相同的代码块实现相同的功能.在这些功能要统一调整时. 可以使用ZBC128 批量修改程序
批量修改程序可以减少程序中重复代码的修改操作. 具体使用时,要明确批量修改的目标程序确实具备共同点. 并且可以同时调整成另外一个共同点.
** THE **
** END **
**约定**
如果你对这篇文章感兴趣,请帮忙点赞,在看,分享.
( **如果你真的喜欢这篇文章,请记得回来打个赏,作为支持我继续下去的动力,这是一个正反馈过程.
越多的人打赏,作者越有动力分享,读者就能享受更多的福利.毕竟打赏的金额富不了我,穷不了你,却能支持这个公众号长久发文.** )
**公众号 : syjf1976_abap**
**ABAP开发技巧**
**微信号 : 392077**
**公众号主群加入受限, 请扫码加入副群后,向管理员申请加入主群**