0
点赞
收藏
分享

微信扫一扫

VA01 销售订单 审批 状态 增强


需求:



在使用事务代码VA01创建销售订单时,在点击保存按钮后,根据销售组织(VBAK-VKORG)及订单类型(VBAK-AUART)读取自定义表,如果自定义表有值且“自动审批”标识为“X”则自动将该订单抬头-状态中的参数设置为40审批通过。





前台位置:



​​

VA01 <wbr>销售订单 <wbr>审批 <wbr>状态 <wbr>增强

​​​

​​​

VA01 <wbr>销售订单 <wbr>审批 <wbr>状态 <wbr>增强

​​​

spro配置的地方:
​​​

VA01 <wbr>销售订单 <wbr>审批 <wbr>状态 <wbr>增强

​​



​​

VA01 <wbr>销售订单 <wbr>审批 <wbr>状态 <wbr>增强

​​​


​​​

VA01 <wbr>销售订单 <wbr>审批 <wbr>状态 <wbr>增强

​​​

​​​

VA01 <wbr>销售订单 <wbr>审批 <wbr>状态 <wbr>增强

​​​


看看具体的表:
​​​

VA01 <wbr>销售订单 <wbr>审批 <wbr>状态 <wbr>增强

​​​

​​​

VA01 <wbr>销售订单 <wbr>审批 <wbr>状态 <wbr>增强

​​​

​​​

VA01 <wbr>销售订单 <wbr>审批 <wbr>状态 <wbr>增强

​​​


找到增强点:
​​​

VA01 <wbr>销售订单 <wbr>审批 <wbr>状态 <wbr>增强

​​​

​​​

VA01 <wbr>销售订单 <wbr>审批 <wbr>状态 <wbr>增强

​​​

可以看看英文的描述:
​​​

VA01 <wbr>销售订单 <wbr>审批 <wbr>状态 <wbr>增强

​​​





好就是这个位置了,做隐士增强即可





大致参考代码如下:(最好别直接加在里面,封装在fm里,方便以后修改维护)



IF sy-tcode = 'VA01' OR sy-tcode = 'VA02'.



 



      WHERE vkorg = is_vbak-vkorg                                           "销售组织



        AND auart = is_vbak-auart.                                             "单据类型





 



   



   



     



        objnr              



        user_status        



     



        object_not_found     = 1



       



        status_not_allowed   = 3



        OTHERS               = 4.



   



* Implement suitable error handling here



   



      RETURN.                                                            



   





 










有时候修改状态,都是先读取 ,用STATUS_READ ,或者修改:STATUS_CHANGE



但是新建的时候,其实库表里是没有的,



所以使用STATUS_CHANGE_EXTERN





具体可以在项目里测试下看看哪个能达到效果



举报

相关推荐

0 条评论