【迪森专家专栏】第100篇:SAP财务会计 - 财务凭证处理函数是否支持资产业务处理?
发布时间: 2026-02-04
浏览次数: 17


 

[前言]


迪森深耕SAP领域20+年,深受众多客户好评夸赞。为了能够更好地帮助客户实施数字化项目,「迪森专家专栏」完全免费开源,向马斯克开源精神致敬!


本文根据迪森众多拥有20+年SAP经验的专家级顾问团队的资深能力,并结合迪森1000+个成功项目案例,总结并发表企业在推行ERP项目实施中的相应研究心得与建议,持续为企业的SAP实施与交付保驾护航。
 

[问题描述]


财务凭证处理BAPI_ACC_DOCUMENT_POST 是一个常用凭证处理函数,调用函数时,使用三个内表ACCOUNTGL、ACCOUNTRECEIVABLE、ACCOUNTPAYABLE ,来输入相应凭证行项目数据。但是这里没有科目类型=A资产的内表行项目。对于资产业务,BAPI_ACC_DOCUMENT_POST是否支持资产业务处理?
 


 

[问题分析]


1. 函数BAPI_ACC_DOCUMENT_POST 在SAP R3版本中创建,设计之初不支持资产业务处理;

在NOTE 643232 - General BAPIs do not generate asset line items 给出了说明:
 


 

在NOTE 3608570 - In BAPI_ACC_DOCUMENT_POST comes the error message "Account * in company code * cannot be directly posted to" 建议用户使用资产模块的事务码来处理资产业务,而不是直接使用BAPI_ACC_DOCUMENT_POST。
 

2. 函数 BAPI_ACC_DOCUMENT_POST 用于接口,或 程序批量上传凭证,使用效果比较好,不能导入:科目类型=A资产的内表行项目、科目类型=M 物料的内表行项目,让用户意犹未尽。不能导入 科目类型=M 物料,还能理解,但是:科目类型=A资产 不能导入,确实是功能不足。
 

3. 后续SAP软件做了相应改进,即:BAPI_ACC_DOCUMENT_POST 仅支持 资产业务的购置处理。为此SAP在 NOTE 643232 做了说明。

① 仅支持资产购置业务。

② 无论“资产购置清账对方科目”是否有金额过账,事务码AO90都必须配置科目。

③ 过账时:指定object type OBJ_TYPE = Z* 或者 OBJ_TYPE = BKPFF and BUS_ACT = RFBU。

④ 资产事务类型asset transaction type ,必须指定,通过BAPI_ACC_DOCUMENT_POST 的扩展结构来实现。

⑤ 科目类型=A资产的行项目,借用内表ACCOUNTGL来填写,科目需要指定与AO90事务码配置的相同科目,且行项目中,必须填写资产编号。

⑥ 资产过账金额,必须 00 业务货币金额、10 本位币货币金额,同时填写,BAPI_ACC_DOCUMENT_POST不能为你自动计算。
 

[解决方法]


1. 事务码SE11 调整BAPI字段阔展结构 ,增加 ANBWA 资产事务类型。
 


 

2. 调整上传凭证模板,增加:资产编号、资产事务类型。
 

3. 修改凭证上传程序,处理科目类型=A资产的业务。
 


 

4. 凭证上传成功后,事务码FB03检查凭证,凭证正常,如下:
 


 

5. 事务码 AS03 查看资产业务

资产购置资本业务处理正常,如下:
 


 

参考NOTES:

643232 - General BAPIs do not generate asset line items

3528661 - Error AA326 Enter a Transaction Type During Integrated Asset Acquisition with BAPI_ACC_DOCUMENT_POST

3608570 - In BAPI_ACC_DOCUMENT_POST comes the error message "Account * in company code * cannot be directly posted to"



【服务指南】

如需了解更多SAP课程资讯、项目咨询运维,请拨打迪森官方咨询热线: 400-600-8756

 

【关于迪森】

全球专业的咨询、技术及培训服务提供商,SAP金牌合作伙伴、SAP软件合作伙伴、SAP实施合作伙伴、SAP官方授权培训中心。二十年品质,值得信赖!

在线咨询
微信咨询
咨询电话
400-600-8756