SAP-MM-PO审批结构表的扩充

文章介绍了如何在SAP系统中扩展CEKKO表结构,添加新的审批依据字段,并通过ABAP编程实现审批条件,例如按含税总价值进行审批。通过增强M06E0004并配置审批策略,确保当采购订单总价值超过特定金额时需进行审批。该方法同样适用于采购申请的审批结构CEBAN。
摘要由CSDN通过智能技术生成

很早前就想过,按SAP设计的理念,不应该只狭隘地让采购申请和采购订单的审批内容只能从指定的那两个表结构里找现成的,果然,它是可以扩充的,只是我不知道。最近,在一众朋与友的帮助下,实现了审批结构表的扩充。

        最初源于,如果需要采购订单的审批不是按净价值来审批,而是按含税价总价值来决定审批,那怎么办呢。所以,想到,如果加个字段在CEKKO,那就好了,因为在EKPO里,有记录总值的字段,如果能用到这个字段的数据来审批就可以了。

         第一步,是在CEKKO增加一个附加结构(-字段)Append Structure:

附加结构的字段参照EKPO-BRTWR 的字段。(不用Y,Z开头,检查有警告,也可以用Y,Z开头,这ABAP知道)

货币类型字段还要有单位参考:

保存,激活,退回。这都是ABAP的,踩过界了。

      退回后可以看到新加的附加结构与字段:

结构字段加好了,激活结构。这时可以在CT04引用这个字段了,但它还没有值。

        第二步:给新加的字段指定数据来源。增强M06E0004,出口EXIT_SAPLEBND_002。

写程序,程序内容:采购订单的整张单总价值超过100RMB时,须审批。所以要把整张PO的行项目总价值加起再赋给CEKKO-BRTWR。

DATA:L_BRTWR LIKE EKPO-BRTWR .
DATA:BEGIN OF GT_BEKPO OCCURS 10.
      INCLUDE STRUCTURE BEKPO .
DATA:END OF GT_BEKPO .

LOOP AT IT_BEKPO INTO GT_BEKPO .

  IF GT_BEKPO-LOEKZ <> 'X' .                "删除的行项目不计"
    L_BRTWR = L_BRTWR + GT_BEKPO-BRTWR . 
  ENDIF.
ENDLOOP.

MOVE L_BRTWR TO I_CEKKO-BRTWR .

        同样保存,激活什么的。

       第三步:审批策略配置

           特性:

         分类:

         批准策略:

       第四步:下采购订单。

        采购订单的单个行项目含税总价值不超过100RMB,整张合计行项目含税总价值超过100RMB,要审批。

       10行:

       20行:

          整张合计总价值为34+70=104RMB,大于100RMB,须审批。结果:

   OK。就是这样。

        其实,SAP在结构表也预留了几个字段给我们。可以在出口写程序,赋值给它们,再用于审批策略。

        例如,要用成本中心或科目分配类别作为审批内容,估计就可以写出口赋值给它们了。

        再者,同理,采购申请的审批结构表CEBAN也是可以这样处理的,只是如果用到出口,则出口不同。CEBAN的出口用这2个: M06E0002 (以行项目为审批单位)M06E0005(以整张为审批单位)。

   凡事皆有可能。以此为记。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

SAP龙哥

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值