Erik.Xue 发表于 2023-8-14 14:35:46

活字格9.0 update1新功能解密:七丶支持分用户记录表格、组合框列宽,显示隐藏、顺序

本帖最后由 Erik.Xue 于 2023-8-15 09:59 编辑

组合框、表格、列选项命令,想必各位使用的已经再熟悉不过了,今天又迎来了“增强”的时刻。

以前,我们在使用组合框和表格时,组合框下拉子项目的每一列的宽度以及表格每一列的宽度、是否显示隐藏列的设置都没有办法设置好按照每个登录用户保存起来,也就是说A用户使用列选项命令设置显示了某几列,隐藏了某几列,下次登录时,又恢复到了初始状态。组合框下拉子项目也有相同的问题。

那么为了解决此问题,9.1版本中我们进行的了增强,接下来就为大家详细介绍下功能特性吧~

一、表格

我们可以先在页面上放置一个表格,放置好表格后,右键表格——表格设置——其他行为:


可以看到有一个设置:
操作设置,缓存表格的状态,第一次勾选时会弹窗提示:




点击《确定》后,可以看到数据表会自动创建并多出一个名为FGC_StatusCache的数据表。


如果是外联库表,会弹出选择外联库连接,选择后会在外联库中创建同名的数据表。

然后我们在表格下方放置一个列选项命令,并创建两个测试用户——张三、李四。

运行该页面,我们先用张三登录:



并且用列选项命令设置只显示年龄、职位列;


接着我们切换为李四:


可以看到,还是最初的默认设置,此时我们只保留姓名、电话列;


然后我们再切换为张三:
可以看到还是张三登录设置的年龄、职位列:



除了设置列的显示、隐藏,设置列宽、排序也会根据用户进行记录和保存。

话不多说,看下效果:



二、组合框

同样的,组合框目前也支持了缓存下拉子项目的宽度和高度,设置方式如下图:



当我们勾选此选项后,并设置了下拉子项目。

运行后,我们可以设置下拉列的宽度,如图我用张三进行了登录并设置:


接着再用李四进行登录:



切换账户,还是之前根据不同账号设置的宽度和高度。

三、表格操作

除了上面直接对表格、组合框进行配置以外,我们也提供了对应设置表格操作的命令:



这两个命令配套使用,可以保存列设置的方案,保存方案到自定义的一个变量名里,如果想用此方案,再用读取命令输入对应的方案名称就可以恢复对应的设置了。

设想这样的一个场景,我们可以将生成记录表格状态缓存的表《FGC_StatusCache》表用在组合框上,然后我们结合上面两个命令,即可以动态切换不同的表格状态了。



直接继续看效果:





四、命令对应API

当然处理表格操作命令以外,还有对应的JS前端API,具体参考:

<b>getColumnsStatusData()</b>

var listview = Forguncy.Page.getListView("ListView1
var data = listview.getColumnsStatusData();
var columnsStatusMetadata = data.PropertyValue;


<b>loadStatusCacheData(columnsStatusMetadata: string)</b>

var listview = Forguncy.Page.getListView("ListView1");
var columnsStatusMetadata = "..." //get from table 'FGC_StatusCache';
listview.loadStatusCacheData(columnsStatusMetadata);
五、需要注意的点

1、以上所说的功能状态缓存只针对登录用户生效,匿名用户不起效;
2、组合框只有在绑定数据表的情况下才能使用状态缓存。



页: [1]
查看完整版本: 活字格9.0 update1新功能解密:七丶支持分用户记录表格、组合框列宽,显示隐藏、顺序