BAPI_ACC_DOCUMENT_POST - 记帐码 - FB01

本文介绍 SAP BAPI 扩展的具体方法,包括如何使用 BAPI_ACC_DOCUMENT_POST-EXTENSION1 函数进行定制,并列举了多个常量定义,涉及 SAP 系统中不同业务场景下的字段映射。

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

如果此函数OK,则可以使用 
BAPI_ACC_DOCUMENT_POST - EXTENSION1  (Container for 'Customer Exit' Parameter)
字段如下:
结构(INCLUDE):/SAPPCE/DPC_EQUATES

EXTENSION1-FIELD1 = 项目号
EXTENSION1-FIELD2 = 字段名

EXTENSION1-FIELD3 = 字段值


系统自带增强 , 已实现  EXTENSION1 -

  CALL FUNCTION 'PC_FUNCTION_FIND'
       EXPORTING
            i_procs       = 'RWBAPI01'
       TABLES
            t_fmrfc       = fmtab
       EXCEPTIONS
            nothing_found = 1
            OTHERS        = 2.

相关字段: - 与SAP版本有关

* fields for bapi-extension
  constants:
    c_ext_document_status(30)         type c value 'BSTAT',
    c_ext_wbs_element(30)             type c value 'PS_PSP_PNR',
    c_ext_target_sp_ind(30)           type c value 'ZUMSK',
    c_ext_tax_code(30)                type c value 'MWSKZ',
    c_ext_tax_base_amount(30)         type c value 'WMWST',
    c_ext_stat_tax_amount(30)         type c value 'STTAX',
    c_ext_stat_tax_amount_ccc(30)     type c value 'STHTX',
    c_ext_with_tax_creditor(30)       type c value 'WHTX_CREDITOR',
    c_ext_withholding_tax(30)         type c value 'WHTX',
    c_ext_activity(30)                type c value 'VORGN',
    c_ext_business_transaction(30)    type c value 'GLVOR',
    c_ext_transaction_code(30)        type c value 'TCODE',
    c_ext_invoice_reference(30)       type c value 'REBZG',
    c_ext_invoice_reference_year(30)  type c value 'REBZJ',
    c_ext_invoice_reference_item(30)  type c value 'REBZZ',
    c_ext_sub_document_type(30)       type c value 'REBZT',
    c_ext_invoice_reference_check(30) type c value 'REBZG_CHECK',
    c_ext_allocation(30)              type c value 'ZUONR',
    c_ext_posting_key(30)             TYPE c VALUE 'BSCHL', "#976257
    c_ext_cash_discount_amount(30)    TYPE c VALUE 'WSKTO', "#976257
    c_xauto(30)                       type c value 'XAUTO'.

* Begin: BAdI to Modify Fields for Posting (subscreen)
  constants:
    c_ext_cash_discount_base(30)      type c value 'SKFBT',
    c_ext_dunning_block(30)           type c value 'MANSP',
    c_ext_cash_discount_fixing(30)    type c value 'ZBFIX',

    c_ext_segment(30)                 type c value 'SEGMENT',
    c_ext_psegment(30)                 type c value 'PSEGMENT'.
* End: BAdI to Modify Fields for Posting (subscreen)

* Begin: Support other Account Assignment Objects
  constants:
    c_ext_cost_center(30)       TYPE c VALUE 'KOSTL',
    c_ext_order(30)             TYPE c VALUE 'AUFNR',
    c_ext_network(30)           TYPE c VALUE 'NPLNR',
    c_ext_network_activity(30)  TYPE c VALUE 'VORNR'.
* End: Support other Account Assignment Objects

* Begin: Down Payment Chain Integration to purchasing
  constants:
    gc_ext_stat_ebeln(30) TYPE c value 'EBELN',
    gc_ext_stat_ebelp(30) TYPE c value 'EBELP',
    gc_ext_stat_zekkn(30) TYPE c value 'ZEKKN'.                       "N1602847
