exceedtimerep.~pas
来自「完整的delphi书籍源代码,大家有空的时候自己慢慢看看」· ~PAS 代码 · 共 141 行
~PAS
141 行
unit ExceedTimeRep;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, DB, DBTables, Grids, DBGrids, StdCtrls, Buttons,RVClass, RVProj, RVCsStd,
RpBase, RpSystem, RpRave, RpDefine, RpCon, RpConDS;
type
TRetnRep = class(TForm)
Edit2: TEdit;
Label2: TLabel;
Label1: TLabel;
Edit1: TEdit;
BitBtn1: TBitBtn;
BitBtn2: TBitBtn;
DBGrid1: TDBGrid;
DataSource1: TDataSource;
Table1: TTable;
Query1: TQuery;
Database1: TDatabase;
RvSystem1: TRvSystem;
ExceedTime_RvProject: TRvProject;
ExceedTime_RVDSC: TRvDataSetConnection;
procedure BitBtn2Click(Sender: TObject);
procedure FormShow(Sender: TObject);
procedure BitBtn1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
RetnRep: TRetnRep;
implementation
{$R *.dfm}
procedure TRetnRep.BitBtn2Click(Sender: TObject);
begin
Close;
end;
procedure TRetnRep.FormShow(Sender: TObject);
Var QueryStr:string;
i,Querycount:integer;
StuNos,StuNames,ClassNames,BookNos,BookNames,Authors:array[1..100]of String;
begin
With query1 do
begin
close;
Sql.Clear;
QueryStr:='Select StuNo,BookNo From Record Where Delayed=True';
Sql.Add(QueryStr);
Open;
Querycount:=recordcount;
first;
for i:=1 to Querycount do
begin
StuNos[i]:=FieldByName('StuNo').asstring;
BookNos[i]:=FieldByName('BookNo').asstring;
next;
end;
for i:=1 to Querycount do
begin
close;
Sql.Clear;
QueryStr:='Select BookName,Author From Book Where BookNo='+''''+BookNos[i]+'''';
Sql.Add(QueryStr);
Open;
BookNames[i]:=FieldByName('BookName').asstring;
Authors[i]:=FieldByName('Author').asstring;
end;
for i:=1 to Querycount do
begin
close;
Sql.Clear;
QueryStr:='Select StuName,Class From Student Where StuNo='+''''+StuNos[i]+'''';
Sql.Add(QueryStr);
Open;
StuNames[i]:=FieldByName('StuName').asstring;
ClassNames[i]:=FieldByName('Class').asstring;
end;
end;
With Table1 do
begin
close;
open;
Active:=True;
First;
for i:=1 to Recordcount do
begin
Delete;
next;
end;
close;
open;
Active:=True;
for i:=1 to Querycount do
begin
Last;
Append;
Fieldvalues['StuNo']:=StuNos[i];
Fieldvalues['StuName']:=StuNames[i];
Fieldvalues['Class']:=ClassNames[i];
Fieldvalues['BookNo']:=BookNos[i];
Fieldvalues['BookName']:=BookNames[i];
Fieldvalues['Author']:=Authors[i];
Post;
end;
end;
Table1.close;
Table1.Open;
Table1.Active:=True;
Edit1.Text:=inttostr(Querycount);
Edit2.Text:=Datetostr(Date);
end;
procedure TRetnRep.BitBtn1Click(Sender: TObject);
var ReportPage: TRavePage;
DateText: TRaveText;
begin
Table1.Active:=False;
Table1.Active:=True;
ExceedTime_RvProject.ProjectFile:='.\ReportPages\ExceedTime.rav';
ExceedTime_RvProject.Open;
with ExceedTime_RvProject.ProjMan do
begin
ReportPage:=FindRaveComponent('Report2.MainPage',nil) as TRavePage;
DateText:= FindRaveComponent('Text7',ReportPage) as TRaveText;
DateText.Text:=datetostr(date);
end;
ExceedTime_RvProject.Execute;
ExceedTime_RvProject.Close;
end;
end.
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?