绝大多数的业务单据,都是在使用BOS平台那一套附件功能,BOS平台的那套附件功能只需要将附件上传并关联到相关业务单据上即可,下图1-1为销售订单上的附件菜单配置的操作示意图:
图1-1
但销售订单新变更单是不一样的,它不仅要在变更编辑时将销售订单上的附件同步过来,还要在生效时将变更后的附件同步回销售订单,因此它扩展了BOS平台的附件功能,比如扩展了BOS平台的附件表T_BAS_ATTACHMENT,在扩展表T_BAS_ATTACHMENT_X 中记录了附件变更类型(修改,删除,新增),原始附件内码信息等,另外在销售订单新变更单的保存操作上做了相应服务配置,如下图1-2所示:
图1-2
从上图1-2中可以看到在销售订单新变更单的保存操作上挂了个'附件变更保存'的服务,这个服务的主要逻辑就是在销售订单新变更单保存时,先读取对应的销售订单上的附件信息,重新再生成一套适用于销售订单新变更单的附件信息,即原封不动地从销售订单上复制一份附件到销售订单新变更单上,下图2-1为销售订单保存后上传的一张原始附件的截图(包含有数据库附件表查询截图):
图2-1
上图2-1可以看到销售订单上的附件在扩展表T_BAS_ATTACHMENT_X中是不存在数据的,只在附件主表中有数据,这很合理,因为销售订单用的是BOS平台的附件管理功能。下图2-2为销售订单新变更单保存后并新上传一张附件的截图(包含有数据库附件表查询截图):
图2-2
上图2-2可以看到销售订单新变更单的附件在附件扩展表T_BAS_ATTACHMENT_X和主表T_BAS_ATTACHMENT都是有数据的,这很关键,因为在变更生效时是依据这两个表中的数据的。下图2-3为变更删除附件时的注意事项及操作示意图:
图2-3
下图3-1为销售订单新变更单上的'生效'菜单操作上挂的'附件变更生效'服务(如果查看审核菜单上的操作列表,可以看到也有这个服务,这是为了兼容销售管理系统参数中的审核时自动生效功能),用于将销售订单新变更单上修改的,新增的或删除的附件同步到销售订单上。
图3-1
常见问题:
1,最常见的问题就是为何在销售订单新变更单上添加或删除的附件没有同步到销售订单上,一种可能是销售订单新变更单上的'附件'菜单二开挂了BOS平台的那个附件服务,而不是供应链添加的附件变更服务,另一种可能是由于升级原因导致生效或审核操作上没有配置'附件变更生效'服务(这种是由于有多语言原因导致升级后此服务被覆盖了,多语言项目组后续会修复此问题),这时就要自行再配置下服务,如果客户有了解数据库的开发人员,也可以从T_BAS_ATTACHMENT_X 表中追踪出问题。
推荐阅读