* End: Down Payment Chain Integration to purchasing


<think>好的,用户想了解SAP冲销相关的函数。首先,我需要回顾一下用户提供的引用内容。引用[1]提到FB08和F.80进行整个凭证冲销,而反记账用于部分冲销。引用[2]讨论的是BAPI_GOODSMVT_CANCEL用于物料凭证冲销,以及BAPI调用的参数类型。引用[3]则展示了在FB08中使用BAPI_TRANSACTION_ROLLBACK来回滚事务。 接下来,我需要确定用户的具体需求。用户提到“与SAP冲销相关的函数”,可能包括财务和物料管理模块的不同冲销方法。常见的函数有BAPI_ACC_DOCUMENT_REV_POST用于财务凭证冲销,BAPI_GOODSMVT_CANCEL用于物料凭证冲销,还有标准事务FB08背后的函数可能涉及。 另外,用户可能需要了解这些函数的使用场景和参数。例如,在财务模块中,使用BAPI时需要指定公司代、会计年度、凭证编号等。而在物料管理中,可能需要物料凭证号和年份。此外,异常处理也很重要,比如通过EXCEPTIONS参数捕获错误。 还需要注意用户提到的反记账功能,这可能与冲销不同,属于部分冲销的方法。因此,在回答中需要区分整个凭证冲销和部分冲销的不同实现方式。 最后,用户可能希望了解如何调用这些函数,比如在ABAP程序中如何使用CALL FUNCTION,以及如何处理返回值。例如,引用[3]中的代示例展示了检查返回参数后决定是否回滚事务。 总结需要涵盖财务和物料模块的主要冲销函数,说明其用途、关键参数及调用注意事项,并推荐相关事务。同时,生成的问题应引导用户进一步探索不同模块的冲销方法和实际应用中的技巧。</think>在SAP系统中实现冲销操作,主要涉及以下函数和实现方式: ### 一、财务凭证冲销相关函数 1. **BAPI_ACC_DOCUMENT_REV_POST** 用于冲销财务会计凭证的关键函数,支持反记账功能。核心参数包括: - `COMPANYCODE`(公司代- `FISCALYEAR`(会计年度) - `REVERSALREASON`(冲销原因代- `ACCOUNTINGDOCUMENT`(凭证编号) ```abap CALL FUNCTION 'BAPI_ACC_DOCUMENT_REV_POST' EXPORTING reversal_reason = '01' "冲销原因 companycode = '1000' fiscalyear = '2023' accountingdocument = '1900000001'. ``` 2. **FB08事务底层函数** 标准冲销事务FB08通过`FI_DOCUMENT_REVERSAL`函数实现,支持错误回滚机制[^3]: ```abap IF return-status = 'E'. CALL FUNCTION 'BAPI_TRANSACTION_ROLLBACK' ENDIF. ``` ### 二、物料凭证冲销函数 1. **BAPI_GOODSMVT_CANCEL** 专门用于冲销MIGO事务创建的物料凭证(如收货/发货): - 需传入`MAT_DOCUMENT`(物料凭证号)和`MAT_DOCUMENTYEAR`(凭证年度) - 通过`GOODSMVT_HEADRET`结构返回新生成的冲销凭证号[^2] ### 三、特殊冲销场景 1. **反记账实现** 通过BAPI字段`ITEM_AMOUNT`设置负数金额时,需激活`REVERSE_IND`(反记账标识)[^1] 2. **采购订单冲销** 使用函数`BAPI_PO_CANCEL`,通过设置`PO_NUMBER`和`PO_ITEM`指定冲销行项目 ### 四、调用注意事项 1. 必须处理`RETURN`结构检查执行结果 2. 使用`BAPI_TRANSACTION_COMMIT`提交事务 3. 异常处理需捕获`ERROR_MESSAGE`等异常类型[^2]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值