如何用Crystal Reports 9 开VC++下开发应用程序

如何用Crystal Reports 9 开VC++下开发应用程序,第1张

水晶报表是一个报表设计开发的强大工具,功能强大,设计灵活,在水晶报表光盘中只提供了一个完全动态生成报表的例子,使用繁琐。现介绍其在VC++60中的简单使用方法。编译环境:VC++60 sp5 、Windows 2000 Server sp3 (en)。

一、导入水晶报表使用的动态联接库:根据实际修改文件路径。

#import "C:\Documents and Settings\Administrator\桌面\cr\craxdrt9dll" no_namespace

二、定义接口指针变量

//水晶报表变量

IApplicationPtr m_Application;

IReportPtr m_Report;

//水晶报表控件变量,在对话框中加入该控件

CCrystalReportViewer9 m_CRViewer1;

三、具体实现步骤

//实例化m_Application

m_ApplicationCreateInstance (__uuidof(Application));

//获取m_Report变量

//staffrpt为通过向导建立的报表文件,数据库采用SQL Server 70

m_Report =m_Application->OpenReport ("C:\\Documents and Settings\\Administrator\\桌面\\cr\\debug\\staffrpt");

//设置报表标题

m_Report->put_ReportTitle (_bstr_t("Title"));

//设置数据库连接变量

//数据库服务器(local),数据库名staff,用户名sa,密码sa

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)"{personid}='1'");

//设置报表作者

m_Report->PutReportAuthor ("xiaojin");

//将m_Report与报表控件连接

m_CRViewer1SetReportSource(m_Report);

//显示报表工具条

m_CRViewer1SetDisplayToolbar (TRUE);

//不显示报表左边的分组树

m_CRViewer1SetDisplayGroupTree (FALSE);

//不显示控件边框

m_CRViewer1SetDisplayBorder (FALSE);

//刷新数据

m_CRViewer1Refresh ();

//显示报表内容

m_CRViewer1ViewReport();

使用一个服务器就行,在你要使用你程序的那台机器连接上有你服务器的那个网络,然后连接数据库的连接信息,从本机改成对方的IP就可以了

服务器就是你开发或者运行这个网站或者软件的机器,也就是装mysql,并且有着全部存储数据的机器

代码:

#include <stdioh>

int main()

{

 int repeat;

 int i, a, b;

 char c;

 float sum;

 scanf("%d", &repeat);

 for (i = 0; i < repeat; i++)

 {

  scanf("%d %d %c", &a, &b, &c);

  if (a > 0)

  {

   switch (b)

   {

   case 90:

    sum = a  695;

    break;

   case 93:

    sum = a  744;

    break;

   case 97:

    sum = a  793;

    break;

   default:

    printf("Invalid input\n");

    continue;

   }

   if (c == 'm')

   {

    sum = sum  095;

   }

   else if (c == 'e')

   {

    sum = sum  097;

   }

   else

   {

    printf("Invalid input\n");

    continue;

   }

   sum += 0005;                     //四舍五入保留两位小数

   printf("Result: %2f\n", sum);

  }

  else

  {

   printf("Invalid input\n");

  }

 }

 return 0;

}

运行结果:

以上就是关于如何用Crystal Reports 9 开VC++下开发应用程序全部的内容,包括:如何用Crystal Reports 9 开VC++下开发应用程序、我用vc6.0开发的程序用的是mysql数据库,要在没装数据库的机器上运行该怎么办、vc++程序设计等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zz/9340222.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-27
下一篇 2023-04-27

发表评论

登录后才能评论

评论列表(0条)

保存