关于BOS单据扩展方式的问题探讨
金蝶云社区-tonylinyy
tonylinyy
0人赞赏了该文章 2,971次浏览 未经作者许可,禁止转载编辑于2014年09月09日 20:36:20

产品版本:V3.0,V5.0
问题描述:如图,我们在实际项目扩展开发的时候一般会有这么两种扩展方式,参看截图及说明:
第一种是【平行扩展】,第一种是【缩进扩展】方式
扩展中的第一个是标准产品的内容,一般是只读的。
扩展中的第二个是二次开发团队开发后,打包部署到项目现场环境
扩展中的第三个是用户在客户现场的一些扩展
如图:


问题一:我们的项目经过第一种【平行扩展】的扩展方式后,有时候会出现平行扩展方式的情况下有的设置的属性会不生效,需要在第三个扩展中也加上相同的调整才会生效。这种情况我们出现了多次,按照总部的说法好像是平行扩展方式,如果对同一个字段在不同的扩展中都进行了设置,且设置的属性是不一样的,差量叠加的算法中,叠加的顺序是不确定的。
这种情况经常回困扰项目现场的扩展开发,希望总部能够找个彻底解决的办法。或者在扩展的时候就干脆控制不允许平行扩展,只允许缩进扩展。不然用户采用了平行扩展后,就会出现一些问题,又比较难以排查,比较讨厌。

问题二:BOS升级到5.0以后,我们发现如果二次开发环境上打成kdpkg,部署到客户现场环境后,二次开发环境的开发上注册码跟客户项目现场的环境是一样的话,就会出现二次开发包打进去的元数据,项目现场对二次开发发布的扩展元数据可以修改,但是不能删除,原来3.0版本的对标准产品和二次开发包发布的元数据都是只读的。可以修改带来的后果是,如果用户项目现场的开发人员没有注意,直接修改了二次开发发布出来的元数据后,下次二次开发包也更新了这个元数据,再次部署的时候,就会把用户原来修改的元数据覆盖掉。这个问题是不是BUG呢,原来我们二次开发包发布的在3.0的时候,项目现场都是只读的。
这个问题的另一个建议是:在项目工具栏上增加一个【显示/隐藏开发商代码】的按钮,用户可以切换这个按钮,可以在单据的后面增加显示开发商代码,让开发人员清楚知道这个扩展是哪个开发商代码做的,如图: