查看器在打开的时候,指定加载某个模板文件
本帖最后由 tangke888 于 2024-6-24 16:56 编辑ar18的这个示例中,查看器在打开的时候,如何指定加载某个模板文件,而不需要手动去打开文件
如下图:我要打开查看器的时候默认加载 testhky.rdxl
示例:https://github.com/activereports ... esigner_CustomStore
您好,那个是一个设计器,不是查看器的,但是其实可以给您说一下整个原理就行了。
您如果报表是存的本地文件,其实参考上面的从文件获取即可。如果是别的方式存的,那就修改获取方式。:
需要实现这个类去获取报表
这个类实现两个,一个是获取报表,一个是加载类型。默认我们的文件都是XML文件类型存储的。所以GetReportDescriptor 直接获取类型0即可。
然后就是实现GetReport 接口,我们只要想办法把自己存储的报表XML文件读取到就可以了。无论怎么存储的,读取到xml。然后返回对应的字节流即可。
下面是一个Demo。我们只要根据改自己获取报表文件的地方即可:
问题描述:
设计器按照指定模板打开报表
问题回答:
报表对象创建的时候。可以传递报表名称:
GrapeCity.ActiveReports.Designer.create('#designer-id1', { //控制生成标签
document: { //打开已经设计的报表(默认在resource目录下的报表)
id: "new.rdlx", //指定报表名称
type: {
platform: "rdlx",//区域报表这里要改成rpx
type: "report"
}
}})即可打开已有报表
可以在 WebDesigner_CustomStore 的基础上,做个查看报表,view 的demo? 谢谢 您可以参考这个地址:
https://gcdn.grapecity.com.cn/showtopic-221509-1-1.html 看不明,还得请大佬,搞个demo,点醒一下 这个和设计器原理一样:
createViewer({
element: '#' + options.element,
reportService: {
url: 'api/reporting',
},
reportID: options.documentInfo.id,
settings: {
zoomType: 'FitPage',
},
theme: options.theme
});
这个里面有一个reportID。这个就是传报表名称,然后就可以打开指定报表
搞不出来,还是要大佬 出手 tangke888 发表于 2024-6-25 21:36
搞不出来,还是要大佬 出手
您的代码片段看一下,createViewer 中的代码。这种显示不出来的浏览器控制台应该也有报错。您f12看一下,如果有的话,麻烦您把报错信息也给我们看一下。 帮忙直接搞一个
页:
[1]
2