Qt开发环境中使用报表控件FastReport遇到的一些问题(一)
2014-06-08 17:49
627 查看
FastReport是一款优秀的报表控件,由俄罗斯开发,国内有代理商。Qt环境下可实现报表功能的还有一款叫NCReport,也是收费控件,比较来比较去还是觉得前者功能强点。
网上讲解此控件在Qt中使用的文章比较少,故在此做下记录:
概述:
1. FastReport版本有VCL, .NET, COM/ActiveX, Mono等等,其中Qt下使用只能使用COM/ActiveX版本。
2. 网上破解版有3.2,4.5和最新的4.9(2014年),3.2这个版本貌似功能不全,Qt下老报错;4.9版本可以正常使用。
3. 安装FastReport Studio后就可以在Qt中使用QAxObject对象访问此COM对象了。如果部署机器没有FastReport,需要照
FastReport文档中Deploy一节部署,包括拷贝需要dll和语言文件,regsvr32注册,修改注册表中语言配置等步骤。
4. 根据FastReport官方文档显示,国内授权的经销商有3家,其中一家的官网还打不开,如果购买主要可以考虑重庆慧聪空间网,
根据授权类别,价格从几千到数万不等。
5. 官方文档没有指出初始化控件需要提供的参数。根据Qt文档中指出,使用Guid{4764040e-4222-4dec-9f2e-82d46e212b3a}初始
化COM最快,其次是使用COM名称FastReport.TfrxReport。
功能说明:
1. 报表中主要使用两类对象,一个是band,一个是text object。band作用即把打印内容按逻辑分类;text用于显示文字。
2. 使用中括号[]括起来的标示变量,工具栏中有个fx图样按钮可以打开变量编辑框。
3. COM对象的接口,方法,属性等信息可以使用Qt自带的dumpdoc工具生成。
4. hello world代码举例:
备注:上面代码中my_var是报表设计器中指定的报表变量,此示例代码先初始化FastReport COM控件对象,然后加载使用报表设计
器设计的一个报表test.fr3, 然后使用Qt代码从Qt给报表传输值,最后显示报表内容。经测试,给变量my_var赋值123报表可正常
显示,如果换成纯英文字母就报错了,提示Expression找不到,暂时不清楚原因,稍后解决。
网上讲解此控件在Qt中使用的文章比较少,故在此做下记录:
概述:
1. FastReport版本有VCL, .NET, COM/ActiveX, Mono等等,其中Qt下使用只能使用COM/ActiveX版本。
2. 网上破解版有3.2,4.5和最新的4.9(2014年),3.2这个版本貌似功能不全,Qt下老报错;4.9版本可以正常使用。
3. 安装FastReport Studio后就可以在Qt中使用QAxObject对象访问此COM对象了。如果部署机器没有FastReport,需要照
FastReport文档中Deploy一节部署,包括拷贝需要dll和语言文件,regsvr32注册,修改注册表中语言配置等步骤。
4. 根据FastReport官方文档显示,国内授权的经销商有3家,其中一家的官网还打不开,如果购买主要可以考虑重庆慧聪空间网,
根据授权类别,价格从几千到数万不等。
5. 官方文档没有指出初始化控件需要提供的参数。根据Qt文档中指出,使用Guid{4764040e-4222-4dec-9f2e-82d46e212b3a}初始
化COM最快,其次是使用COM名称FastReport.TfrxReport。
功能说明:
1. 报表中主要使用两类对象,一个是band,一个是text object。band作用即把打印内容按逻辑分类;text用于显示文字。
2. 使用中括号[]括起来的标示变量,工具栏中有个fx图样按钮可以打开变量编辑框。
3. COM对象的接口,方法,属性等信息可以使用Qt自带的dumpdoc工具生成。
4. hello world代码举例:
QAxObject object("{4764040e-4222-4dec-9f2e-82d46e212b3a}", this); object.dynamicCall("LoadReportFromFile(QString)", "test.fr3"); QVariantList params ; params<<"my_var"<<"123"; object.dynamicCall("SetVariable(QString, QString)", params); object.dynamicCall("ShowReport()");
备注:上面代码中my_var是报表设计器中指定的报表变量,此示例代码先初始化FastReport COM控件对象,然后加载使用报表设计
器设计的一个报表test.fr3, 然后使用Qt代码从Qt给报表传输值,最后显示报表内容。经测试,给变量my_var赋值123报表可正常
显示,如果换成纯英文字母就报错了,提示Expression找不到,暂时不清楚原因,稍后解决。
相关文章推荐
- Qt开发环境中使用报表控件FastReport遇到的一些问题(二)
- 【ARM-Linux开发】使用QT和Gstreanmer 遇到的一些问题
- 关于Qt开发iPhone/iPad和Android环境下的应用的一些问题
- 转 [开发总结]WebView使用中遇到的一些问题&解决
- 配置开发环境遇到的一些问题及解决方法
- ubuntu配置android开发环境和编译源码遇到的一些问题
- ubuntu配置android开发环境和编译源码遇到的一些问题
- 生产环境使用elasticsearch遇到的一些问题以及解决方法
- 生产环境使用elasticsearch遇到的一些问题以及解决方法(不断更新)
- 生产环境使用elasticsearch遇到的一些问题以及解决方法(不断更新)
- QT 使用phonon开发视频播放器遇到的问题(希望能帮到你)
- ubuntu配置android开发环境和编译源码遇到的一些问题
- 【汇总】iOS开发及Xcode使用中遇到的一些报错问题汇总
- 【汇总】iOS开发及Xcode使用中遇到的一些报错问题汇总
- 今天使用eclipse-hilos版本的开发项目遇到一些问题
- CUnit开发环境搭建过程可能遇到的一些问题及解决方法
- 使用QT和Gstreanmer 遇到的一些问题
- 生产环境使用elasticsearch遇到的一些问题以及解决方法(不断更新)
- iOS开发中使用protobuf遇到的一些问题
- Eclipse下搭建Android开发环境遇到的一些问题及解决