yhsdffrm.pas

来自「本人编写的有关军队营房工作的管理系统」· PAS 代码 · 共 512 行 · 第 1/2 页

PAS
512
字号
unit yhsdffrm;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, Grids, DBGrids, ExtCtrls, StdCtrls, Mask, DBCtrlsEh, Buttons,
  PrnDbgeh, DBGridEh,db;

type
  Tyhsdf = class(TForm)
    Panel1: TPanel;
    Panel2: TPanel;
    Label1: TLabel;
    DBNumberEditEh1: TDBNumberEditEh;
    Label2: TLabel;
    DBNumberEditEh2: TDBNumberEditEh;
    SpeedButton8: TSpeedButton;
    SpeedButton7: TSpeedButton;
    SpeedButton1: TSpeedButton;
    SpeedButton2: TSpeedButton;
    SpeedButton3: TSpeedButton;
    SpeedButton5: TSpeedButton;
    SpeedButton6: TSpeedButton;
    SpeedButton4: TSpeedButton;
    DBGridEh1: TDBGridEh;
    PrintDBGridEh1: TPrintDBGridEh;
    SpeedButton9: TSpeedButton;
    SpeedButton10: TSpeedButton;
    SpeedButton11: TSpeedButton;
    SpeedButton12: TSpeedButton;
    SpeedButton13: TSpeedButton;
    Panel3: TPanel;
    CheckBox1: TCheckBox;
    CheckBox2: TCheckBox;
    Label3: TLabel;
    CheckBox3: TCheckBox;
    CheckBox4: TCheckBox;
    CheckBox5: TCheckBox;
    CheckBox6: TCheckBox;
    CheckBox7: TCheckBox;
    CheckBox8: TCheckBox;
    CheckBox9: TCheckBox;
    CheckBox10: TCheckBox;
    procedure SpeedButton6Click(Sender: TObject);
    procedure DBNumberEditEh1Change(Sender: TObject);
    procedure DBNumberEditEh2Change(Sender: TObject);
    procedure DBGridEh1CellClick(Column: TColumnEh);
    procedure DBGridEh1DrawDataCell(Sender: TObject; const Rect: TRect;
      Field: TField; State: TGridDrawState);
    procedure DBGridEh1KeyUp(Sender: TObject; var Key: Word;
      Shift: TShiftState);
    procedure DBGridEh1MouseMove(Sender: TObject; Shift: TShiftState; X,
      Y: Integer);
    procedure SpeedButton2Click(Sender: TObject);
    procedure SpeedButton8Click(Sender: TObject);
    procedure SpeedButton7Click(Sender: TObject);
    procedure SpeedButton4Click(Sender: TObject);
    procedure SpeedButton10Click(Sender: TObject);
    procedure SpeedButton11Click(Sender: TObject);
    procedure SpeedButton1Click(Sender: TObject);
    procedure SpeedButton3Click(Sender: TObject);
    procedure SpeedButton5Click(Sender: TObject);
    procedure SpeedButton9Click(Sender: TObject);
    procedure SpeedButton13Click(Sender: TObject);
    procedure SpeedButton12Click(Sender: TObject);
    procedure CheckBox1Click(Sender: TObject);
    procedure CheckBox2Click(Sender: TObject);
    procedure CheckBox3Click(Sender: TObject);
    procedure CheckBox4Click(Sender: TObject);
    procedure CheckBox5Click(Sender: TObject);
    procedure CheckBox9Click(Sender: TObject);
    procedure CheckBox6Click(Sender: TObject);
    procedure CheckBox7Click(Sender: TObject);
    procedure CheckBox10Click(Sender: TObject);
    procedure CheckBox8Click(Sender: TObject);
    procedure FormShow(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
    procedure showyhsdf;
  end;

var
  yhsdf: Tyhsdf;

implementation

uses datafrm,mainfrm,zjyhsdfbfrm,scyhsdffrm,yhsdfhzfrm,zjyhsdffrm,xgyhsdffrm,sdyhchaxunfrm,bbdcfrm,sdfhsenhfrm;
{$R *.dfm}

procedure Tyhsdf.SpeedButton6Click(Sender: TObject);
begin
close;
end;

procedure Tyhsdf.DBNumberEditEh1Change(Sender: TObject);
begin
if yfgldata.qyhsdf.Active then
  yfgldata.qyhsdf.Active:=false;
yfgldata.qyhsdf.Params[0].AsInteger:=yhsdf.DBNumberEditEh1.Value;
yfgldata.qyhsdf.Params[1].AsInteger:=yhsdf.DBNumberEditEh2.Value;
yfgldata.qyhsdf.Active:=true;
yhsdf.showyhsdf;
end;

procedure Tyhsdf.DBNumberEditEh2Change(Sender: TObject);
begin
if yfgldata.qyhsdf.Active then
  yfgldata.qyhsdf.Active:=false;
yfgldata.qyhsdf.Params[0].AsInteger:=yhsdf.DBNumberEditEh1.Value;
yfgldata.qyhsdf.Params[1].AsInteger:=yhsdf.DBNumberEditEh2.Value;
yfgldata.qyhsdf.Active:=true;
yhsdf.showyhsdf;
end;

procedure tyhsdf.showyhsdf;
begin
yfgldata.sdf.Filtered:=false;
yhsdf.SpeedButton8.Enabled:=(yfgldata.qyhsdf.RecordCount>0) and (yfgldata.qyhsdf.RecNo<>1);
yhsdf.SpeedButton7.Enabled:=(yfgldata.qyhsdf.RecordCount>0) and (yfgldata.qyhsdf.RecNo<>yfgldata.qyhsdf.RecordCount);
yhsdf.SpeedButton10.Enabled:=(yfgldata.sdf.RecordCount>0);
yhsdf.SpeedButton11.Enabled:=(yfgldata.sdf.RecordCount>0);
yhsdf.SpeedButton5.Enabled:=(yfgldata.sdf.RecordCount>0);
yhsdf.SpeedButton2.Enabled:=(yfgldata.qyhsdf.RecordCount>0);
yhsdf.SpeedButton3.Enabled:=(yfgldata.qyhsdf.RecordCount>0);
yhsdf.SpeedButton9.Enabled:=(yfgldata.qyhsdf.RecordCount>0);
yhsdf.SpeedButton12.Enabled:=(yfgldata.qyhsdf.RecordCount>0);
yhsdf.SpeedButton13.Enabled:=(yfgldata.qyhsdf.RecordCount>0);
end;

procedure Tyhsdf.DBGridEh1CellClick(Column: TColumnEh);
begin
yhsdf.showyhsdf;
end;

procedure Tyhsdf.DBGridEh1DrawDataCell(Sender: TObject; const Rect: TRect;
  Field: TField; State: TGridDrawState);
begin
yhsdf.showyhsdf;
end;

procedure Tyhsdf.DBGridEh1KeyUp(Sender: TObject; var Key: Word;
  Shift: TShiftState);
begin
yhsdf.showyhsdf;
end;

procedure Tyhsdf.DBGridEh1MouseMove(Sender: TObject; Shift: TShiftState; X,
  Y: Integer);
begin
yhsdf.showyhsdf;
end;

procedure Tyhsdf.SpeedButton2Click(Sender: TObject);
var
i,num:integer;
begin
if messagebox(yhsdf.Handle,'确认要删除本用户吗?','营房工作管理系统',33)=1 then
begin
  num:=yfgldata.qyhsdf.FieldByName('序号').AsInteger;
  yfgldata.sdf.Filter:='年度='+floattostr(yhsdf.DBNumberEditEh1.Value)+' and 月份='+floattostr(yhsdf.DBNumberEditEh2.Value);
  yfgldata.sdf.Filtered:=true;
  yfgldata.sdf.Locate('序号',num,[loCaseInsensitive]);
  yfgldata.sdf.Delete;
  yfgldata.sdf.FindFirst;
  for i:=1 to yfgldata.sdf.RecordCount do
  begin
    yfgldata.sdf.Edit;
    yfgldata.sdf.FieldByName('序号').AsInteger:=i;
    yfgldata.sdf.Post;
    yfgldata.sdf.FindNext;
  end;
  if yfgldata.qyhsdf.Active then
  yfgldata.qyhsdf.Active:=false;
  yfgldata.qyhsdf.Params[0].AsInteger:=yhsdf.DBNumberEditEh1.Value;
  yfgldata.qyhsdf.Params[1].AsInteger:=yhsdf.DBNumberEditEh2.Value;
  yfgldata.qyhsdf.Active:=true;
  yhsdf.showyhsdf;
end;
end;

procedure Tyhsdf.SpeedButton8Click(Sender: TObject);
var
  i0,i1:pointer;
  yname0,yname1,xm:string;
  ml0,ml1,mj0,mj1,sl0,sl1,sb0,sb1,sj0,sj1,dl0,dl1,db0,db1,dj0,dj1,fz0,fz1,hj0,hj1:real;
  num:integer;
begin
  num:=yfgldata.qyhsdf.FieldByName('序号').AsInteger;
  xm:=yfgldata.qyhsdf.FieldByName('姓名').AsString;
  yfgldata.sdf.Filter:='年度='+floattostr(yhsdf.DBNumberEditEh1.Value)+' and 月份='+floattostr(yhsdf.DBNumberEditEh2.Value);
  yfgldata.sdf.Filtered:=true;
  yfgldata.sdf.Locate('序号',num,[loCaseInsensitive]);
  i0:=yfgldata.sdf.GetBookmark;
  yname0:=yfgldata.sdf.FieldByName('姓名').AsString;
  ml0:=yfgldata.sdf.FieldByName('用气量').AsFloat;
  mj0:=yfgldata.sdf.FieldByName('煤气费').AsFloat;
  sl0:=yfgldata.sdf.FieldByName('用水量').AsFloat;
  sb0:=yfgldata.sdf.FieldByName('用水补助').AsFloat;
  sj0:=yfgldata.sdf.FieldByName('水费').AsFloat;
  dl0:=yfgldata.sdf.FieldByName('用电量').AsFloat;
  db0:=yfgldata.sdf.FieldByName('用电补助').AsFloat;
  dj0:=yfgldata.sdf.FieldByName('电费').AsFloat;
  fz0:=yfgldata.sdf.FieldByName('房租').AsFloat;
  hj0:=yfgldata.sdf.FieldByName('合计').AsFloat;
  yfgldata.sdf.FindPrior;
  i1:=yfgldata.sdf.GetBookmark;
  yname1:=yfgldata.sdf.FieldByName('姓名').AsString;
  ml1:=yfgldata.sdf.FieldByName('用气量').AsFloat;
  mj1:=yfgldata.sdf.FieldByName('煤气费').AsFloat;
  sl1:=yfgldata.sdf.FieldByName('用水量').AsFloat;
  sb1:=yfgldata.sdf.FieldByName('用水补助').AsFloat;
  sj1:=yfgldata.sdf.FieldByName('水费').AsFloat;
  dl1:=yfgldata.sdf.FieldByName('用电量').AsFloat;
  db1:=yfgldata.sdf.FieldByName('用电补助').AsFloat;
  dj1:=yfgldata.sdf.FieldByName('电费').AsFloat;
  fz1:=yfgldata.sdf.FieldByName('房租').AsFloat;
  hj1:=yfgldata.sdf.FieldByName('合计').AsFloat;
  yfgldata.sdf.GotoBookmark(i1);
  yfgldata.sdf.Edit;
  yfgldata.sdf.FieldByName('姓名').AsString:=yname0;
  yfgldata.sdf.FieldByName('用气量').Asfloat:=ml0;
  yfgldata.sdf.FieldByName('煤气费').AsFloat:=mj0;
  yfgldata.sdf.FieldByName('用水量').AsFloat:=sl0;
  yfgldata.sdf.FieldByName('用水补助').AsFloat:=sb0;
  yfgldata.sdf.FieldByName('水费').AsFloat:=sj0;
  yfgldata.sdf.FieldByName('用电量').AsFloat:=dl0;
  yfgldata.sdf.FieldByName('用电补助').AsFloat:=db0;
  yfgldata.sdf.FieldByName('电费').AsFloat:=dj0;
  yfgldata.sdf.FieldByName('合计').AsFloat:=hj0;
  yfgldata.sdf.FieldByName('房租').AsFloat:=fz0;
  yfgldata.sdf.Post;
  yfgldata.sdf.GotoBookmark(i0);
  yfgldata.sdf.Edit;
  yfgldata.sdf.FieldByName('姓名').AsString:=yname1;
  yfgldata.sdf.FieldByName('用气量').Asfloat:=ml1;
  yfgldata.sdf.FieldByName('煤气费').AsFloat:=mj1;
  yfgldata.sdf.FieldByName('用水量').AsFloat:=sl1;
  yfgldata.sdf.FieldByName('用水补助').AsFloat:=sb1;
  yfgldata.sdf.FieldByName('水费').AsFloat:=sj1;
  yfgldata.sdf.FieldByName('用电量').AsFloat:=dl1;
  yfgldata.sdf.FieldByName('用电补助').AsFloat:=db1;
  yfgldata.sdf.FieldByName('电费').AsFloat:=dj1;
  yfgldata.sdf.FieldByName('合计').AsFloat:=hj1;
  yfgldata.sdf.FieldByName('房租').AsFloat:=fz1;
  yfgldata.sdf.Post;
  yfgldata.sdf.GotoBookmark(i1);
  if yfgldata.qyhsdf.Active then
  yfgldata.qyhsdf.Active:=false;
  yfgldata.qyhsdf.Params[0].AsInteger:=yhsdf.DBNumberEditEh1.Value;
  yfgldata.qyhsdf.Params[1].AsInteger:=yhsdf.DBNumberEditEh2.Value;
  yfgldata.qyhsdf.Active:=true;
  yfgldata.qyhsdf.Locate('姓名',xm,[loCaseInsensitive]);
  yhsdf.showyhsdf;

⌨️ 快捷键说明

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