yffdtjfrm.pas

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

PAS
436
字号
unit yffdtjfrm;

interface

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

type
  Tyffdtj = class(TForm)
    Panel1: TPanel;
    Label1: TLabel;
    Label2: TLabel;
    Label3: TLabel;
    Label4: TLabel;
    Label11: TLabel;
    Label12: TLabel;
    Label13: TLabel;
    Label17: TLabel;
    Label18: TLabel;
    Label19: TLabel;
    Label20: TLabel;
    Label21: TLabel;
    Edit2: TEdit;
    Edit3: TEdit;
    Edit10: TEdit;
    Edit11: TEdit;
    GroupBox1: TGroupBox;
    Edit14: TEdit;
    dxLookupTreeView1: TdxLookupTreeView;
    Edit16: TEdit;
    Panel2: TPanel;
    SpeedButton12: TSpeedButton;
    SpeedButton13: TSpeedButton;
    ImageList2: TImageList;
    ComboBox1: TComboBox;
    Label22: TLabel;
    GroupBox2: TGroupBox;
    Label5: TLabel;
    ComboBox2: TComboBox;
    Label6: TLabel;
    Edit4: TEdit;
    Label7: TLabel;
    DBNumberEditEh4: TDBNumberEditEh;
    GroupBox3: TGroupBox;
    Label8: TLabel;
    Label9: TLabel;
    Label10: TLabel;
    ComboBox3: TComboBox;
    Edit5: TEdit;
    DBNumberEditEh5: TDBNumberEditEh;
    DBNumberEditEh6: TDBNumberEditEh;
    GroupBox4: TGroupBox;
    Label23: TLabel;
    DBNumberEditEh7: TDBNumberEditEh;
    Label24: TLabel;
    DBNumberEditEh8: TDBNumberEditEh;
    Label25: TLabel;
    DBNumberEditEh9: TDBNumberEditEh;
    Label26: TLabel;
    DBNumberEditEh10: TDBNumberEditEh;
    Label27: TLabel;
    DBNumberEditEh11: TDBNumberEditEh;
    ComboBox4: TComboBox;
    RadioButton1: TRadioButton;
    RadioButton2: TRadioButton;
    DBNumberEditEh1: TDBNumberEditEh;
    Label14: TLabel;
    DBNumberEditEh2: TDBNumberEditEh;
    ComboBox5: TComboBox;
    CheckBox1: TCheckBox;
    CheckBox2: TCheckBox;
    CheckBox3: TCheckBox;
    CheckBox4: TCheckBox;
    CheckBox5: TCheckBox;
    CheckBox6: TCheckBox;
    Label15: TLabel;
    Edit1: TEdit;
    procedure SpeedButton13Click(Sender: TObject);
    procedure ComboBox2Change(Sender: TObject);
    procedure ComboBox3Change(Sender: TObject);
    procedure dxLookupTreeView1CloseUp(Sender: TObject; Accept: Boolean);
    procedure SpeedButton12Click(Sender: TObject);
  private
    { Private declarations }
  public
    fw:boolean;
    jd0,m10,m20,bd0,cz0,df0,bk0,wt0:longint;
    f1,f2:string;
    { Public declarations }
  end;

var
  yffdtj: Tyffdtj;

implementation
uses datafrm,yffdfrm;
{$R *.dfm}

procedure Tyffdtj.SpeedButton13Click(Sender: TObject);
begin
close;
end;

procedure Tyffdtj.ComboBox2Change(Sender: TObject);
begin
case yffdtj.ComboBox2.ItemIndex of
  0:yffdtj.Edit4.Text:='办公用房';
  1:yffdtj.Edit4.Text:='集体宿舍';
  2:yffdtj.Edit4.Text:='家属宿舍';
  3:yffdtj.Edit4.Text:='公共用房';
  4:yffdtj.Edit4.Text:='库房';
  5:yffdtj.Edit4.Text:='专业用房';
  6:yffdtj.Edit4.Text:='招待用房';
  7:yffdtj.Edit4.Text:='其它用房';
else
  yffdtj.Edit4.Text:='';
end;
end;

procedure Tyffdtj.ComboBox3Change(Sender: TObject);
begin
case yffdtj.ComboBox3.ItemIndex of
  0:yffdtj.Edit5.Text:='办公用房';
  1:yffdtj.Edit5.Text:='集体宿舍';
  2:yffdtj.Edit5.Text:='家属宿舍';
  3:yffdtj.Edit5.Text:='公共用房';
  4:yffdtj.Edit5.Text:='库房';
  5:yffdtj.Edit5.Text:='专业用房';
  6:yffdtj.Edit5.Text:='招待用房';
  7:yffdtj.Edit5.Text:='其它用房';
else
  yffdtj.Edit5.Text:='';
end;
end;

procedure Tyffdtj.dxLookupTreeView1CloseUp(Sender: TObject; Accept: Boolean);
var
  s_value1:string;
