本文介绍了在软件系统中增加单据(如销售订单)录入时,客户物料编码自动带出对应自定义字段(如客户规格型号)的方法。由于数据存于实体表但单据通过视图展示,故需在四处维护一致性。包括扩展单据和基础资料的客户物料对应表、修改数据库视图、调整销售订单引用属性等,确保在录入客户物料编码时能自动显示客户规格型号。操作需谨慎,考虑后续维护。
综述:常见需求,希望实现单据(比如销售订单)录入客户物料编码时,带出客户物料对应表自定义字段(比如客户规格型号),但由于客户物料对应表存储于实体表,但单据取数时以视图形式展示,因此增加字段时一共有四处须维护。下以蓝海帐套为例,增加客户规格型号 'FMapModel' :
修改前注意事项(必读):
a、四处修改均建议均保证字段名一致
b、公有云客户修改视图的方式可参考如下途径:将帐套下载至本地,定位至视图脚本,本地修改测试通过后提运维提单执行脚本;私有云客户可直接在数据库服务器操作;修改数据库视图有风险,请谨慎操作
c、由于修改了标准系统的视图,后续系统版本升级后须对视图进行手工维护(因为如果对新版本客户物料对应表功能有改善,更新并不会覆盖自定义过的视图)
d、所有在标准系统基础下进行的扩展都应该在测试没问题后方可上线至正式系统。
操作流程:
1、对单据-客户物料对应表进行扩展,添加文本字段,字段名取为 FMapModel :
2、对基础资料-客户物料对应表视图进行扩展,添加文本字段,字段名取为 FMapModel :
3、修改数据库中客户物料对应表视图 V_SAL_CUSTMATMAPPING,增加字段 F_PAEZ_LEVEL,本处展示直接修改脚本的方式实现,也可以通过 右键视图-设计 实现(注意视图以多个SELECT语句UNION ALL取数,因此每个SELECT下都需要添加对应字段,此处视图脚本非最新,仅供方法上的参考)
4、前3步实现的效果为:在销售订单中录入【客户】后,过滤【客户物料编码】时,可以显示自定义字段【客户规格型号】,效果见下图;不过如果要实现录入【客户物料编码】时带出自定义字段【客户规格型号】,还要做进一步设置:
5、对销售订单进行扩展,找到【客户物料编码】字段,修改引用属性,引用视图中已经添加的自定义字段【客户规格型号】,(注:添加引用属性的操作很重要,否则后续无法选择到该自定义字段)
6、对销售订单做如下三步处理:
6.1添加基础资料属性字段,字段名取为 FMapModel
6.2 基础资料字段,选择【订单明细.客户物料编码】
6.3 关联基础资料字段名,选择自定义字段【客户规格型号】
7、至此,所有步骤完成,最终实现效果为:录入【客户物料编码】时,可以带出自定义字段【客户规格型号】
推荐阅读