zjyhsdfbfrm.pas

来自「本人编写的有关军队营房工作的管理系统」· PAS 代码 · 共 102 行

PAS
102
字号
unit zjyhsdfbfrm;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, ExtCtrls, Gauges, StdCtrls, Mask, DBCtrlsEh, Buttons,db;

type
  Tzjyhsdfb = class(TForm)
    Panel1: TPanel;
    Panel2: TPanel;
    Label1: TLabel;
    DBNumberEditEh1: TDBNumberEditEh;
    Label2: TLabel;
    DBNumberEditEh2: TDBNumberEditEh;
    Label3: TLabel;
    Gauge1: TGauge;
    Label4: TLabel;
    Label5: TLabel;
    SpeedButton1: TSpeedButton;
    SpeedButton2: TSpeedButton;
    procedure FormActivate(Sender: TObject);
    procedure SpeedButton2Click(Sender: TObject);
    procedure SpeedButton1Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  zjyhsdfb: Tzjyhsdfb;

implementation

uses datafrm,yhsdffrm;
{$R *.dfm}

procedure Tzjyhsdfb.FormActivate(Sender: TObject);
var
present:tdatetime;
Year, Month, Day: Word;
begin
present:=now;
decodedate(present,year,month,day);
zjyhsdfb.DBNumberEditEh1.Value:=year;
zjyhsdfb.DBNumberEditEh2.Value:=month;
end;

procedure Tzjyhsdfb.SpeedButton2Click(Sender: TObject);
begin
yfgldata.sdf.Filtered:=false;
close;
end;

procedure Tzjyhsdfb.SpeedButton1Click(Sender: TObject);
var
  i:integer;
begin
yfgldata.sdf.Filter:='年度='+floattostr(zjyhsdfb.DBNumberEditEh1.Value);
yfgldata.sdf.Filtered:=true;
if yfgldata.sdf.Locate('月份',int(zjyhsdfb.DBNumberEditEh2.Value),[loCaseInsensitive]) then
  messagebox(zjyhsdfb.Handle,'该月份的数据已经存在。','营房工作管理系统',16)
else
  begin
  yfgldata.sdyh.First;
  for i:=1 to yfgldata.sdyh.RecordCount do
    begin
    yfgldata.sdf.Append;
    yfgldata.sdf.FieldByName('序号').AsInteger:=yfgldata.sdyh.FieldByName('序号').AsInteger;
    yfgldata.sdf.FieldByName('姓名').AsString:=yfgldata.sdyh.FieldByName('姓名').AsString;
    yfgldata.sdf.FieldByName('用气量').AsFloat:=0.0;
    yfgldata.sdf.FieldByName('煤气费').AsFloat:=0.0;
    yfgldata.sdf.FieldByName('用水量').AsFloat:=0.0;
    yfgldata.sdf.FieldByName('用水补助').AsFloat:=yfgldata.sdyh.FieldByName('用水补助').AsFloat;
    yfgldata.sdf.FieldByName('水费').AsFloat:=0.0;
    yfgldata.sdf.FieldByName('用电量').AsFloat:=0.0;
    yfgldata.sdf.FieldByName('电费').AsFloat:=0.0;
    yfgldata.sdf.FieldByName('用电补助').AsFloat:=yfgldata.sdyh.FieldByName('用电补助').AsFloat;
    yfgldata.sdf.FieldByName('年度').AsVariant:=zjyhsdfb.DBNumberEditEh1.Value;
    yfgldata.sdf.FieldByName('月份').AsVariant:=zjyhsdfb.DBNumberEditEh2.Value;
    yfgldata.sdf.FieldByName('房租').AsFloat:=yfgldata.sdyh.FieldByName('房租').AsFloat;
    yfgldata.sdf.FieldByName('合计').AsFloat:=yfgldata.sdyh.FieldByName('房租').AsFloat;
    yfgldata.sdf.Post;
    zjyhsdfb.Gauge1.Progress:=(yfgldata.sdyh.RecNo*100) div yfgldata.sdyh.RecordCount;
    yfgldata.sdyh.Next;
    end;
  messagebox(zjyhsdfb.Handle,'新用户月收费表已生成完毕。','营房工作管理系统',64);
  close;
  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.sdf.Filtered:=false;
  yhsdf.showyhsdf;
  end;
end;

end.

⌨️ 快捷键说明

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