
| 产品版本 | 更新内容 | 更新日期 |
| --- | --- | --- |
| V5.0.017 | 增加了移动表格固定列的功能,方便用户查看数据 | 2023-10-18 |
| V6.0.1 | 支持了动态设置列隐藏的指令 | 2023-10-18 |
| V6.0.6 | 优化了移动端表格横屏切换按钮的功能及样式,提供“横屏展示”的开关属性,以满足用户在字段较少时不需要切横屏展示的需求 | 2024-1-22 |
| V6.0.15 | 支持了移动端表格单元格内容显示为超链接,满足用户点击单元格内容下钻到详情的需求 | 2024-7-8 |
| V7.0 | 支持了数值类型的汇总功能 | 2024-10-24 |
# 1 功能介绍
移动端表格支持用户在移动端以表格的形式展示数据,以便可以在手机上同时查看到尽可能多的数据。
# 2 属性说明
## 2.1 通用属性
>通用属性包含字段和控件的一些公有的属性,如宽高,帮助文本等等。请参考[通用属性](https://vip.kingdee.com/article/215559076720798976)
## 2.2 样式属性
>样式属性是每个控件在设计器右侧样式栏可以设置的属性,请参考[样式属性](https://vip.kingdee.com/article/252017936767406336)
## 2.3 业务属性
| 属性名 | 类型 | 默认值 | 说明 |
| --- | --- | --- | --- |
| 数据源类型 | 下拉 | 单据体 | 数据源类型,目前支持单据体数据源和自定义数据源,默认是单据体数据源 |
| 数据源 | 弹框选择 | - | 选择移动表格要展示的数据源,如果是自定义取数则没有该属性 |
| 显示序列号 | 复选框 | false | 是否显示序号列 |
| 行高自适应 | 复选框 | false | 行高根据内容自适应 |
| 最大行高 | 宽高选择器 | - | 设置最大行高,不设则按内容撑开,开启行高自适应会有该属性 |
| 冻结列 | 弹框选择 | - | 设置哪些列需要冻结,冻结列固定在左侧 |
| 横屏展示 | 复选框 | false | 是否要显示横屏切换按钮,默认展示 |
## 2.4 名词解释
### 2.4.1 数据源
目前移动表格的数据源有两种:
* 主实体数据源:PC单据、PC基础资料自带的移动表单拥有主数据源,单据必须有单据体才能展示数据源。
* 插件数据源:可由插件自定义取数,且在一个移动表格中,不同字段数据源可不一样
移动表格上可以配置数据源类型和选择数据源实体,数据源类型为单据体可以取表单的实体数据源,数据源类型为自定义的则需要通过插件赋值。
*注意:移动表单上没有单据实体,不能使用实体数据源,只能使用插件数据源*

### 2.4.2 移动表格列
目前移动表格支持八种类型的列,分别是表格文本、表格整数、表格小数、表格日期,表格时间、表格图片、表格金额,表格附件。

移动表格列通过映射的方式映射到实体数据源对应的列,比如表格文本,字段映射选择的是单据体的基础资料列,在展示的时候其实也是基础资料的类型。需要注意的是,表格整数类型的列不能映射到文本类型,在选择的时候也选不到,因为平台帮我们做了隔离。具体可以映射的类型可以参考下面表格。
需要注意的一点时:字段映射时会把单据体相关的列属性也带过来,如果在移动表格列也配置了相同的属性,则移动表格的配置优先生效。例如单据体小数列的小数精度为10,移动表格列设置的小数精度2,那么显示的时候小数精度也是2

### 2.4.3 冻结列
移动表格在设计器上有个冻结列属性,打开配置第一列冻结

预览时第一列冻结显示,序号列默认是冻结的

### 2.4.4 汇总方式
数值类型字段支持汇总功能,可根据业务场景选择对应的汇总方式。

### 2.4.5 显示为超链
列定义上支持“显示为超链“属性,开启后,单元格显示为超链样式,点击单元格会往服务端发送单元格超链接点击请求“**hyperLinkClick**”,可以在插件监听请求做下钻到详情页处理。

# 3 操作演示
以单据体取数为例:
* 新建一个单据,并配置好单据体分录数据 
* 切换到移动表单,左侧控件栏选择【表格控件】–>【移动表格】,然后将表格数据源绑定刚才建好的单据体。
* 选中移动表格控件,然后在左侧控件栏选择添加移动表格列,也可以直接拖拽添加。添加列定义后,选中其中某一列,点击字段映射属性,将移动表格列映射到单据体的列。其他列定义按同样的步骤处理。

* 接下来是数据,回到单据页面预览,给单据体添加数据,完成后点击提交

* 切换到移动列表,预览点击刚才新增的单据。

# 4 插件示例
数据源为自定义取数时需要使用插件给表格赋值。
这里以设计器配好的一个移动表格为例,动态去修改列属性以及插入行数据。初始化代码如下:
```java
public class MobTablePluginSample2 extends AbstractFormPlugin implements IBeforeCreateMobTableColumnsListener {
@Override
public void initialize() {
MobTable mobTable = getControl("mobtableap");
mobTable.addBeforeCreateMobTableColumnsListener(this);
mobTable.addMobTablePackageDataHandlerListener(new IMobTablePackageDataHandlerListener() {
@Override
public void createMobTablePackage