客户希望销售订单模糊搜索中展示内部物料编码和名称。因模糊搜索仅针对文本字段,需在客户物料对应表视图中新增物料编码和名称的文本字段,并修改视图SQL语句。操作涉及数据库修改、字段同步、视图发布及单据参数配置。需注意数据安全及测试验证,并选择合适数据库脚本执行。
有客户提出,在销售订单通过输入客户物料对应表的客户物料编码来选取物料下单的时候,通过直接输入客户物料编码弹出来的模糊搜索显示框中只有客户物料编码和客户物料名称,看不到系统内部真正的物料编码和物料名称信息,因此,客户提出希望在这个模糊搜索显示框中也能看到内部的物料编码和物料名称,以清楚看到其对应关系来选取物料下单。经研究,客户物料编码字段对应的基础资料是客户物料对应表视图,在这个基础资料中,物料编码和物料名称分别是基础资料字段和基础资料属性字段,而模糊搜索的设置只能针对基础资料中的文本字段,因此,如果需要在客户物料编码字段的模糊搜索中增加物料编码和名称,是需要在客户物料对应表视图中另行新增为文本类型的物料编码和物料名称字段,并需要修改客户物料对应表视图的视图SQL语句。如果客户确实需要实现这个需求,可以按以下方案进行。不过,需要注意的是,这个需求实现需要直接修改数据库中的视图,并且修改的地方较多,因此,该方案为参考方案,如有需要,请自行考量采用,并且采用之前做好数据备份和测试验证。
第一步:在销售管理—基础资料中扩展客户物料对应表视图,在这个视图里新增两个文本字段:物料编码、物料名称,并注意,物料编码字段的字段名取为FMATERIALNUMBER,物料名称的字段名取为FMATERIALNAME,否则后续修改视图脚本的时候会报错!
第二步:在数据库中修改客户物料对应表视图的视图sql语句,附件为基于通版产品改写的sql脚本,可直接打开数据库中直接执行即可。但请注意,附件中分别是SQL Server数据库的脚本和Oracle数据库的脚本,请客户按实际产品的数据库类型来选择运行。如果是SQL Server数据库,请运行:客户物料对应表视图_SQL.sql;如果是Oracle数据库,请运行:客户物料对应表视图_Oracle.sql。如果有相关二开,请二开开发人员检查后再使用脚本。脚本附件:
需要注意的是,从版本7.6-202104开始,客户物料对应表视图基础资料从视图V_SAL_CUSTMATMAPPING改成了改成了物理表T_V_SAL_CUSTMATMAPPING实现,所以新增自定义字段后,还需要做一次数据同步,将数据从视图V_SAL_CUSTMATMAPPING同步到物理表T_V_SAL_CUSTMATMAPPING中,相关的介绍可以查看下帖:
https://vip.kingdee.com/article/172710885230977024?productLineId=1
第三步:将客户物料对应表视图发布到主控台,但为免菜单中出现两个客户物料对应表,请将客户物料对应表视图发布为不可见的菜单。只有发布到主控台菜单后,该基础资料才能在下一步的设置中进行模糊搜索的设置操作。
第四步:在Cloud系统中修改单据参数配置,设置客户物料对应表视图的模糊查询字段,勾选物料编码和物料名称字段,如下图所示,设置好之后,保存并更新用户参数。
第五步:实现效果
客户物料对应表视图SQL.zip(2.09KB)
推荐阅读