分享
 
 
 

学习笔记(3)--Using RAS SDK

王朝other·作者佚名  2006-01-09
窄屏简体版  字體: |||超大  

Using RAS SDK

Notes: 如果需要在运行时创建和修改报表,必须要使用RAS提供的服务来实现。

1. Installing SDK JAR files

RAS SDK和RAS Server可以安装在同一台机器上,也可以安装在不同的机器上。默认安装下,SDK Jar文件安装在C:\Program Files\Common Files\Crystal Decisions\2.0\jars\(9.0)或C:\Program Files\Common Files\Crystal Decisions\2.5\java\lib\(10.0)。

2. 不同的安装方式和运行使用方式

RAS服务可以单独安装和Crystal Report一起使用,也可以作为Crystal Enterprise的一个组件和它一起运行提供服务。在这两种方式下,我们使用RAS服务的主要区别在于和RAS Server建立会话,指定目录和报表的方式的不同上。

a。Establishing a RAS session

在CE中,必须要首先拥有一个Enterprise session然后才能建立一个RAS session。通过调用IEnterpriseSession对象的getService方法初始化一个RAS session。这个方法返回一个IReportAppFactory对象,这个工厂类提供在CE system中打开已存在报表和创建新报表的功能。

在standalone方式下,通过ReportAppSession来创建

b. Specifying reports and folders

单独版和集成版的RAS服务的关键区别在于管理报表的不同方法。集成版的RAS设计成允许用户修改由CE InfoStore管理的报表对象,而单独版的RAS server设计为可以修改在服务器上的报表文件(.rpt files)。当打开和保存报表的时候需要指定哪张报表被打开以及要把报表保存到哪个目录。

报表和目录的指定方法如下:

standalone模式下,指定报表和路径需要提供文件路径;

CE下,指定报表对象需要提供一个InfoObject的引用,或者提供它的ID属性。

RAS SDK提供了应用以上两种方式的应用编程接口。

c. Backward compatibility

在CE中的RAS Server component兼容建立在standalone RAS server上的应用。此时,当应用连接在CE中的RAS server时,用户会自动的以guest用户身份登陆到CE中。RAS Server component访问CE中的报表和不在RAS服务器上的报表文件。如果在CE中取消guest用户,那么这些应用就不能够连接到RAS server.

3. Accessing data sources

RAS可以使用许多中不同的数据源。从概念上,这些数据源可以分成以下几类:

a. Runtime data sources RAS可以使用运行时由程序生成的数据作为报表的数据源。这些数据可以从数据库中取得,也可以从数据流中取得,还可以是通过应用程序从一般的文件中取得。

使用运行时数据源的方法:

。把要操纵的数据放入Rowset对象中;

。创建一个Dataset对象并且用rowset中数据填充;

。创建一个RowsetController对象;

。使用RowsetController的方法分别设定数据源。

此时动态数据源就可以使用了。

注:如果创建一个基于data set数据源的报表,那么使用的数据不会和报表一起保存。当下一次重新打开报表的时候,必须要重做取得数据的过程来组装报表。

b. Persistent data sources

使用持久数据源的特点在于数据的生存期超越了运行时期。使用持久数据源主要适用于使用Crystal Report创建的报表。由于RAS镜相了Crystal Reports的所有功能,所以RAS也可以使用这些持久数据源。

在RAS中可以使用以下三种途径获取数据源:

。使用一个已经存在的报表的数据源;

。创建一个新的数据源; 。使用ConnectionDirManager对象选择一个数据源:ConnectionDirManager对象允许浏览RAS上的所有数据源。这些数据源由一个树型结构管理,可以通过ConnectionDirManager的方法访问。

c. JavaBean custom data sources

为了使用一个自定义的数据源,可以使用JavaBean(或者一个没有扩展Bean类型的java类)来作为数据源。

方法如下:

。创建一个说明自定义数据源的java类:这个类象一个Java Beans Connectivity data source一样为创建Crystal Reports提供服务。这个类需要以下特征:

构造函数不能带参数;

作为“tables”被使用的方法必须返回一个ResultSet对象;

Statement对象必须使用ResultSet.TYPE_SCROLL_SENSITIVE 和 ResultSet.CONCUR_READ_ONLY参数来创建。

注:返回ResultSet的方法可以带参数,这将被Crystal Reprots当做存储过程参数对待。

。引用一个java类来为报表提供数据:要提供给这个类上面自定义数据源类的类名和取得数据的方法,即返回ResultSet的方法。

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
2023年上半年GDP全球前十五强
 百态   2023-10-24
美众议院议长启动对拜登的弹劾调查
 百态   2023-09-13
上海、济南、武汉等多地出现不明坠落物
 探索   2023-09-06
印度或要将国名改为“巴拉特”
 百态   2023-09-06
男子为女友送行,买票不登机被捕
 百态   2023-08-20
手机地震预警功能怎么开?
 干货   2023-08-06
女子4年卖2套房花700多万做美容:不但没变美脸,面部还出现变形
 百态   2023-08-04
住户一楼被水淹 还冲来8头猪
 百态   2023-07-31
女子体内爬出大量瓜子状活虫
 百态   2023-07-25
地球连续35年收到神秘规律性信号,网友:不要回答!
 探索   2023-07-21
全球镓价格本周大涨27%
 探索   2023-07-09
钱都流向了那些不缺钱的人,苦都留给了能吃苦的人
 探索   2023-07-02
倩女手游刀客魅者强控制(强混乱强眩晕强睡眠)和对应控制抗性的关系
 百态   2020-08-20
美国5月9日最新疫情:美国确诊人数突破131万
 百态   2020-05-09
荷兰政府宣布将集体辞职
 干货   2020-04-30
倩女幽魂手游师徒任务情义春秋猜成语答案逍遥观:鹏程万里
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案神机营:射石饮羽
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案昆仑山:拔刀相助
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案天工阁:鬼斧神工
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案丝路古道:单枪匹马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:与虎谋皮
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:李代桃僵
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:指鹿为马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:小鸟依人
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:千金买邻
 干货   2019-11-12
 
推荐阅读
 
 
 
>>返回首頁<<
 
靜靜地坐在廢墟上,四周的荒凉一望無際,忽然覺得,淒涼也很美
© 2005- 王朝網路 版權所有