⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 ytfp.pas

📁 北京铁路局住房分配系统,数据库为MSSql2000,依次执行crebas4.sql
💻 PAS
字号:
unit Ytfp;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, DB, ExtCtrls, Grids, DBGrids, StdCtrls, Mask, DBCtrls;

type
  TFormYTFP = class(TForm)
    DBGrid1: TDBGrid;
    Panel1: TPanel;
    Button2: TButton;
    Button4: TButton;
    Panel2: TPanel;
    Edit1: TEdit;
    Edit2: TEdit;
    Edit3: TEdit;
    Label1: TLabel;
    Labelbh: TLabel;
    Labelmc: TLabel;
    Label4: TLabel;
    Button5: TButton;
    Label2: TLabel;
    Label3: TLabel;
    Label5: TLabel;
    Label6: TLabel;
    Edit4: TEdit;
    Edit5: TEdit;
    Edit6: TEdit;
    Edit7: TEdit;
    Button3: TButton;
    Button1: TButton;
    Button6: TButton;
    Label7: TLabel;
    ComboBox1: TComboBox;
    Label8: TLabel;
    Edit8: TEdit;
    procedure Button5Click(Sender: TObject);
    procedure FormKeyPress(Sender: TObject; var Key: Char);
    procedure Button4Click(Sender: TObject);
    procedure Button2Click(Sender: TObject);
    procedure Edit1KeyPress(Sender: TObject; var Key: Char);
    procedure Edit2KeyPress(Sender: TObject; var Key: Char);
    procedure Edit3KeyPress(Sender: TObject; var Key: Char);
    procedure Edit4KeyPress(Sender: TObject; var Key: Char);
    procedure Edit5KeyPress(Sender: TObject; var Key: Char);
    procedure Edit6KeyPress(Sender: TObject; var Key: Char);
    procedure Button3Click(Sender: TObject);
    procedure FormCloseQuery(Sender: TObject; var CanClose: Boolean);
    procedure FormCreate(Sender: TObject);
    procedure Edit7KeyPress(Sender: TObject; var Key: Char);
    procedure Edit8KeyPress(Sender: TObject; var Key: Char);
    procedure Edit8Exit(Sender: TObject);
    procedure Button6Click(Sender: TObject);
    procedure Button1Click(Sender: TObject);
  private
    { Private declarations }
    nform:smallint;     //0:初始 1:增加 2:保存;
    DWBH:string;
    ZGFP,JLFP,CQFP,LDGB,SHYF,GYFW,JDFW,QTYF:smallint;
  public
    { Public declarations }
  end;

var
  FormYTFP: TFormYTFP;

implementation

uses datamodl,Publicfun;

{$R *.dfm}

procedure TFormYTFP.Button5Click(Sender: TObject);
begin
   close;
end;

procedure TFormYTFP.FormKeyPress(Sender: TObject; var Key: Char);
begin
  if Key = #13 then
    begin
      Key := #0;
      Perform(WM_NEXTDLGCTL,0,0);
    end;
end;

procedure TFormYTFP.Button4Click(Sender: TObject);
var
  HD:Thandle;
