问题
在开发工作中,会面临仅需要用表格展示数据的业务场景,过去苍穹平台仅可通过单据体和单据列表两种控件来实现,并且这两种表格控件均需绑定实体,设置复杂的逻辑,从而消耗大量精力。
在苍穹V5.0.0.11版本中,除原有单据体、单据列表控件外,新增无需绑定实体的轻量级【表格】控件,增强表格开发场景中的控件选型能力,开发效率提升80%!
适用版本
该功能适用版本为金蝶云·苍穹V5.0.011及以上。
功能速览
轻量表格的开发分为设计器配置与插件开发两大部分
- 设计器配置:可快速进行表格布局及常用属性配置;
- 插件开发:可创建列干预和数据绑定。
【表格】控件后续将收集更多需求,完善控件能力,敬请期待~
功能详情-设计器配置
在设计器中可添加表格控件及其数据列,操作步骤如下:
步骤一:选择【表格】控件并添加入画布中。
选择【表格】控件
步骤二:选中画布上的表格控件,为其添加数据列。
可选数据列有“表格文本”、“表格整数”、“表格小数”、“表格日期”、“表格时间”、“表格金额”、“表格图片”、“操作列”等。
添加数据列
步骤三:常用属性及样式设置。
- 常用属性:显示序号列、可见性、为零显示、小数精度、日期格式、时间格式等;
- 常用样式:尺寸设置、字体设置、颜色设置、行高自适应等。
常用属性及样式设置
插件开发
通过以上设计器配置,我们已经完成了表格的布局和基本属性配置,接下来只需通过插件传入标准的列数据与行数据,即可完成轻量表格的开发。在插件中,我们可以实现创建列干预和数据绑定,详见以下说明。
- 创建列干预
步骤一:首先需要在插件initialize方法中为表格控件注册列创建和绑定数据列监听事件;
步骤二:动态创建列:创建表格控件列时触发创建列事件,插件需要实现BeforeCreateDataGridColumnsListener接口并重写beforeCreateDataGridColumns方法,从参数获取columns操作列集合进行自身的业务逻辑。
- 数据绑定
表格控件刷新时触发绑定数据,插件需要实现DataGridBindDataListener接口并重写dataGridBindData方法,通过参数setData设置自定义数据。本方法参数提供DataGridRowBuilder,方便创建行数据。
代码示例如下:
场景案例
场景举例:“系统状态控制”页面需要用表格展示关键信息,该表格由插件自定义取数。
针对以上场景,不同控件选型耗费的开发工作量如下:
1. 单据体/单据列表:除开发自定义取数外,还需要关联模型,处理很多单据体/单据列表的内置方法,并且需要额外处理动态列的元数据更新;
2. 轻量表格:只需要传入标准的列数据和行数据就可渲染表格,可快速简单地实现无实体的表格数据展示场景。
通过轻量表格进行以上场景的开发,开发效率提升80%!
自定义取数表格场景开发
亮点价值
- 亮点一:提供数据驱动的纯展示表格,适用于自定义取数的表格展示场景,简化插件逻辑,提高开发效率;
- 亮点二:预置多种类型的数据列,一键配置数据格式;
- 亮点三:提供表格基本样式属性,一键配置选择列、序号列、行高自适应、前/背景色、字体样式。
常见问题
问
苍穹提供了多种表格控件,各表格控件该如何选型?
答
以下为苍穹表格类控件的适用场景说明,开发者可根据业务场景选择对应的控件进行开发。
相关链接:https://datayi.cn/w/woVyLGeP
https://vip.kingdee.com/article/372335960421675520
https://vip.kingdee.com/article/373516397823023616
划重点
金蝶云·苍穹V5.0H2开发平台设计器新增无需绑定实体的轻量级【表格】控件,增强表格开发场景中的控件选型能力,功能详情如下:
1. 轻量表格的开发分为设计器配置与插件开发两大部分:
- 设计器配置:可快速进行表格布局及常用属性配置;
- 插件开发:可创建列干预和数据绑定。
2. 本次新增的【表格】控件,适用于无实体逻辑的数据展示场景。如在业务场景中需与实体关联,则应使用单据体或单据列表。