ADOppReportBuilder user’s Guide
Copyright Ó 2002-09-05 by Acloudy
目录:
1、声明
2、概述
3、使用指南
3.1安装指南
3.2调用指南
3.3使用指南
4、注意点
5、faq
一、 声明
本报表设计控件是在delphi5.0、windows2000环境下,利用Digital Metaphors公司的ReportBuilder4.22,并结合Sheridan公司的Data Widgets 2.0.007中文版开发的。在此感谢上述公司。如有侵权,请mail我。地址acloudy@gmail.com。
二、 概述
本控件可以自定义报表格式模板的数据库链接,自定义报表内容的数据库链接和sql语句。对于设计好的报表模板可以存数据库(默认),也可以存成模板文件(*.rtm)(支持从模板文件中读取报表格式)。同时也支持更改sql和数据库链接,报表数据可以导出excel格式。
本控件主要提供如下三个接口,调用格式见使用指南中VB调用方法。(connstr为默认HRMS连接)
1. ADOReportDesign(connstr) 报表设计接口,主要给系统管理员使用。提供增加、删除、修改、预览、导出报表的全部功能。
2. GetADOReport(connstr,Rcode)报表查询接口。提供利用报表代码(Rcode)进行模糊查询、预览、导出功能。
3. PrintADOReport(connstr,Rcode)报表打印功能。提供利用报表代码(Rcode)进行打印、导出功能。
三、 使用指南
3.1安装指南
本控件需要有sqlserver数据库的支持。
1. 控件安装:
►将adoppreport.dll文件拷贝至系统目录下,win98为:C:\windows\system;NT下为c:\winnt\system32。(默认系统安装在C盘); 也可以将上述控件拷贝至程序调用所在目录
►手动注册Regsrv32如下组件designcontrol.ocx和HRMSReport.dll
2. 数据库安装
确保HRMS数据中建立一个表TBLSYSREPORT。其生成sql语句在附件中。
3.2调用指南
1. 在VB中调用格式
在VB的Module中,可以如下声明:
Public Declare Sub ADOReportDesign Lib "ADOppReport.dll" (ByVal ConnStr As String)
Public Declare Sub GetADOReport Lib "ADOppReport.dll" (ByVal ConnStr As String, ByVal RCode As String)
Public Declare Sub PrintADOReport Lib "ADOppReport.dll" (ByVal ConnStr As String, ByVal RCode As String)
其中
ConnStr为标准的ADO数据库链接字符串,格式见下。
Rcode为报表的代码(唯一)。
2. 数据库链接字符串格式(注意VB中也必须遵守)
► ADO链接:
Provider=MSDASQL.1;Password=;Persist Security Info=True;User ID=;Data Source=1;Mode=;Initial Catalog=
3. 3用户使用指南
以下是实际增加报表的整个流程
1.运行程序,选择增加报表的-报表设计
2.进入报表设计界面,选择增加报表
3.进入增加报表界面。输入必要的说明,进入报表sql设计向导,也可以直接手动输入sql。以下使用向导输入(推荐使用)
4.进入SQL设计向导,选择可选字段
5.添加必要的字段,注意不要多选,以免在打印时出现,单击“下一步”,进入SQL条件设计界面
6.可以使用窗体设计,来源有两个(数据库导入和本地文件系统导入),关于窗体的设计,参加窗体设计手册。在这里只能选择已经设计好的窗体。
7.本演示选择数据库中已有的明细表,并确认
8.选择条件来源,注意,如使用窗体的传入的值,必须选择窗体控件的名称,如HRMSControl1
9.进入窗体条件输入界面。输入80,表示离职问卷项目——分数大于80
10.退出条件输入窗体,进入参数界面,可以检查自动生成的SQL语句。可以手动修改。确认退出
11.进入设计界面,可以单击设计报表,进行报表的设计,这时候,也可以修改报表参数,删除报表。如不设计打印预览不能使用。
12.进入具体设计界面,具体设计,可以参考ReportBuilder的设计手册。设计好报表,注意保存退出
13. 此时,可以进行打印预览
14.首先在条件窗体中输入具体条件,退出
15就可以看到报表的打印效果,到此,一个全新的报表设计完成。
提示:报表查询和报表打印的功能均已经包含在报表设计之中。
四、 注意点
1. 修改已有的报表参数,注意表结构,如出现将设计好的模板中包含的字段删除的情况,有意外错误产生。
2. 导出Excel的数据是以sql语句为准,不是以设计报表的数据为准,就是说在报表中未显示的数据,只要在sql语句中存在,就会导出。
3. 在VB中调用完,注意显式释放(Freelibrary)
4. 在设计界面中,必须点击选择某一报表,删除、更改功能才能使用。如果按钮不可以使用,请先选择要操作的报表。
五、 faq
暂无
if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[TBLSYSREPORT]') and OBJECTPROPERTY(id, N'IsUserTable') = 1)
drop table [dbo].[TBLSYSREPORT]
GO
CREATE TABLE [dbo].[TBLSYSREPORT] (
[SRP_CODE] [varchar] (20) COLLATE Chinese_PRC_CI_AS NOT NULL ,
[SRP_NAME] [varchar] (80) COLLATE Chinese_PRC_CI_AS NULL ,
[SRP_DESCRIPTION] [varchar] (160) COLLATE Chinese_PRC_CI_AS NULL ,
[SRP_MDL_CODE] [varchar] (20) COLLATE Chinese_PRC_CI_AS NULL ,
[SRP_GROUP] [varchar] (20) COLLATE Chinese_PRC_CI_AS NULL ,
[SRP_FILENAME] [varchar] (255) COLLATE Chinese_PRC_CI_AS NULL ,
[SRP_SQL] [varchar] (300) COLLATE Chinese_PRC_CI_AS NULL ,
[SRP_EXISTWHERE] [char] (1) COLLATE Chinese_PRC_CI_AS NULL ,
[SRP_REPORTFILE] [image] NULL ,
[SRP_WHERE] [text] COLLATE Chinese_PRC_CI_AS NULL ,
[SRP_GROUPBY] [text] COLLATE Chinese_PRC_CI_AS NULL ,
[SRP_ORDERBY] [text] COLLATE Chinese_PRC_CI_AS NULL ,
[SRP_SQL2] [text] COLLATE Chinese_PRC_CI_AS NULL ,
[SRP_WHERE2] [text] COLLATE Chinese_PRC_CI_AS NULL ,
[SRP_CONN] [varchar] (300) COLLATE Chinese_PRC_CI_AS NULL ,
[IS_NEW] [char] (10) COLLATE Chinese_PRC_CI_AS NOT NULL,
[Form_XML] [text](16) COLLATE Chinese_PRC_CI_AS NULL ,
[Rel_XML] [text](16) COLLATE Chinese_PRC_CI_AS NULL,
[sqlXML] [test](16)
) ON [PRIMARY] TEXTIMAGE_ON [PRIMARY]
GO
ALTER TABLE [dbo].[TBLSYSREPORT] WITH NOCHECK ADD
CONSTRAINT [DF_TBLSYSREPORT_IS_NEW] DEFAULT ('N') FOR [IS_NEW],
CONSTRAINT [PK_TBLSYSREPORT] PRIMARY KEY CLUSTERED
(
[SRP_CODE]
) ON [PRIMARY]