创建会计凭证:BAPI_ACC_DOCUMENT_POST 增强字段

本文介绍了如何在ABAP程序中通过BADI增强BAPI_ACC_DOCUMENT_POST,以便在导入会计凭证时包含Reasoncode(RSTGR)字段。作者详细解释了如何定义新结构、创建BADI增强并实现CHANGE方法以传递扩展字段至系统表。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

创建会计凭证:BAPI_ACC_DOCUMENT_POST 增强字段

在ABAP程序中使用BAPI_ACC_DOCUMENT_POST的时候,如果有些字段在Tables参数中没有,比如,现在大家都用Reason code来作为现金流量表的表现方案。但是在BAPI_ACC_DOCUMENT_POST的accountgl参数是没有原因代码这个字段的,这种情况下,如何能在导入凭证的时候,包括这个字段呢?毫无疑问:使用增强来实现

一、简介
  1. 首先定义一个包括POSNR(类型为POSNR_ACC) 和**RSTGR(原因代码)**两个字段。POSNR这个字段必须有,因为在BAPI_ACC_DOCUMENT_POST中会包含多个tables参数,所以需要使用行项目号来关联。比如第一行#1的总账科目、金额、extensions等。
  2. SE19实现BADI增强ACC_DOCUMENT,这个增强是用来将BAPI_ACC_DOCUMENT_POST参数表EXTENSION2传入系统表ACCIT。只需要实现change方法
  3. 在BAPI_ACC_DOCUMENT_POST 中,启用 extension2 参数,将扩展字段传入
二、定义结构
  1. 事务码SE11定义一个结构ZSACC,包括POSNR (类型为 POSNR_ACC ) 和 RSTGR (原因代码) 两个字段。

    在这里插入图片描述

  2. 通过BADI将扩展字段传入系统表

    • SE19,使用 Classical BADI,BADI name 为 ACC_DOCUMENT,点击 Create 按钮。

      在这里插入图片描述

    • 系统弹出如下对话框,输入implementation name:

      外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

    • 点击确认后,进入如下界面,下面有一个Filter Values,添加一行,选择BKPFF,表示这个BADI实现只适合用于会计凭证直接输入。(根据需要添加对应的选项即可)

      在这里插入图片描述

    • 点击激活按钮,系统提示migrate到New Badi.并弹出如下对话款

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值