begin
  if nform= 0 then exit;
  if nform= 1 then
    if trim(combobox1.Text)<>'' then
      dwbh:= copy(trim(combobox1.Text),1,3)
    else
      begin
        showmessage('请选择分配单位');
        Combobox1.SetFocus;
        exit;
      end
  else
    if nform=2 then
      dwbh:= datamodule1.ADOQryYTFP.fieldbyname('dwbh').AsString;
  if trim(edit1.Text)='' then
    zgfp:=0
  else
    zgfp:= strtoint(trim(edit1.Text));
  if trim(edit2.Text)='' then
    jlfp:=0
  else
    jlfp:= strtoint(trim(edit2.Text));
  if trim(edit3.Text)='' then
    cqfp:=0
  else
    cqfp:= strtoint(trim(edit3.Text));
  if trim(edit4.Text)='' then
    ldgb:=0
  else
    ldgb:= strtoint(trim(edit4.Text));
  if trim(edit5.Text)='' then
    shyf:=0
  else
    shyf:= strtoint(trim(edit5.Text));
  if trim(edit6.Text)='' then
    gyfw:=0
  else
    gyfw:= strtoint(trim(edit6.Text));
  if trim(edit7.Text)='' then
    jdfw:=0
  else
    jdfw:= strtoint(trim(edit7.Text));
  if trim(edit8.Text)='' then
    qtyf:=0
  else
    qtyf:= strtoint(trim(edit8.Text));

  HD:= formytfp.Handle;
  if datamodule1.ADOSP.Active= true then
    datamodule1.ADOSP.Close;
  datamodule1.ADOSP.ProcedureName:='P_YTFPB_Save;1';
  if nform= 1 then
     if datamodule1.ifexist('ytfpb','dwbh',DWBH)= true then
       if messagebox(HD,pchar('数据库中已存在编号为<'+DWBH+'>的纪录,是否更新?'),pchar('信息提示'),MB_YESNO)=IDYES then
         if YtfpbAdd(dwbh,zgfp,jlfp,cqfp,ldgb,shyf,gyfw,jdfw,qtyf)=0  then
           showmessage('更新成功!')
         else
           begin
             showmessage('更新失败!');
             exit;
           end
       else
           exit
     else
       if YtfpbAdd(dwbh,zgfp,jlfp,cqfp,ldgb,shyf,gyfw,jdfw,qtyf)=0  then
         showmessage('保存成功!')
       else
         begin
           showmessage('保存失败!');
           exit;
         end
  else
    if nform= 2 then
      if YtfpbAdd(dwbh,zgfp,jlfp,cqfp,ldgb,shyf,gyfw,jdfw,qtyf)=0  then
        showmessage('更新成功!')
      else
        begin
          showmessage('更新失败!');
          exit;
        end;
  //datamodule1.ChangeTab('xqxxb');
  datamodule1.ADOQryYTFP.Requery();
 { dbgrid1.Columns[1].Title.caption:='分配途径';
  dbgrid1.Columns[3].Title.caption:='房屋用途';
  dbgrid1.Columns[4].Title.caption:='一居室';
  dbgrid1.Columns[5].Title.caption:='二居室';
  dbgrid1.Columns[6].Title.caption:='三居室';
  dbgrid1.Columns[7].Title.caption:='复式二居';
  dbgrid1.Columns[8].Title.caption:='复式三居';
  dbgrid1.Columns[9].Title.caption:='其他';
  dbgrid1.Columns[10].Title.caption:='合计';      }
  nform:=0;
  button1.Enabled:=true;
  button1.SetFocus;
  button2.Enabled:=true;
  button3.Enabled:=true;
  button4.Enabled:=false;
  edit1.Text:='';
  edit2.Text:='';
  edit3.Text:='';
  edit4.Text:='';
  edit5.Text:='';
  edit6.Text:='';
  edit7.Text:='';
  edit8.Text:='';
  dbgrid1.Enabled:=true;
  edit1.Enabled:=false;
  edit2.Enabled:=false;
  edit3.Enabled:=false;
  edit4.Enabled:=false;
  edit5.Enabled:=false;
  edit6.Enabled:=false;
  edit7.Enabled:=false;
  edit8.Enabled:=false;

end;

procedure TFormYTFP.Button2Click(Sender: TObject);
begin
   nform:=2;
   with datamodule1.ADOQryYTFP do
   begin
     combobox1.ItemIndex:=combobox1.Items.IndexOf(fieldbyname('dwbh').AsString+' | '
                                                 +fieldbyname('dwmc').AsString);
     edit1.Text:= fieldbyname('zgfp').AsString;
     edit2.Text:= fieldbyname('jlfp').AsString;
     edit3.Text:= fieldbyname('cqfp').AsString;
     edit4.Text:= fieldbyname('ldgb').AsString;
     edit5.Text:= fieldbyname('shyf').AsString;
     edit6.Text:= fieldbyname('gyfw').AsString;
     edit7.Text:= fieldbyname('jdfw').AsString;
     edit8.Text:= fieldbyname('qtyf').AsString;
   end;
   edit1.Enabled:=true;
   edit2.Enabled:=true;
   edit3.Enabled:=true;
   edit4.Enabled:=true;
   edit5.Enabled:=true;
   edit6.Enabled:=true;
   edit7.Enabled:=true;
   edit8.Enabled:=true;
   dbgrid1.Enabled:=false;
   button1.Enabled:=false;
   button2.Enabled:=false;
   button4.Enabled:=true;
end;

