最新历史版本
:控件应用常见问题 返回文档
编辑时间:
内容长度:图片数:目录数:
修改原因:
1. 概述编辑
2. 服务器全局控件复制到本地编辑
问题描述:
报表应用中某些控件的使用频率很高,而这些控件定义方法和使用的数据都是一样的,如果所有模板都定义一遍该控件的话,会比较浪费时间。
因此开发者常常将这些使用频率较高的控件在设计器菜单栏「服务器>控件管理」中预定义为全局控件,定义一遍之后,所有模板都可以使用。如下图所示:
但是在工程迁移或本地搭建测试工程时,如何将这些全局控件复制到本地呢?
原因分析:
全局控件的配置信息存储在 FineDB 数据库中的「FINE_CONF_XMLENTITY」表和「FINE_CONF_CLASSNAME」中。
控件保存为以「WidgetInfoConfig.nameWidgetConfigMap」开头的记录。
全局控件保存的记录为「WidgetInfoConfig.nameWidgetConfigMap.area」。
全局控件图标信息存储ID为「WidgetInfoConfig.iconManager」。
如下图所示:
1)FINE_CONF_XMLENTITY
2)FINE_CONF_CLASSNAME
解决方案:
如果未迁移finedb,则自定义控件信息保存在「WEB-INF\embed\finedb\db.lobs」中,覆盖到本地即可。
如果迁移了finedb,则将finedb的2个表中,有关自定义控件的数据复制或者提交到本地finedb。
3. 控件数据字典数据集和服务器数据集部分重名时,无法取数编辑
问题描述:
控件数据字典的数据集名字为a,服务器数据集的名字为a_b,在读取数据的时候,会发生错乱。
原因分析:
“_”是java里的保留字符,a_b会被拆成两段读取,由于先匹配到了a,所以就读取了服务器数据集。
解决方案:
修改数据集名字,避免使用保留字符,如false,null,inner,go,加减号等。