【转】在VC中使用水晶报表
2008-11-02 10:01
183 查看
本文转自:http://blog.csdn.net/memory_xj/archive/2008/04/16/2296970.aspx ,原作者:青蛙王子
水晶报表是一个报表设计开发的强大工具,功能强大,设计灵活,在水晶报表光盘中只提供了一个完全动态生成报表的例子,使用繁琐。
现介绍其在VS2005 VC++中的简单使用方法。编译环境:VS2005 VC++、Windows XP。
一、导入水晶报表使用的动态联接库:根据实际修改文件路径。
#import "C://Program Files//Crystal Decisions//Report Designer Component//craxdrt9.dll" no_namespace
二、定义接口指针变量
//水晶报表变量
IApplicationPtr m_Application;
IReportPtr m_Report;
//水晶报表控件变量,在对话框中加入该控件
CCrystalReportViewer9 m_CRViewer1;
三、具体实现步骤
//实例化m_Application
m_Application.CreateInstance (__uuidof(Application));
//获取m_Report变量
//staff.rpt为通过向导建立的报表文件,数据库采用SQL Server 7.0
m_Report =m_Application->OpenReport ("C://A4Rpt.rpt");
//设置报表标题
m_Report->put_ReportTitle (_bstr_t("Title"));
//设置数据库连接变量
//数据库服务器(local),数据库名staff,用户名sa,密码sa
//注意数据库服务器(local),如果是用ODBC拉模式,就指对应的DSN名称。
m_Report->Database ->Tables ->Item [1]->SetLogOnInfo("(local)","staff","sa","sa");
//设置检索SQL命令
m_Report->put_SQLQueryString ((_bstr_t)"select * from person where id<'4' order by id");
//不显示重复字段
m_Report->PutEnableSelectDistinctRecords (TRUE);
//设置检索条件,采用水晶报表语法,功能同设置检索SQL命令
m_Report->PutRecordSelectionFormula ((_bstr_t)"{person.id}='1'");
//设置报表作者
m_Report->PutReportAuthor ("xiaojin");
//将m_Report与报表控件连接
m_CRViewer1.SetReportSource(m_Report);
//显示报表工具条
m_CRViewer1.SetDisplayToolbar (TRUE);
//不显示报表左边的分组树
m_CRViewer1.SetDisplayGroupTree (FALSE);
//不显示控件边框
m_CRViewer1.SetDisplayBorder (FALSE);
//刷新数据
m_CRViewer1.Refresh ();
//显示报表内容
m_CRViewer1.ViewReport();
水晶报表是一个报表设计开发的强大工具,功能强大,设计灵活,在水晶报表光盘中只提供了一个完全动态生成报表的例子,使用繁琐。
现介绍其在VS2005 VC++中的简单使用方法。编译环境:VS2005 VC++、Windows XP。
一、导入水晶报表使用的动态联接库:根据实际修改文件路径。
#import "C://Program Files//Crystal Decisions//Report Designer Component//craxdrt9.dll" no_namespace
二、定义接口指针变量
//水晶报表变量
IApplicationPtr m_Application;
IReportPtr m_Report;
//水晶报表控件变量,在对话框中加入该控件
CCrystalReportViewer9 m_CRViewer1;
三、具体实现步骤
//实例化m_Application
m_Application.CreateInstance (__uuidof(Application));
//获取m_Report变量
//staff.rpt为通过向导建立的报表文件,数据库采用SQL Server 7.0
m_Report =m_Application->OpenReport ("C://A4Rpt.rpt");
//设置报表标题
m_Report->put_ReportTitle (_bstr_t("Title"));
//设置数据库连接变量
//数据库服务器(local),数据库名staff,用户名sa,密码sa
//注意数据库服务器(local),如果是用ODBC拉模式,就指对应的DSN名称。
m_Report->Database ->Tables ->Item [1]->SetLogOnInfo("(local)","staff","sa","sa");
//设置检索SQL命令
m_Report->put_SQLQueryString ((_bstr_t)"select * from person where id<'4' order by id");
//不显示重复字段
m_Report->PutEnableSelectDistinctRecords (TRUE);
//设置检索条件,采用水晶报表语法,功能同设置检索SQL命令
m_Report->PutRecordSelectionFormula ((_bstr_t)"{person.id}='1'");
//设置报表作者
m_Report->PutReportAuthor ("xiaojin");
//将m_Report与报表控件连接
m_CRViewer1.SetReportSource(m_Report);
//显示报表工具条
m_CRViewer1.SetDisplayToolbar (TRUE);
//不显示报表左边的分组树
m_CRViewer1.SetDisplayGroupTree (FALSE);
//不显示控件边框
m_CRViewer1.SetDisplayBorder (FALSE);
//刷新数据
m_CRViewer1.Refresh ();
//显示报表内容
m_CRViewer1.ViewReport();
相关文章推荐
- vc使用水晶报表
- 在VC中使用水晶报表
- 【转】在VC中使用水晶报表
- VC中使用水晶报表的总结
- 在VC中使用水晶报表
- VB 和 VC 结合使用水晶报表
- 水晶报表在VC 6.0中的使用
- VC++中使用,安装及部署水晶报表的方法
- 如何在水晶报表中使用条形码……
- c#水晶报表的进一步功能和使用!
- 【水晶报表小技巧-使用-3】 自定日期时间格式输出
- 水晶报表使用问题
- VS2010 水晶报表的使用
- .NET环境下水晶报表使用总结 lihonggen0(原作)
- ASP.NET中水晶报表的使用
- .NET环境下水晶报表使用总结
- ASP.NET中水晶报表的使用(转载的)
- 图解使用VS.NET部署含水晶报表的网站
- Asp.net中使用水晶报表
- Asp.Net中使用水晶报表