SAP-ABAP&FI模块_财务校验/替代应用实例记录

 一、业务背景:

        前段时间财务同事把凭证日期填错,变成了2099年,然后领导要求把财务凭证的过帐日期和凭证日期做一个控制,需要保持一致,不一致时报错。

        最近有时间,就去做一下,因为对开发本身就不是很熟,最近也想着学一下,那好,就上网找一下写财务凭证保存前的校验增强点吧,结果没找到,反而找到了财务的那个校验和替代的一些文章,因为之前也有所了解,但是没实际动过手,那刚好有需求就动手做一下吧,顺便记录下来。

         下面进入正题,首先也是参考了网络上很多资料,这篇写得挺好的,有需要的可以先学习一下这篇文章;

2024年6月5日补充说明:该增强影响了外币评估产生的凭证;(此文档各位小伙伴主要熟悉和了解GGB0检验和替代的操作即可,这个需求的凭证日期与过帐日期本身我也觉得不太合理,能不用还是不要用,我是没办法,该做还是要做,懂的都懂~~)

        该增强启用后,可能会存在部分部分问题,譬如某些公司需要操作外币评估,可能就会有问题,因为外币评估的操作中,本身就会有一个本月的凭证,以及次月的冲销凭证,肯定会存在凭证日期与过帐日期不一致的情况!!!这样会导致在执行FAGL_FC_VAL外币评估操作时导致凭证报错,目前我们的做法是把需要做外币评估的外贸公司,在先决条件中过滤去除~~

   SAP的校验和替代_sap校验替代-CSDN博客文章浏览阅读2.4w次,点赞17次,收藏79次。1.校验与替代的作用校验(Validation):在凭证保存前根据设置条件判断此凭证是否有效,其中可以按抬头、行项目或完全凭证来判断,然后再根据Validation设置的消息类型决定凭证是否允许保存。SAP校验是对在系统输入的数据按照规则设定检验是否正确,可以按抬头、行项目或完全凭证来判断,然后根据Validation设置的消息类型决定凭证是否允许保存(取消、错误、警告、信息),通过事_sap校验替代https://blog.csdn.net/zhongguomao/article/details/78687825        接下来,开始我的记录,只记录一些我觉得比较关键的点,我做的是校验,不是替代;

 二、完整操作步骤

1、事务代码SE38,将程序 RGGBR000复制为ZRGGBR000(系统已存在,不截图记录)

2、事务代码GCX2,维护应用区域GBLR退出程序ZRGGBR000

3、事务代码GGB0,维护有效性验证。(在GGB0维护有效性的过程中,用GS01/GS02/GS03维护“集”,用作数据校验的范围)

4、事务代码GGB4/OB28,激活有效性验证    

5、请求号传输

6、在生产环境手动用GS01/GS02/GS03维护“集”

三、实际操作记录

1、SE38复制程序,由于系统已有,不需要新增,省略

2、GXC2 维护应用区域GBLR退出程序ZRGGBR00

3、GGB0 维护有效性验证

(1)添加步骤:

        选中凭证抬头ZFI_001原本系统已经存在的“确认”文件,添加“步骤”,刚开始时,点击该步骤,数据都是空白的。

(2)添加检查逻辑

        由于我们的需求是,校验会计凭证的凭证日期必须要等于过帐日期,否则就报错,那么我们需要在检查这里,添加这个校验逻辑;

双击对应的BKPF表,进入字段查找界面

双击查找到的字段以及右边对应的符号,数据插入到逻辑框中;

这里的意思是,当凭证日期 = 过帐日期时,就满足检查的逻辑,就不会报错;当两个日期不相等时,就会报错

(3)创建先决条件

        原本是不打算要先决条件的,想着所有会计凭证都做这个控制,后面发现对于系统自动生成的凭证,如MIGO的过帐凭证,会有一些问题,后面想到,用户其实也只是需要控制手工会计凭证才需要做这个控制,那么我们这里就加一个先决条件(文章最后我会说那个MIGO过帐的一个问题)

这里我采用的是“集”这个功能

        这个“集”的功能,这里也不详细说了,没怎么太仔细的去研究过,大概记录一下我用到的一些简单功能,有兴趣的小伙伴随便搜一下就能找得到。

事务码:GS01/GS02/GS03

这里咨询了一下以前负责财务模块的同事,说是凭证类型中,比较常用的手工凭证,一般都是A D K S开头的,那么我们这里就把这部分的凭证类型,全部填入到这个“集”中。

双击IN 插进去之后,就可以点击组目录了,也就是可以选到“集”了

这里的意思是,需要凭证类型在ZPZLX2这个“集”中的数据,才会进入到这个校验中;

(4)添加错误信息

        “信息”,也就是当系统校验到逻辑不一致时,出现的错误信息,该错误消息的类型以及错误描述,都可以自定义

        这里信息类别ZFI001之前就已经存在了,如果是第一次配置的话,应该是需要先新增的,这里点击修改进入下一个页面,输入对应的错误消息描述

4、事务代码GGB4/OB28,激活有效性验证

5、请求传输

(1)SOBJ修改配置,确定GGB0/GGB1维护的校验或者替代,到底需要怎么传输到生产环境,是否允许在生产环境直接维护新增,不需要传输

(2)手动传输的情况;

        一般情况下,系统默认的传输方式是 1 手动传输,这种方式就会导致,你维护GGB0保存时,系统不会自动产生传输请求,需要如下图所示,手动打包请求

需要注意,要点击那个“确认”的地方,就是ZFI_001的地方,才可以传输,点击步骤是没法传输的。

网络上有看到资料,说需要把这个字段勾选掉,否则传输的时候,会把那个集的内容也传输过去,可能会导致测试系统的覆盖到生产系统,造成不一致,特别“集”里面的内容是号码范围段之类的,建议这里还是不要勾选(这里不详细说明,有兴趣的小伙伴看看下面链接)

替代(Substitutions)和校验(Validation)传输(Transport)注意事项:不勾选“传输组”_sap替代和校验传输-CSDN博客

后续测试没问题后即可传输到QAS测试系统和PRD生产系统。

6、在生产环境维护数据“集”(当然,如果传输的时候没有取消勾选那个传输组,是会一起传过来的,所以是否取消勾选,也要根据实际情况考虑,如果觉得没影响的话,是可以一起覆盖传输的)

四、附加记录过程中遇到的坑;

1、一个凭证抬头/凭证项目/完全凭证,只能有一个“确认”:

在OB28激活凭证有效性时,会发现新增的哪个ZFI_003,根本就没地方维护,添加时系统会报错

也就是说,一个调用点(凭证抬头、行项目、完全凭证)只能有一个“确认”,如果想增加多个校验逻辑的话,只能通过新增“步骤”来实现

2、物料凭证冲销时,凭证日期和过帐日期不一致

冲销物料凭证的时候,凭证日期和过帐日期,都是2024.05.21,按道理,产生的会计凭证应该这两个日期也是一样的。

但是实际过帐后,你会发现,冲销的凭证日期,是默认等于订单入库日期的,我们手工输入的凭证日期2024.05.21不生效,这样就会导致凭证日期与过帐日期不一致的问题~~!!也就是因为这样,后面才通过“集”作为控制范围,添加到GGB0的先决条件中去的。

3、生产系统默认是不允许修改的:SCC4维护

如果不维护SOBJ那个当前设置,那么使用事务码GGB0时是无法操作的,只能通过开发系统配置传输,现在已经勾选了,那么就可以直接在生产环境维护了。

4、如果在操作过程中,想切换到字段模式,可以点击下面的按钮

至此,这次的记录已完成,

  • 28
    点赞
  • 28
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值