procedure TFormYTFP.Edit1KeyPress(Sender: TObject; var Key: Char);
begin
  if not(key in ['0'..'9']) and (key <> #8) then
    key:= char(0);
end;

procedure TFormYTFP.Edit2KeyPress(Sender: TObject; var Key: Char);
begin
  if not(key in ['0'..'9']) and (key <> #8) then
    key:= char(0);
end;

procedure TFormYTFP.Edit3KeyPress(Sender: TObject; var Key: Char);
begin
  if not(key in ['0'..'9']) and (key <> #8) then
    key:= char(0);
end;

procedure TFormYTFP.Edit4KeyPress(Sender: TObject; var Key: Char);
begin
  if not(key in ['0'..'9']) and (key <> #8) then
    key:= char(0);
end;

procedure TFormYTFP.Edit5KeyPress(Sender: TObject; var Key: Char);
begin
  if not(key in ['0'..'9']) and (key <> #8) then
    key:= char(0);
end;

procedure TFormYTFP.Edit6KeyPress(Sender: TObject; var Key: Char);
begin
  if not(key in ['0'..'9']) and (key <> #8) then
    key:= char(0);
end;

procedure TFormYTFP.Button3Click(Sender: TObject);
var
  CompA,CompB,nret:smallint;
begin
  if datamodule1.ADOSP.Active= true then
    datamodule1.ADOSP.Close;
  datamodule1.ADOSP.ProcedureName:='P_TestYTB;1';
  YTBTest(CompA,CompB,nret);
  case nret of
    1: showmessage('职工分配合计- '+inttostr(CompB)+' -与分局分配数量- '+inttostr(CompA)+' -不符!');
    2: showmessage('奖励分配合计- '+inttostr(CompB)+' -与分局分配数量- '+inttostr(CompA)+' -不符!');
    3: showmessage('拆迁分配合计- '+inttostr(CompB)+' -与分局分配数量- '+inttostr(CompA)+' -不符!');
    4: showmessage('领导分配合计- '+inttostr(CompB)+' -与分局分配数量- '+inttostr(CompA)+' -不符!');
    5: showmessage('社会用房合计- '+inttostr(CompB)+' -与分局分配数量- '+inttostr(CompA)+' -不符!');
    6: showmessage('公用房屋合计- '+inttostr(CompB)+' -与分局分配数量- '+inttostr(CompA)+' -不符!');
    7: showmessage('机动房屋合计- '+inttostr(CompB)+' -与分局分配数量- '+inttostr(CompA)+' -不符!');
    8: showmessage('其他用房合计- '+inttostr(CompB)+' -与分局分配数量- '+inttostr(CompA)+' -不符!');
    else
      showmessage('各用途合计数量与分局分配数量完全相符!');
  end;
end;

procedure TFormYTFP.FormCloseQuery(Sender: TObject; var CanClose: Boolean);
begin
  datamodule1.DataS.DataSet:=datamodule1.ADOTab;
end;

procedure TFormYTFP.FormCreate(Sender: TObject);
begin
  datamodule1.DataS.DataSet:= datamodule1.ADOQryYTFP;
  if datamodule1.ADOQryYTFP.Active= false then
    datamodule1.ADOQryYTFP.Open;
  nform:=0;
  dbgrid1.Columns[0].Title.caption:='单位编号';
  dbgrid1.Columns[1].Title.caption:='分配单位';
  dbgrid1.Columns[2].Title.caption:='职工分配';
  dbgrid1.Columns[3].Title.caption:='奖励分配';
  dbgrid1.Columns[4].Title.caption:='拆迁分配';
  dbgrid1.Columns[5].Title.caption:='领导干部';
  dbgrid1.Columns[6].Title.caption:='社会用房';
  dbgrid1.Columns[7].Title.caption:='公用房屋';
  dbgrid1.Columns[8].Title.caption:='机动房屋';
  dbgrid1.Columns[9].Title.caption:='其他用房';
  edit1.Enabled:=false;
  edit2.Enabled:=false;
  edit3.Enabled:=false;
  edit4.Enabled:=false;
  edit5.Enabled:=false;
  edit6.Enabled:=false;
  edit7.Enabled:=false;
  edit8.Enabled:=false;
  with datamodule1 do
  begin
    if ADOQry.Active= true then ADOQry.close;
    ADOQry.sql.Clear;
    ADOQry.sql.Add('select dwbh,dwmc from dwxxb');
    ADOQry.open;
    ADOQry.first;
    while not ADOQry.Eof  do
    begin
      combobox1.Items.Add(ADOQry.fieldbyname('dwbh').AsString+' | '
                         +ADOQry.fieldbyname('dwmc').AsString);
      ADOQry.Next;
    end;
    ADOQry.Close;
  end;
  button4.Enabled:=false;
end;

procedure TFormYTFP.Edit7KeyPress(Sender: TObject; var Key: Char);
begin
  if not(key in ['0'..'9']) and (key <> #8) then
    key:= char(0);
end;

procedure TFormYTFP.Edit8KeyPress(Sender: TObject; var Key: Char);
begin
  if not(key in ['0'..'9']) and (key <> #8) then
    key:= char(0);
end;

procedure TFormYTFP.Edit8Exit(Sender: TObject);
begin
  button4.SetFocus;
end;

procedure TFormYTFP.Button6Click(Sender: TObject);
var
  dwbh:string;
begin
  //datamodule1.ADOTab.Delete;
  dwbh:= datamodule1.ADOQryYTFP.FieldByName('dwbh').AsString;
  if datamodule1.ADOSP.Active= true then
    datamodule1.ADOSP.Close;
  datamodule1.ADOSP.ProcedureName:='P_YTFPB_del;1';
  if YtfpbDel(dwbh)=0  then
    showmessage('纪录已成功删除!')
  else
    begin
      showmessage('删除失败!');
      exit;
    end;
  datamodule1.ADOQryYTFP.Requery();
end;

procedure TFormYTFP.Button1Click(Sender: TObject);
begin
  edit1.Enabled:=true;
  edit2.Enabled:=true;
  edit3.Enabled:=true;
  edit4.Enabled:=true;
  edit5.Enabled:=true;
  edit6.Enabled:=true;
  edit7.Enabled:=true;
  edit8.Enabled:=true;
  edit1.Text:='';
  edit2.Text:='';
  edit3.Text:='';
  edit4.Text:='';
  edit5.Text:='';
  edit6.Text:='';
  edit7.Text:='';
  edit8.Text:='';

  Combobox1.SetFocus;
  nform:=1;
  button1.Enabled:=false;
  button2.Enabled:=false;
  button4.Enabled:=true;
end;

end.

⌨️ 快捷键说明

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