begin
if yffdtj.dxLookupTreeView1.Text<>'' then
  begin
    yffdtj.Edit2.Text:=yfgldata.dwqk.Lookup('单位代码',yffdtj.dxLookupTreeView1.Text,'单位名称');
    yffdtj.ComboBox1.Items.Clear;
    yfgldata.Query1.Active:=false;
    yfgldata.Query1.SQL.Clear;
    yfgldata.Query1.SQL.Add('select distinct 坐落号 ');
    yfgldata.Query1.SQL.Add(' from yfgl_yfzl ');
    yfgldata.Query1.SQL.Add(' where 单位代码='''+yffdtj.dxLookupTreeView1.Text+''' ');
    try
      yfgldata.Query1.Active:=true;
    except
      messagebox(yffdtj.handle,'字段值列举出错。','营房工作管理系统',16);
      exit;
    end;
    yfgldata.Query1.First;
    while not yfgldata.Query1.Eof do
    begin
      s_value1:=yfgldata.Query1.fieldbyname('坐落号').AsString;
      yffdtj.ComboBox1.Items.Add(s_value1);
      yfgldata.Query1.Next;
    end;
    yfgldata.Query1.Active:=false;
  end;
end;

procedure Tyffdtj.SpeedButton12Click(Sender: TObject);
var
  jd,m1,m2,bd,cz,df,bk,wt:longint;
begin
if yffdtj.fw then
  if yffdtj.dxLookupTreeView1.Text<>'' then
    begin
      if yffdtj.ComboBox1.Text<>'' then
        begin
          if yffdtj.Edit3.Text<>'' then
            begin                              
              yfgldata.yffd.Filter:='坐落号='''+yffdtj.ComboBox1.Text+'''';
              yfgldata.yffd.Filtered:=true;
              if yfgldata.yffd.Locate('栋号',yffdtj.Edit3.Text,[loCaseInsensitive]) then
                messagebox(yffdtj.handle,'栋号重复。','营房工作管理系统',16)
              else
                begin
                  yfgldata.yffd.Filtered:=false;
                  jd:=yffdtj.DBNumberEditEh6.Value;
                  m1:=yffdtj.DBNumberEditEh4.Value;
                  m2:=yffdtj.DBNumberEditEh5.Value;
                  bd:=yffdtj.DBNumberEditEh7.Value;
                  cz:=yffdtj.DBNumberEditEh8.Value;
                  df:=yffdtj.DBNumberEditEh9.Value;
                  bk:=yffdtj.DBNumberEditEh10.Value;
                  wt:=yffdtj.DBNumberEditEh11.Value;
                  if jd<(m1+m2) then
                    messagebox(yffdtj.handle,'建筑面积不能小于用途面积之和。','营房工作管理系统',16)
                  else
                    if jd<(bd+cz+df+bk+wt) then
                      messagebox(yffdtj.handle,'建筑面积不能小于住用面积之和。','营房工作管理系统',16)
                    else
                      if yffdtj.ComboBox4.Text<>'' then
                        begin
                          yfgldata.yffd.Append;
                          yfgldata.yffd.FieldByName('序号').AsInteger:=yfgldata.yffd.RecordCount+1;
                          yfgldata.yffd.FieldByName('单位代码').AsString:=yffdtj.dxLookupTreeView1.Text;
                          yfgldata.yffd.FieldByName('住用单位').AsString:=yffdtj.Edit2.Text;
                          yfgldata.yffd.FieldByName('坐落号').AsString:=yffdtj.ComboBox1.Text;
                          yfgldata.yffd.FieldByName('栋号').AsString:=yffdtj.Edit3.Text;
                          yfgldata.yffd.FieldByName('建筑面积').AsInteger:=yffdtj.DBNumberEditEh6.Value;
                          yfgldata.yffd.FieldByName('分类一').AsString:=yffdtj.ComboBox2.Text;
                          yfgldata.yffd.FieldByName('名称一').AsString:=yffdtj.Edit4.Text;
                          yfgldata.yffd.FieldByName('面积一').AsInteger:=yffdtj.DBNumberEditEh4.Value;
                          yfgldata.yffd.FieldByName('分类二').AsString:=yffdtj.ComboBox3.Text;
                          yfgldata.yffd.FieldByName('名称二').AsString:=yffdtj.Edit5.Text;
                          yfgldata.yffd.FieldByName('面积二').AsInteger:=yffdtj.DBNumberEditEh5.Value;
                          yfgldata.yffd.FieldByName('部队住用').AsInteger:=yffdtj.DBNumberEditEh7.Value;
                          yfgldata.yffd.FieldByName('出租利用').AsInteger:=yffdtj.DBNumberEditEh8.Value;
                          yfgldata.yffd.FieldByName('地方占用').AsInteger:=yffdtj.DBNumberEditEh9.Value;
                          yfgldata.yffd.FieldByName('部队看管').AsInteger:=yffdtj.DBNumberEditEh10.Value;

⌨️ 快捷键说明

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