超有料的“扩展&继承”使用宝典,你还不来学?
1 概念
扩展与继承统称为扩展开发,是金蝶云苍穹提供的对已有实体进行个性化开发时采取的开发模式。
2 功能对比
2.1 相同点
扩展&继承都可以实现对系统原单的功能补充,都是在设计期对实体进行改造,运行期会根据差异化元数据叠加显示最终的效果。
2.2 不同点
区别一
扩展:数据库表不允许修改,使用原来的表。
继承:系统未禁止数据库表修改,可以根据情况判断是否需要保存在原来的数据库表中。
区别二
扩展:一个单只能扩展一次,但是可以对扩展之后的单再次扩展。
继承:一个单可以继承多次,继承后的单也可以继续继承多次。
区别三
扩展:在系统只能看到一张单,即扩展之后最终只有一个实体。
继承:在系统中是两张不同的单,即继承之后最终会有两个实体。
区别四
扩展:系统中菜单、编码规则、权限、单据转换、工作流等都不需要重新配置。
继承:继承后的单在系统中菜单、编码规则、权限、单据转换、工作流等都需要重新配置。
区别五
扩展:原单据入口会在运行期动态显示扩展后的单据。
继承:原单据入口和继承后的单据拥有独立的入口。
区别六
扩展:使用标识都需要使用原单的标识,使用扩展单的标识可能会提示实体不存在。
继承:使用的标识是分开的,继承之后的单和原单的标识互相独立。
3 实现步骤
3.1 扩展 · 实现步骤
1. 扩展应用
扩展单据或基础资料,必须先扩展其应用。进入开发平台,选择要扩展单据所属的云及应用,点击“扩”来扩展应用。
2. 扩展页面
进入扩展后的应用,找到对应的页面,点击“扩”来扩展页面。
3. 修改页面
进入扩展出来的页面,对页面进行个性化的改造,然后点击保存。
4. 查看效果
预览或者在运行期查看,发现“人员”已经变成了“人员扩”,界面也加上了年龄字段。
3.2 继承 · 实现步骤
1. 扩展应用
扩展单据或基础资料,必须先扩展其应用。进入开发平台,选择要扩展单据所属的云及应用,点击“扩”来扩展应用。
2. 继承页面
点击“继”,弹出的继承页面的窗口,填写信息之后确定即可完成页面的继承。
3. 修改页面
进入继承出来的页面,对页面进行个性化的改造,然后点击保存。
4. 配置页面
继承和扩展不一致,继承之后相当于系统中会多出来一个实体,也可以修改数据库表名,让继承后的实体数据和原实体数据区分开来(这里我们没有修改人员继承后的物理表)。对于继承后新出来的实体,菜单、工作流、编码规则等都需要重新进行配置。
5. 查看效果
在运行期查看,发现用户新增的菜单打开了扩展之后的“用户”界面,也有了居住地字段。(这里需要注意,我们之前扩展的年龄字段也存在,继承最终叠加出来的是原+扩+继的效果)
4 深度剖析
在金蝶云•苍穹中,元数据分为设计期和运行期。
不管是对元数据进行继承或扩展,在设计器记录的都是差异化的元数据,在差异化的元数据中会记录此差异元数据是通过继承产出的还是通过扩展产生的。
运行期的元数据是根据父类元数据加上差异化元数据动态生成的。
通过差量化元数据和动态加载机制,可以支持多层级元数据,支持行业产品开发和用户个性化业务实现;同时保证任何标准产品的修改、行业产品修改以及用户个性化扩展都是可以无缝升级,互不冲突。
5 案例实战
案例一
下面以平台标准的费用报销单和对公报销单为例,展示在不同场景中使用不同的应用扩展方式。
1. 在大型或超大型企业的项目中,一般集团公司会需要对分子公司做统一的集团管控,那我们可以进行如下操作:
①基于标准的费用报销单做一次扩展,做成全集团业务统一的扩展层,并且再增加一次布局,做整个集团的布局管控。
②对不同的分子公司的个性化需求可以使用继承,并根据分子公司的特性调整布局。
③对于同一类的业务,不同的细节,也可以使用继承,动态调整业务细节。
2. 在单企业的项目中,无分子公司,不存在集团管控,以标准的费用报销单和对公报销单为例:
①客户化开发直接基于标准单据扩展,这样就不需要重新配置菜单、编码规则、工作流等。
②对于不同的细分场景,可以根据布局来调整界面样式,但不能增加实体属性。
3. 上述方案中会有个问题,因为使用的是扩展,所以当费用报销单有改动的时候,对公报销单也会同步被修改,所以我们可以对上述方案进行修改:
①通过继承标准产品的方式,增加一层模板界面,修改继承后的实体,不会作用到其他继承关系的实体。
②继承之后的实体的菜单,编码规则,工作流等都需要重新配置。
案例二
在某大型国企开发现场,多个伙伴开发的行业产品对同一个标准业务单据进行扩展,最后聚合发布的时候,行业差量化元数据重叠导致元数据混乱。
解决:推荐ISV伙伴做行业产品使用继承模式,通过新增实体对象区分,职责区分清晰,有利于架构治理。
以上就是本期的精彩内容,更多参考资料请见下方:
#往期推荐#
更多精彩内容,“码”上了解!↓
超有料的“扩展&继承”使用宝典,你还不来学?
本文2024-09-23 00:22:42发表“云苍穹知识”栏目。
本文链接:https://wenku.my7c.com/article/kingdee-cangqiong-139082.html