📄 unit1.pas
字号:
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
RDReport, Menus, BitBtnGrid, StdCtrls, ActnList, Buttons, Db, DBTables,
ScrollCustomControl, ShapeEx ,RDConsts, ComCtrls, ToolWin, MyColorComboBox,
Grids;
type
TForm1 = class(TForm)
BitBtn2: TBitBtn;
BitBtn3: TBitBtn;
BitBtn1: TBitBtn;
RDReport1: TRDReport;
RDReport3: TRDReport;
BitBtn4: TBitBtn;
BitBtn5: TBitBtn;
BitBtn6: TBitBtn;
Query1: TQuery;
RDReport4: TRDReport;
Table1: TTable;
Table3: TTable;
Query2: TQuery;
RDReport2: TRDReport;
BitBtn7: TBitBtn;
Table2: TTable;
procedure BitBtn1Click(Sender: TObject);
procedure RDReport1NeedData(Sender: TObject; AreaType: TAreaType;
Area: TGridArea; RecordNo: Integer; var HasData: Boolean);
procedure BitBtn2Click(Sender: TObject);
procedure Button1Click(Sender: TObject);
procedure RDReport2NeedData(Sender: TObject; AreaType: TAreaType;
Area: TGridArea; RecordNo: Integer; var HasData: Boolean);
procedure BitBtn6Click(Sender: TObject);
procedure RDReport2GetedData(Sender: TObject; AreaType: TAreaType;
Area: TGridArea);
procedure BitBtn4Click(Sender: TObject);
procedure RDReport4BeforePrint(Sender: TObject; AreaType: TAreaType);
procedure RDReport4NeedData(Sender: TObject; AreaType: TAreaType;
Area: TGridArea; RecordNo: Integer; var HasData: Boolean);
procedure RDReport3BeforePrint(Sender: TObject; AreaType: TAreaType);
procedure RDReport3AfterPrint(Sender: TObject; AreaType: TAreaType);
procedure RDReport3NeedData(Sender: TObject; AreaType: TAreaType;
Area: TGridArea; RecordNo: Integer; var HasData: Boolean);
procedure BitBtn5Click(Sender: TObject);
procedure BitBtn3Click(Sender: TObject);
procedure BitBtn7Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
shapeex1:TShapeex;
preview: TRDPreview;
RDReport22: TRDReport;
end;
var
Form1: TForm1;
FF : TextFile;
implementation
{$R *.DFM}
uses Unit_AreasEditor;
procedure TForm1.BitBtn1Click(Sender: TObject);
begin
RDReport2.EditReportAreas;
end;
procedure TForm1.BitBtn2Click(Sender: TObject);
var
a: TGridArea;
begin
a:= RDReport2.GetReportArea(atTitle);
if a<>nil then a.Items[1,1]:= '周针织服装加工、制造';
RDReport2.AlignArea(atColumnHeader,atDetail);
RDReport2.FillFieldNames(atDetail);
RDReport2.Preview;
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
// RDReport2:= TRDReport.Create(self);
// RDReport2.AreaTypes := [atDetail,atSummary];
end;
procedure TForm1.RDReport2NeedData(Sender: TObject; AreaType: TAreaType;
Area: TGridArea; RecordNo: Integer; var HasData: Boolean);
begin
if (AreaType=atDetail) and (RecordNo=9)
then RDReport2.NewPage;
end;
procedure TForm1.BitBtn6Click(Sender: TObject);
begin
if preview=nil then preview:= TRDPreview.Create(self);
preview.Align := alClient;
preview.RDReport := RDReport2;
preview.Prepare;
end;
procedure TForm1.RDReport2GetedData(Sender: TObject; AreaType: TAreaType;
Area: TGridArea);
begin
if (AreaType=atSummary)
then begin
Area.Strings[3] := Area.Strings[3]+'元';
end;
end;
procedure TForm1.BitBtn4Click(Sender: TObject);
begin
RDReport4.Preview;
end;
procedure TForm1.RDReport4BeforePrint(Sender: TObject;
AreaType: TAreaType);
begin
if (AreaType=atSubDetail) then
begin
Query2.Close;
Query2.Params[0].AsInteger := Table3.FieldByName('CustNo').AsInteger;
Query2.Open;
end;
end;
procedure TForm1.RDReport4NeedData(Sender: TObject; AreaType: TAreaType;
Area: TGridArea; RecordNo: Integer; var HasData: Boolean);
begin
// if (AreaType=atDetail) and (RecordNo=3) then RDReport4.NewPage;
end;
procedure TForm1.RDReport3BeforePrint(Sender: TObject;
AreaType: TAreaType);
begin
if (AreaType=atDetail) then
begin
AssignFile(FF, 'cnsetup.log');
Reset(FF);
end;
end;
procedure TForm1.RDReport3AfterPrint(Sender: TObject; AreaType: TAreaType);
begin
if (AreaType=atDetail) then CloseFile(ff);
end;
procedure TForm1.RDReport3NeedData(Sender: TObject; AreaType: TAreaType;
Area: TGridArea; RecordNo: Integer; var HasData: Boolean);
var
Str : string;
begin
if (AreaType=atDetail) then
begin
HasData := not Eof(FF);
if HasData then
begin
Readln(FF,str);
Area.Items[0,0] := Str;
end;
end;
end;
procedure TForm1.BitBtn5Click(Sender: TObject);
begin
RDReport3.Preview;
end;
procedure TForm1.BitBtn3Click(Sender: TObject);
begin
RDReport1.LoadFromFile(ExtractFilePath(Paramstr(0))+'RDR\FP.RDR');
with RDReport1.GetReportArea(atDetail) do
begin
Items[0,0] := 'XX票据';
Items[1,0] := '客户名称:江苏大家发有限公司';
Items[1,3] := FormatDateTime('"开票日期"yyyy"年"mm"月"dd"日"',date);
end;
RDReport1.Preview;
end;
procedure TForm1.BitBtn7Click(Sender: TObject);
begin
RDReport1.LoadFromFile(ExtractFilePath(Paramstr(0))+'RDR\FPEmpty.RDR');
with RDReport1.GetReportArea(atDetail) do
begin
Items[1,0] := ' 江苏大家发有限公司';
Items[1,3] := FormatDateTime('yyyy" "mm" "dd" "',date);
end;
RDReport1.Preview;
end;
procedure TForm1.RDReport1NeedData(Sender: TObject; AreaType: TAreaType;
Area: TGridArea; RecordNo: Integer; var HasData: Boolean);
begin
// 只有 atDetail 区域,不用判断 AreaType
if Table2.Active then Table2.First else Table2.Open;
Area.FillWithRecord(Table2,3,0);
Table2.Next;
Area.FillWithRecord(Table2,4,0);
with Area do
begin
Items[7,2] := '周伟国';
Items[6,1] := '贰万零叁佰元整';
end;
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -