首页 > 其他分享 >SAP中MR8M调用的BAPI是什么,如何使用?

SAP中MR8M调用的BAPI是什么,如何使用?

时间:2024-07-17 12:27:13浏览次数:7  
标签:BAPI TYPE lv 冲销 发票 SAP MR8M

在SAP系统中,针对MR8M(通常与采购发票冲销相关)的操作,并没有直接命名为BAPI_MR8M的标准BAPI。然而,对于发票冲销这一功能,SAP提供了BAPI_INCOMINGINVOICE_CANCEL这一BAPI,它可以用于冲销传入的发票。

BAPI_INCOMINGINVOICE_CANCEL 的使用

BAPI_INCOMINGINVOICE_CANCEL BAPI 是用于取消或冲销传入的发票记录的。该BAPI允许通过指定发票凭证号、年度和冲销原因来执行冲销操作。以下是使用此BAPI时可能涉及的一些关键参数:

  • invoicedocnumber:要冲销的发票凭证号。
  • fiscalyear:发票的会计年度。
  • reasonreversal:冲销的原因代码,SAP预定义了一系列的原因代码用于不同的冲销场景。
  • postingdate:冲销的记账日期,通常设置为当前日期,但也可以根据业务需求进行调整。

示例代码

以下是一个简化的示例代码片段,展示了如何使用BAPI_INCOMINGINVOICE_CANCEL来冲销一个发票:

DATA: lv_belnr TYPE bapi_incinv_fld-inv_doc_no,
      lv_gjahr TYPE bapi_incinv_fld-fisc_year,
      lv_reason TYPE bapi_incinv_fld-reason_rev,
      lv_pstng_date TYPE bapi_incinv_fld-pstng_date,
      lv_doc_no TYPE bapi_incinv_fld-inv_doc_no,
      lv_fisc_year TYPE bapi_incinv_fld-fisc_year,
      lt_return TYPE TABLE OF bapiret2,
      ls_return TYPE bapiret2.

lv_belnr = '发票凭证号'.
lv_gjahr = '会计年度'.
lv_reason = '冲销原因代码'.
lv_pstng_date = sy-datum. " 当前日期

CALL FUNCTION 'BAPI_INCOMINGINVOICE_CANCEL'
  EXPORTING
    invoicedocnumber = lv_belnr
    fiscalyear = lv_gjahr
    reasonreversal = lv_reason
    postingdate = lv_pstng_date
  IMPORTING
    invoicedocnumber_reversal = lv_doc_no
    fiscalyear_reversal = lv_fisc_year
  TABLES
    return = lt_return.

IF lv_doc_no IS NOT INITIAL.
  CALL FUNCTION 'BAPI_TRANSACTION_COMMIT'
    EXPORTING
      wait = 'X'.
ELSE.
  CALL FUNCTION 'BAPI_TRANSACTION_ROLLBACK'.
  LOOP AT lt_return INTO ls_return WHERE type = 'E'.
    " 处理错误消息
  ENDLOOP.
ENDIF.

注意事项

  • 在调用BAPI_INCOMINGINVOICE_CANCEL之前,请确保您具有执行该操作的权限,并且传入的参数是正确的。
  • 冲销操作可能会导致财务数据的变更,因此在执行之前请务必进行充分的测试和验证。
  • 根据SAP系统的版本和配置,可用的BAPI及其参数可能会有所不同。请参考您所使用的SAP系统版本对应的官方文档。

结论

在SAP系统中,针对MR8M相关的采购发票冲销功能,可以使用BAPI_INCOMINGINVOICE_CANCEL BAPI来实现。该BAPI提供了冲销传入发票所需的参数和方法。

标签:BAPI,TYPE,lv,冲销,发票,SAP,MR8M
From: https://blog.csdn.net/popo1987mm/article/details/140491303

