在VC中使用水晶报表

    来自: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();

 

本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/memory_xj/archive/2008/04/16/2296970.aspx

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值