获取报表列表和预览报表

    Unit Urave_test;
interface
uses
  //如下2行为本工程使用的单元文件,均为Delphi根据用户使用的组件自动添加
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, RpRave, RpDefine, RpBase, RpSystem, StdCtrls, Buttons;
type
    TForm1 = class(TForm)
    //如下为窗体使用的组件说明
    Label1: TLabel;
    Label2: TLabel;
    Report_Listbox: TListBox;
    Memo_Description: TMemo;
    RvSystem1: TRvSystem;
    RvProject: TRvProject;
    PrintBtn: TBitBtn;
    ReportBtn: TBitBtn;
    Label3: TLabel;
    ExitBtn: TBitBtn;
    //如下5行为事件处理过程说明
    procedure FormCreate(Sender: TObject);
    procedure ReportBtnClick(Sender: TObject);
    procedure FormDestroy(Sender: TObject);
    procedure PrintBtnClick(Sender: TObject);
    procedure ExitBtnClick(Sender: TObject);
    private
     { Private declarations }
  public
    { Public declarations }
  end;
var
Form1: TForm1;
implementation
{$R *.dfm}
    //如下为工程的各事件处理过程代码
procedure TForm1.FormCreate(Sender: TObject);
//窗体建立时,执行该过程
begin
      RvProject.Open;
  //打开由ProjectFile属性指定的报表工程文件
  //,使其可用于打印或修改。
  RvProject.GetReportList(Report_Listbox.Items,true);
  //获取Rave定义的报表列表,并写入Report_Listbox的列表框中
  Report_Listbox.ItemIndex:=0;
  //设置列表框的初值,否则,第1次直接调用ReportLClick过程时
  //,将出现下标越界错误
end;

procedure TForm1.ReportBtnClick(Sender: TObject);
//当选择打印按钮Print时,调用该过程,并将选择报表的描述显示在Memo组件中
begin
RvProject.SelectReport(Report_Listbox.Items[Report_Listbox.ItemIndex],true);
    //选择由入口参数Items[RReport_Listbox.ItemIndex]指定的报表
  //找到返回True,否则返回false
  RvProject.ReportDescToMemo(Memo_Description);
  //ReportDescToMemo初始化Memo组件,即Memo_Description组件。
  //Memo_Description组件用于保存当前选择报表的描述内容。
end;

procedure TForm1.FormDestroy(Sender: TObject);
//退出应用关闭工程,调用该过程
begin
  RvProject.Close;
  //关闭由ProjectFile属性指定的已打开的报表工程
end;

procedure TForm1.PrintBtnClick(Sender: TObject);
//打印或预览报表时,调用该过程
begin
     RvProject.execute;
     //打印当前选择的报表
end;

procedure TForm1.ExitBtnClick(Sender: TObject);
begin
      Form1.close;
  //关闭窗体
end;
end.



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值