业务需求:

客户创建一个服务项目并且生成服务订单,需要管理专业服务订单上的可选税分类。

方案:

使用BADI “Sales Item Tax Fields Modification” 修改专业服务订单的税收分类

这是S/4HANA Cloud 2002发布的新功能专业服务的可选税收分类中的一部分。

英文版原文链接: https://s4hanacloud.community.sap/blogs/show/JDWc5USep31QV7LKjwAXhJ

详情:

  • 需要用到的ROLE:

Role Name

Role Description

SAP_BR_PROJ_MANAGE_COMM

Project Manager - Commercial Services

SAP_BR_INTERNAL_SALES_REP

Internal Sales Representative

  • 让我们按照下面的步骤来实现这个需求:

 1. 打开应用程序<自定义字段和逻辑>

     

2. 创建一个新的自定义字段。选择“+”(创建)按钮来建立新的自定义字段。

 注意: 使用代码列表类型。

 选择创建并编辑

    111111.png

3. 选择“UI和报表,向下滚动直至找到计划客户项目,点击启用使用户界面上可使用这个新定义字段。

22222222.png

2222222.png

 启用:

3333333.png

 选择保存,然后点击发布

4.发布这个字段可能需要等待几分钟。完成后状态会显示为已发布

111111.png

5.创建新的自定义逻辑。选择“+”(创建)按钮来建立新的自定义逻辑。

2222222.png

6.选择这段逻辑所对应的正确的业务上下文和增强实施。

 点击创建

111111.png

7. 现在可以撰写自定义逻辑了。在本演示中使用以下代码:

salesdocumentitem_tax_out = salesdocumentitem_tax_in.

If salesdocument-salesdocumenttype = 'DMR1'.

if processingstep = 'INITIAL'.

   data: refdocitem type i_salesdocumentitem.

    if salesdocumentitem-referencesddocument is not initial and salesdocumentitem-referencesddocumentitem is not initial.

        select single * from i_salesdocumentitem into @refdocitem where salesdocument = @salesdocumentitem-referencesddocument and salesdocumentitem = @salesdocumentitem-referencesddocumentitem.

        if refdocitem-yy1_tax_classification_sdi is not initial.

            salesdocumentitem_tax_out-producttaxclassification1 = refdocitem-yy1_tax_classification_sdi.

            else.

            salesdocumentitem_tax_out-producttaxclassification1 = refdocitem-producttaxclassification1.

        endif.

 

    endif.

endif.

endif.

8. 当你输入自定义代码后,选择保存草稿”:

2222222.png

 然后点击发布”:

111111.png

9. 发布这段自定义逻辑可能需要等待几分钟。完成后状态会显示为已发布

111111.png

10.将这段新创建的自定义逻辑添加到相关的UI应用程序屏幕上。

 前往应用程序<计划客户项目>并找到相关的项目。

 前往开票页并选择编辑

111111.png

11.点击设定,选择要添加的自定义字段然后点击确定

111111.png

12.在演示中,将税分类改为1

111111.png

 开票到期日期:

111111.png

13. 现在前往应用程序<审批开票建议 今天到期>去创建一个基于客户项目的借项凭证请求 (DMR)

注意:这是可以通过BAdI 实施来使用税分类的步骤。

选择编辑

111111.png

14.选择审批”:

111111.png

15. 当一个借项凭证生成时,将出现一条消息:

111111.png

16.检查是否预期的税收分类已存在

前往应用程序<管理借项凭证请求>.

搜寻已创建的DMR。在本次演示中, 我们想查看凭证70001602:

111111.png

17. 双击物料下的项目行

111111.png

18.前往出具发票凭证页,可以看到税收分类的数值为“1”

111111.png

总结:

  • 在专业服务用例中,必须通过使用应用程序<计划客户项目>中的自定义字段和BAdI实施来修改DMR(借项凭证请求)中的税收分类(而不是在订单类型SO01的销售订单中)
  • BAdI实施中你需要做以下操作:
  1.       从之前的凭证中通过I_SalesDocumentItem读取自定义字段。
  2.        税收分类字段是通过自定义字段赋值的。