需求:
在使用事务代码VA01创建销售订单时,在点击保存按钮后,根据销售组织(VBAK-VKORG)及订单类型(VBAK-AUART)读取自定义表,如果自定义表有值且“自动审批”标识为“X”则自动将该订单抬头-状态中的参数设置为40审批通过。
前台位置:
spro :
看看具体的表
找到增强点:
大致参考代码如下:(最好别直接加在里面,封装起来,方便以后修改维护)
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
具体可以在项目里测试下看看哪个能达到效果