1.什么是水晶报表?我想学习,如何开始?
对任何商用的应用程序而言,生成数据报表都是一项很重要的功能。
一个系统中可能包含有很有用的数据,但如果没有一种很好的办法能向用户表示出来,这些数据也就没有什么意义了。 创建一个简单的数据报表 本节中将创建一个简单的数据报表,该报表使用数据环境设计器作为数据源。
数据环境设计器使用和Visual Basic一起提供的NorthWind数据库创建一个简单的层次结构游标,该游标包含两个表:Customers和Orders,并使用“CustomerID”字段链接两个表。 所谓“数据环境”包括了程序中所有的数据库连接和查询,它用来将报表和某个数据源连接起来。
要在数据环境设计器中创建一个简单的层次结构游标,可按照下列步骤执行: 1。 创建数据环境 创建数据环境的步骤为: (1) 在“工程”菜单上,选择“更多ActiveX设计器”子菜单中的“Data Enviroment”,向工程中添加一个设计器。
如果设计器没有在“工程”菜单上列出,则单击“部件”,并单击“设计器”选项卡,然后单击“数据环境”即可把设计器添加到菜单上。 (2) 在Connection1上单击鼠标右键,从弹出的浮动菜单中选择Properties菜单项。
(3) 在“数据链接属性”对话框上选择“Microsoft jet 3。 51 OLE DB Provider”。
这是为访问Jet数据库选择正确的OLE DB供应商,然后单击下一步按钮。 (4) 在“数据链接属性”对话框中键入或是从文件对话框中选择要与之建立联系的数据库文件名。
Northwind数据库位于Visual Basic的安装目录中。 (5) 右键单击“Connection1”图标,把图标名改为“NorthWind”。
(6) 选中“DataEnvironment1”,按F4进入属性窗口,将名称改为“denvNWind”。 2。
生成用来从数据库中检索客户信息的查询 生成用来从数据库中检索客户信息的查询步骤为: (1) 在“NorthWind”上单击鼠标右键,从弹出的菜单中选择“添加命令”菜单项,DataEnvironment将在数据环境中添加一个新的命令,在这个命令上单击鼠标右键,并从弹出的菜单中选择“属性”菜单项。 (2) 可以为命令设置很多属性,现在要设置的是“通用”页中的各个属性。
如下图: 分别设置该命令的各项属性为: 名称:Customers; 连接:NorthWind; 数据库对象:表; 对象名称:Customers。 设置好各属性后,单击“确定”结束对话框。
(3) 右键单击“Customers”命令,并单击“添加子命令”,显示“Command2”对话框。在对话框中设置各项属性。
名称:Orders; 连接:NorthWind;数据库对象:表;对象名称:Orders。 (4) 在“关联”选项卡中,选中“与父命令对象相关联”复选项,“父命令”框中选择“Customers”,“父字段”和“子字段/参数”框都选择“CustomerID”。
在设计关系数据库时,对于链接字段,习惯上相关的表要使用相同的名字。 (5) 单击“添加”按钮,向Command对象添加关系。
在关闭了对话框之后,数据环境设计器通过把两个命令显示为一个层次结构来反映关系,该层次结构将被用于创建数据报表。然后单击“确定”按钮关闭对话框。
3。 创建数据报表 (1) 在“工程”菜单上单击“添加Data Report”,将添加一个数据报表到工程中。
(2) 设置DataReport对象的属性。Name, Caption, 在属性窗口上,选择“DataSource(数据源)”和“DataMember”。
(3) 右键单击数据报表设计器,并单击“检索结构”。 至此已经向设计器添加了一个新的分组,每一个分组都同数据环境中的Command对象有“一对一”对应关系。
同时要注意分组标头有一个与之匹配的分组注脚部分。 要注意的是,如果某个Command对象有多于一个的子对象——相互“平行”的子对象Command1对象,则Data Environment可以创建该Command对象的层次结构。
Data Report设计器却没有那么灵活,在同一时间不能显示多于一个的子对象,此时,当执行一个Retrieve Structure Command命令时,Data Report将只显示第一个子Command,其他的都不显示,所以应该避免创建带有“平行”子Command的Command层次结构。 (4) 在数据环境设计器中,把“Company Name”字段(在“Customers”命令下)拖到分组标头(Customer_Header)部分。
分组标头部分可以包含Customers命令的任何字段。 (5) 如果不希望Label控件包括在TextBox控件中,可以在数据环境设计器的“选项。
。”
对话框的“字段映射”选项卡上撤消对“Drag and Drop Fields Caption”选项的选择。 (6) 使用Show方法预览数据报表 Private Sub Command1_Click() DataReport1。
Show End Sub 向数据报表添加计算字段 计算字段是一个在报表中生成时需要计算的字段,例如,在一个交税单中,必须把总价值与本地税率相乘得到税额,这里的税额就是一个计算字段。 以交税单为例,将一个计算字段添加到数据报表中,可执照下列步骤进行: (1) 在数据环境设计器中,建立命令“OrderDetail”,单击右键,在弹出的菜单中选择“属性”,显示“OrderDetail属性”对话框。
(2) 在“通用”选项卡上,单击“SQL语句”按钮,并把下列语句添加到框中: Select OrderID, ProductID,UnitPrice, Quantity, (Quantity * UnitPrict) As Total 。
2.请问水晶报表在vc6.0中如何使用
水晶报表是一个报表设计开发的强大工具,功能强大,设计灵活,在水晶报表光盘中只提供了一个完全动态生成报表的例子,使用繁琐。
现介绍其在VC++6。0中的简单使用方法。
编译环境:VC++6。0 sp5 、Windows 2000 Server sp3 (en)。
一、导入水晶报表使用的动态联接库:根据实际修改文件路径。 #import "C:\Documents and Settings\Administrator\桌面\cr\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:\\Documents and Settings\\Administrator\\桌面\\cr\\debug\\staff。
rpt"); //设置报表标题 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 (TRUE); //设置检索条件,采用水晶报表语法,功能同设置检索SQL命令 m_Report-> ((_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(); 这样,漂亮的水晶报表就显示出来了。
程序异常处理部分省略,请自行加入。 。
3.如何解决水晶报表10的部署问题
这个让我找了很久,网上都说安装包在C:\Program Files (x86)\Microsoft Visual Studio 8\Crystal Reports\CRRedist\X64\CRRedist2005_X64.msi
可我我在服务器上完整安装了VS2005后一直找不到,后来才发现我安装VS2005的安装目录不是在C盘,所以安装包无法在C盘找到.
2.WIN2003 64位下安装虚拟打印机
64位下可支持的虚拟打印机很少,找了很久,才找到微软的Microsoft XPS Document Writer,下载地址
希望可以帮你解决问题,我用的是finereport,方便多了,你可以试试
4.如何解决水晶报表10的部署问题
这个让我找了很久,网上都说安装包在C:\Program Files (x86)\Microsoft Visual Studio 8\Crystal Reports\CRRedist\X64\CRRedist2005_X64.msi,可我我在服务器上完整安装了VS2005后一直找不到,后来才发现我安装VS2005的安装目录不是在C盘,所以安装包无法在C盘找到.2.WIN2003 64位下安装虚拟打印机64位下可支持的虚拟打印机很少,找了很久,才找到微软的Microsoft XPS Document Writer,下载地址希望可以帮你解决问题,我用的是finereport,方便多了,你可以试试。
转载请注明出处windows之家 » win10安装水晶报表