无
PresentKindProvider主要用于提供数据展现形态的扩展。
比较常见的就是各类条码、二维码形态的扩展。
package com.fr.design.fun;
/**
* @author : richie
* @since : 8.0
* 自定义服务器数据集设计界面接口
*/
public interface ServerTableDataDefineProvider extends TableDataDefineProvider {
String XML_TAG = "ServerTableDataDefineProvider";
}
|
产品线 | 版本 | 支持情况 | 备注 |
|---|---|---|---|
| FR | 8.0 | 支持 | |
| FR | 9.0 | 支持 | |
| FR | 10.0 | 支持 | |
| BI | 3.6 | 支持 | |
| BI | 4.0 | 支持 | |
| BI | 5.1 | 支持 | |
| BI | 5.1.2 | 支持 | |
| BI | 5.1.3 | 支持 |
<extra-designer>
<ServerTableDataDefineProvider class="your class name"/>
</extra-designer> |
当数据集类型选择列表被触发时,会调用TableDataCreatorProducer#createReportTableDataCreator方法。此时,会读取所有插件中申明的ServerTableDataDefineProvider实例。因为该接口对应的服务其数据集添加是在设计器上操作的,而实际数据集的计算是属于服务器的功能范畴,所以ServerTableDataDefineProvider还有个作用就是解耦,对于一个具体的服务器数据集最终会把tabledata的class名保存到finedb中(注:9.0及更低版本保存到datasources.xml)。
iconPathForTableData :返回的图标路径(如:/com/demo/hg/resources/images/main.png)。需要注意,因为这个接口没有做图片的统一缩放,所以需要开发者自己准备好16*16(px)大小的图标。否则会显得很不协调。
classForTableData: 接口需要返回一个TableData接口类。实际开发时为了方便开发提高效率和稳定性,要求开发者全部继承AbstractParameterTableData[注意点]
classForInitTableData:这个接口如果已经实现了classForTableData的话,目前没有什么实质性的作用,不过一般要求开发者保留性的与classForTableData返回相同的class。
demo地址:demo-table-data-define
UniversalServerTableDataProvider
免责声明:所有文档中的开源示例,均为开发者自行开发并提供。仅用于参考和学习使用,开发者和官方均无义务对开源案例所涉及的所有成果进行教学和指导。若作为商用一切后果责任由使用者自行承担。