网站建设介绍ppt模板,建站工具,网站建设使用虚拟主机的优点与缺点,百度搜索词热度查询在SAP/ERP项目的实施中销售管理模块#xff08;SD#xff09;的创建和修改销售订单必定会有输入字段校验检查的需求#xff0c;来防止业务人员录入错误或少录入数据#xff0c;SAP公司也考虑到这一点#xff0c;所以这方面的配置功能也非常强大#xff0c;通常情况下不需…在SAP/ERP项目的实施中销售管理模块SD的创建和修改销售订单必定会有输入字段校验检查的需求来防止业务人员录入错误或少录入数据SAP公司也考虑到这一点所以这方面的配置功能也非常强大通常情况下不需要写开发代码业务顾问通过配置不完整日志就可以非常容易实现大部分需求但是在实际项目中还是会遇到一些特殊的需求不能通过配置实现需要进行增强开发。 下面通过一个项目案例来介绍下如何通过增强实现销售订单创建和修改的字段输入的合规性检查。 业务需求如下
某公司销售模块的业务要求销售组织为S010在创建ZPE类型的销售订单时候如果销售订单行项目类型为Z001时要求检查销售订单行项目的订单号必须输入如下图说明。 类似上面这样的复杂的业务需求就无法通过不完全日志的配置来实现只能通过增强开发实现。
下面详细介绍下实施步骤
增强点 USEREXIT_SAVE_DOCUMENT_PREPARE此增强用户出口主要用来对销售订单保存前的各字段的约束条件的检查。 实施方法使用隐式增强方法隐式增强点位如下 备注如何查找隐式增强点不是本文重点后续专题文章介绍。
详细具体实施步骤 上面找到隐方增强点后继续按如下步骤操作
点击螺旋图标后会显示创建图表如下 备注如果需要传输的必须选择包如果自己的学习系统不需要传输的包可以选择$TMP或点击本地对象保存即可。 备注SO行项目数据被保存在内表XVBAP可以从此内表读取到维护的行项目值。
上面位置写上增强代码后点击保存-激活。这个增强需求的实施步骤就全部完成了。
增强代码如下 IF VBAK-VKORG S010 AND VBAK-AUART ZPE.LOOP AT XVBAP.IF XVBAP-PSTYV Z001 . IF XVBAP-AUFNR IS INITIAL AND XVBAP-UPDKZ D. MESSAGE 订单号必须输入! TYPE E DISPLAY LIKE E. ENDIF. ENDIF.ENDLOOP.
ENDIF.备注XVBAP-UPDKZ ‘D’ 表示删除行XVBAP-UPDKZ ’ I 表示插入行。VA01/VA02创建SO时候当行项目维护多条数据后删除其中的一条或者多条被删除的行项目依在内表XVBAP中如果没有增加这XVBAP-UPDKZD’的条件会发现一个现象未删除的行项目满足字段必输的条件了系统依然给出提示“订单号必须输入”
实际实施效果如下图 当上面VA01创建订单时候如果满足销售组织S010订单类型ZPE类别Z001 时候SO保存时候系统报错提示。
往期相关文章荐读
[1.SAP软件MM模块项目实施中常用增强之一采订单收货后不能修改价格] (https://mp.weixin.qq.com/s/LenIYYbpa_oIQYG44FunKg)
2.SAP软件MM模块项目实施中常用增强之二MB51报表增加字段
3.SAP软件MM模块项目实施中常用增强之三采购订单的屏幕增强
4.SAP软件FICO模块常用增强之一固定资产的屏幕增强
5.SAP软件如何在物料主数据上增加字段
6.通过一个例子介绍SAPSmartform的应用及其技术细节和要点