SAPABAP 开发技术总结财务凭证确认与替代

作者:郑德鼎 约 6 分钟阅读 更新日期:2025-03-02 1 年前更新 标签:ABAP, CO, FI, PP, 开发, 生产, 财务
SAPABAP 开发技术总结财务凭证确认与替代 - 封面图
SAPABAP 开发技术总结财务凭证确认与替代 - 封面图

** Validation(确认) **

财务凭证的有效性检查就是在凭证保存前根据预先设置好的条件判断输入的内容是否符合要求、是否有效,否则向用户发出警告或错误消息

有效性检查的用处很多,比如原因代码的校验,现中广核集团及各分公司的现金流量表均通过原因代码来核算各报表项目,因此现金流量表中表内科目财务凭证过账均需填入原因代码,为实现此需求可使用财务凭证的有效性检查,再如某些损益类的科目只允许对某几个成本中心记账,亦可借助有效性检查加以实现

理论上讲,SAP的凭证有效性检查可以以财务凭证的任何字段做条件进行检查,使SAP ERP的实施配置更加灵活。

SAPABAP 开发技术总结财务凭证确认与替代 - 封面图
SAPABAP 开发技术总结财务凭证确认与替代 - 封面图

财务凭证有效性检查的事务代码:(OB28:AP|AR|GL),或通过后台配置进入,路径如下:

SAPABAP 开发技术总结财务凭证确认与替代 - 封面图
SAPABAP 开发技术总结财务凭证确认与替代 - 封面图

财务凭证的有效性检查有三个触发点:

0001->凭证抬头

(输入凭证抬头内容不需要等待行项目输入完毕回车就可以立即触发)

0002->凭证行项目

(单个行项目时触发,当然也可以使用凭证抬头表BKPF的字段做条件,但是应用不到其他行项目的数据)

0003->完全凭证

(可以LOOP整个凭证,弥补行项目触发点缺陷)

SAPABAP 开发技术总结财务凭证确认与替代 - 封面图
SAPABAP 开发技术总结财务凭证确认与替代 - 封面图

** 配置以公司代码为基础,即此检查(下图所示‘确认’列)只在此公司代码下生效,同时配置触发点,说明此检查在凭证的哪个阶段生效 **

**

SAPABAP 开发技术总结财务凭证确认与替代 - 封面图
SAPABAP 开发技术总结财务凭证确认与替代 - 封面图

**

活动等级配置1,即为激活状态。

SAP 确认(Validation)- 配置步骤

1\. SE38 程序RGGBR000复制为ZRGGBR000

2\. GCX2 维护应用区域GBLR退出程序ZRGGBR000

SAPABAP 开发技术总结财务凭证确认与替代 - 封面图
SAPABAP 开发技术总结财务凭证确认与替代 - 封面图

3.GGB0 维护有效性验证

SAPABAP 开发技术总结财务凭证确认与替代 - 封面图
SAPABAP 开发技术总结财务凭证确认与替代 - 封面图
SAPABAP 开发技术总结财务凭证确认与替代 - 封面图
SAPABAP 开发技术总结财务凭证确认与替代 - 封面图
SAPABAP 开发技术总结财务凭证确认与替代 - 封面图
SAPABAP 开发技术总结财务凭证确认与替代 - 封面图
SAPABAP 开发技术总结财务凭证确认与替代 - 封面图
SAPABAP 开发技术总结财务凭证确认与替代 - 封面图

注:检查U102,在检验的出口程序中ZRGGBR000,例如:U101

*&---------------------------------------------------------------------**& Form u101*&---------------------------------------------------------------------** text*----------------------------------------------------------------------** -->B_RESULT text*----------------------------------------------------------------------*FORM u101 USING b_result.

TABLES:zfi_zzfi001. SELECT SINGLE * FROM zfi_zzfi001 WHERE zzfi001 = bseg-zzfi001 AND zdjbz = 'X' . IF sy-subrc EQ 0. b_result = b_false. EXIT. ENDIF. ENDFORM.

4.GGB4 激活有效性验证