相关文章

  • 22 SAP前台操作手册-MM模块-采购管理-采购日常查询报表(SAP标准)
    0总体说明SAP实施项目中,到了第3个阶段-系统实现,在这个阶段,因为蓝图汇报已经结束,配置也差不多完成了,自开发还在进行中,SAP标准功能下,可以进行基础业务的前台操作了,在实现阶段的尾端,客户指定的关键用户(俗称KU-KeyUser)会进行前台业务操作和练习,提高熟练程度,同时需要在外部SAP顾......
  • 使用GSAP制作动画视频
    GSAP3Blue1Brown给我留下了深刻印象。利用动画制作视频,内容简洁,演示清晰。前两天刚好碰到一件事,我就顺便学习了一下怎么用代码做动画。以javascrip为例,有两个动画引擎,GSAP和Animajs。由于网速的原因,询问了GPT后,我选择了GSAP来制作我的第一个动画视频。制作动画视频不同于动画,要......
  • 在webapi中创建一个jwt token
    1.第一步首先创建一个webapi项目2.安装nuget包: Microsoft.AspNetCore.Authentication.JwtBearer3.,然后再Program.cs文件中添加 4.然后运行起来 5.打开jwt.io网站,解密token 关于:iss,sub,exp,iat,nbf更新信息看下图:  ......
  • SAP ABAP ALV中列项目添加检索帮助
    ALV列项目自定义检索帮助发布日期:2024/07/15大多数时候,我们需要定义alv事件时会直接用OOALV实现,这样定义事件比较简洁。但有时候,我们在初期用REUSE_ALV_GRID_DISPLAY_LVC简单地实现了一个ALV,但后续要求我们为alv的列项目追加检索帮助,此时我们就需要为函数添加事件。案......
  • SAP ABAP ME21N工具栏按钮失效增强
    如何使ME21N工具栏的按钮按指定条件失效发布日期:2024/07/12案例:事务码ME21N,当输入明细的工厂为3121时,使按钮【屏幕概览关闭】失效1.鼠标放在【屏幕概览关闭】上按F1,查看技术信息。确定程序名和状态栏信息。在状态栏中确认按钮ID(METROF)2.确定增强点if_command_mm~exec......
  • SAP ABAP 写更改记录到表CDHDR/CDPOS 下篇
    表更改记录上篇写入表更改记录下篇发布日期:2024/07/11继上一篇的内容,用户测试的过程中发现,还是查不到写入记录。最后发现,我使用的系统环境,更改表equp时,对象类是QUOTEN2。基于此,当一个通过表TCDOB能查出多个对象类时,我们最好通过标准功能更改任意一条目标表的数据。再去查......
  • 5 SAP前台操作手册-PP模块-计划独立需求(PIR)创建、修改(删除)、显示(MD061,MD62,MD63
    0总体说明SAP实施项目中,到了第3个阶段-系统实现,在这个阶段,因为蓝图汇报已经结束,配置也差不多完成了,自开发还在进行中,SAP标准功能下,可以进行基础业务的前台操作了,在实现阶段的末端,客户指定的关键用户(俗称KU-KeyUser)会进行前台业务操作和练习,提高熟练程度,同时需要在外部SAP顾......
  • 6 SAP前台操作手册-PP模块-MRP物料需求计划运行(MD01,MD02,MD04-后台表RESB,EBAN)
    0总体说明SAP实施项目中,到了第3个阶段-系统实现,在这个阶段,因为蓝图汇报已经结束,配置也差不多完成了,自开发还在进行中,SAP标准功能下,可以进行基础业务的前台操作了,在实现阶段的末端,客户指定的关键用户(俗称KU-KeyUser)会进行前台业务操作和练习,提高熟练程度,同时需要在外部SAP顾......
  • 8 SAP前台操作手册-PP模块-生产订单(单个)创建、修改、显示(CO01,CO02,CO03-后台表AFK
    0总体说明SAP实施项目中,到了第3个阶段-系统实现,在这个阶段,因为蓝图汇报已经结束,配置也差不多完成了,自开发还在进行中,SAP标准功能下,可以进行基础业务的前台操作了,在实现阶段的末端,客户指定的关键用户(俗称KU-KeyUser)会进行前台业务操作和练习,提高熟练程度,同时需要在外部SAP顾......
  • SAP BOPF介绍
    BOPF是一个基于ABAP面向对象的框架,它提供了一组通用的服务和功能,来更快速的进行标准化、模块化开发。BOPF管理业务对象的整个生命周期,并涵盖业务应用程序开发的所有方面。开发人员可以专注于单个业务逻辑,而不是花费精力开发应用程序基础设施。使用BOPF,您可以免费获得整个应用程序......