fpzbdy.pas

来自「北京铁路局住房分配系统,数据库为MSSql2000,依次执行crebas4.sq」· PAS 代码 · 共 158 行

PAS
158
字号
unit Fpzbdy;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls, OleCtrls, CELLLib_TLB, ExtCtrls;

type
  TFormFPZBDY = class(TForm)
    Panel1: TPanel;
    Panel2: TPanel;
    Cell1: TCell;
    Label1: TLabel;
    Button1: TButton;
    Button2: TButton;
    Button3: TButton;
    Button4: TButton;
    Button5: TButton;
    Button6: TButton;
    procedure Button6Click(Sender: TObject);
    procedure Button1Click(Sender: TObject);
    procedure FormCreate(Sender: TObject);
    procedure Button2Click(Sender: TObject);
    procedure Button3Click(Sender: TObject);
    procedure Button4Click(Sender: TObject);
    procedure Button5Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  FormFPZBDY: TFormFPZBDY;

implementation

uses datamodl,PublicFun;

{$R *.dfm}

procedure TFormFPZBDY.Button6Click(Sender: TObject);
begin
  close;
end;

procedure TFormFPZBDY.Button1Click(Sender: TObject);
var
  opendlg:TOpendialog;
  Sfilename:string;
  i,j:smallint;
begin
  opendlg:=TOpendialog.create(Application);
  opendlg.DefaultExt:='CLL';
  opendlg.filter:='报表格式文件(*.CLL)|*.CLL';
  if opendlg.execute then
  begin
     Sfilename :=opendlg.filename;
     if comp(sfilename,'住房资源分配总表')<> true then
       begin
         showmessage('请打开指定名称结构文件!');
         exit;
       end;
     if cell1.DoOpenFile(Sfilename)>0 then
     begin
       cell1.DoRedrawAll ;
       for i:=0 to 9 do
         for j:=0 to 19 do
           cell1.DoSetCellReadOnly(i,j,true);
     end;
     button2.Enabled:=true;
     button3.Enabled:=true;
     button4.Enabled:=true;
     button5.Enabled:=true;
  end;
  opendlg.free;
end;

procedure TFormFPZBDY.FormCreate(Sender: TObject);
begin
   cell1.DoLogin('北京金天鹏软件科技有限公司',363,'00FD18FF080193035CFE09FF9908');
   cell1.EnablePopMenu:=false;
   button2.Enabled:=false;
   button3.Enabled:=false;
   button4.Enabled:=false;
   button5.Enabled:=false;
end;

procedure TFormFPZBDY.Button2Click(Sender: TObject);
var
  i:smallint;
begin
  with datamodule1 do
  begin
    if ADOQry.Active= true then ADOQry.close;
    ADOQry.sql.Clear;
    ADOQry.sql.Add('select yjsl,ejsl,sjsl,fsej,fssj,qt,hj from fpzb where fptjbh=:bh');
    for i:=1 to 6 do
      begin
        ADOQry.Parameters.ParamByName('bh').Value:='0'+inttostr(i);
        ADOQry.open;
        Cell1.DoSetCellString(2,i+3,Adoqry.fieldbyname('yjsl').AsString);
        Cell1.DoSetCellString(3,i+3,Adoqry.fieldbyname('ejsl').AsString);
        Cell1.DoSetCellString(4,i+3,Adoqry.fieldbyname('sjsl').AsString);
        Cell1.DoSetCellString(5,i+3,Adoqry.fieldbyname('fsej').AsString);
        Cell1.DoSetCellString(6,i+3,Adoqry.fieldbyname('fssj').AsString);
        Cell1.DoSetCellString(7,i+3,Adoqry.fieldbyname('qt').AsString);
        Cell1.DoSetCellString(8,i+3,Adoqry.fieldbyname('hj').AsString);
        ADOQry.Close;
      end;
    ADOQry.sql.Clear;
    ADOQry.sql.Add('select yjsl=sum(yjsl),ejsl=sum(ejsl),sjsl=sum(sjsl),fsej=sum(fsej),fssj=sum(fssj),qt=sum(qt),hj=sum(hj) from fpzb where fptjbh<>''88''');
    ADOQry.open;
    Cell1.DoSetCellString(2,3,Adoqry.fieldbyname('yjsl').AsString);
    Cell1.DoSetCellString(3,3,Adoqry.fieldbyname('ejsl').AsString);
    Cell1.DoSetCellString(4,3,Adoqry.fieldbyname('sjsl').AsString);
    Cell1.DoSetCellString(5,3,Adoqry.fieldbyname('fsej').AsString);
    Cell1.DoSetCellString(6,3,Adoqry.fieldbyname('fssj').AsString);
    Cell1.DoSetCellString(7,3,Adoqry.fieldbyname('qt').AsString);
    Cell1.DoSetCellString(8,3,Adoqry.fieldbyname('hj').AsString);
    ADOQry.Close;
    ADOQry.sql.Clear;
    ADOQry.sql.Add('select yjsl,ejsl,sjsl,fsej,fssj,qt,hj from fjfpb where ytbh=:bh');
    for i:=1 to 8 do
      begin
        ADOQry.Parameters.ParamByName('bh').Value:='0'+inttostr(i);
        ADOQry.open;
        Cell1.DoSetCellString(2,i+9,Adoqry.fieldbyname('yjsl').AsString);
        Cell1.DoSetCellString(3,i+9,Adoqry.fieldbyname('ejsl').AsString);
        Cell1.DoSetCellString(4,i+9,Adoqry.fieldbyname('sjsl').AsString);
        Cell1.DoSetCellString(5,i+9,Adoqry.fieldbyname('fsej').AsString);
        Cell1.DoSetCellString(6,i+9,Adoqry.fieldbyname('fssj').AsString);
        Cell1.DoSetCellString(7,i+9,Adoqry.fieldbyname('qt').AsString);
        Cell1.DoSetCellString(8,i+9,Adoqry.fieldbyname('hj').AsString);
        ADOQry.Close;
      end;
    cell1.DoRedrawAll;
  end;
end;

procedure TFormFPZBDY.Button3Click(Sender: TObject);
begin
   cell1.DoPrintPageSetup;
end;

procedure TFormFPZBDY.Button4Click(Sender: TObject);
begin
  cell1.DoPrintPreview(true);
end;

procedure TFormFPZBDY.Button5Click(Sender: TObject);
begin
  cell1.DoPrint(false);
end;

end.

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?