SAPABAP 开发技术总结财务凭证确认与替代 - 封面图
SAPABAP 开发技术总结财务凭证确认与替代 - 封面图

财务凭证的有效性检查:一个检查由若干个步骤组成每个步骤实现一个检查功能。

步骤由三部分组成:

1\. 先决条件,即在满足此条件时能实施此检查

2\. 检查,具体的检查逻辑(除了直接设置逻辑表达式外,也可以通过出口写ABAP程序进行比较复杂的校验规则)

3\. 信息,在不满足检查逻辑的情况下系统将此信息弹出提示

**Substitutions(替代)**

财务凭证替代顾名思义,就是在凭证过账时将凭证的某些字段值按设置好的规则进行替代,此功能能满足用户大部分需求以及某些变态的需求

财务凭证替代检查的事务代码:(OBBH:AP|AR|GL),或通过后台配置进入,路径如下

SAPABAP 开发技术总结财务凭证确认与替代 - 封面图
SAPABAP 开发技术总结财务凭证确认与替代 - 封面图

财务凭证的替代有三个触发点:

0001->抬头凭证

0002->行项目

0003->完全凭证

0005->销售成本会计(功能范围替代)

0006->销售会计核算成本

SAPABAP 开发技术总结财务凭证确认与替代 - 封面图
SAPABAP 开发技术总结财务凭证确认与替代 - 封面图

配置以公司代码为基础,即此检查(下图所示‘替代’列)只在此公司代码下生效,同时配置触发点,说明此检查在凭证的哪个阶段生效

SAPABAP 开发技术总结财务凭证确认与替代 - 封面图
SAPABAP 开发技术总结财务凭证确认与替代 - 封面图

活动等级配置1,即为激活状态。

SAP 替代(Substitutions)- 配置步骤

1.SE38 程序RGGBS000复制为ZRGGBS000

2.GCX2 维护应用区域GBLS退出程序ZRGGBS000

SAPABAP 开发技术总结财务凭证确认与替代 - 封面图
SAPABAP 开发技术总结财务凭证确认与替代 - 封面图

3.GGB1 维护替代

SAPABAP 开发技术总结财务凭证确认与替代 - 封面图
SAPABAP 开发技术总结财务凭证确认与替代 - 封面图
SAPABAP 开发技术总结财务凭证确认与替代 - 封面图
SAPABAP 开发技术总结财务凭证确认与替代 - 封面图
SAPABAP 开发技术总结财务凭证确认与替代 - 封面图
SAPABAP 开发技术总结财务凭证确认与替代 - 封面图

4\. GGB4 激活有效性验证

SAPABAP 开发技术总结财务凭证确认与替代 - 封面图
SAPABAP 开发技术总结财务凭证确认与替代 - 封面图

财务凭证的替代:一个替代由若干个步骤组成每个步骤实现一个检查功能。

步骤由三部分组成:

1.先决条件,即在满足此条件时能实施此检查

2.替代,具体的检查逻辑(除了直接设置逻辑表达式外,也可以通过出口写ABAP程序进行比较复杂的校验规则)

注意事项:

1\. SAP标准并不是所有字段都能用替代或验证

2\. 数据表GB01可以查看哪些字段可以用,与凭证抬头、行项目、完全凭证相关的替代和验证

3\. 如果SAP标准不能用于替代和验证字段,可以通过SM30(V_GB01C)修改该字段,使其可以用于替代和验证

4\. 验证或替代激活后,SE38运行程序RGUGBR00生成替代或验证的程序代码

5\. 数据表GB31,可以查看不同应用范围有哪些验证和替代的调用点可用

6\. RGUGBR00生成替代和验证程序的代码包含在程序GBTAAFI0中

郑德鼎

关于作者:郑德鼎

企业信息化与 SAP 技术顾问,长期专注 SAP ABAP、FI/CO、MM、SD 等模块的技术分享与实战经验总结。查看更多介绍

来源说明:本文内容由「SAPABAP开发技术总结财务凭证确认与替代.md」整理生成,仅用于内部技术分享与学习交流。