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

📄 xtxx.pas

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

interface

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

type
  TFormXtxx = class(TForm)
    DBGrid1: TDBGrid;
    Panel1: TPanel;
    Button1: TButton;
    Button2: TButton;
    Button3: TButton;
    Button4: TButton;
    Panel2: TPanel;
    Edit1: TEdit;
    Edit2: TEdit;
    Edit3: TEdit;
    ComboBox1: TComboBox;
    Label1: TLabel;
    Labelbh: TLabel;
    Labelmc: TLabel;
    Label4: TLabel;
    Button5: TButton;
    procedure ComboBox1Change(Sender: TObject);
    procedure Button5Click(Sender: TObject);
    procedure FormActivate(Sender: TObject);
    procedure Button1Click(Sender: TObject);
    procedure FormKeyPress(Sender: TObject; var Key: Char);
    procedure Button4Click(Sender: TObject);
    procedure Button2Click(Sender: TObject);
    procedure Button3Click(Sender: TObject);
    procedure Edit3Exit(Sender: TObject);
    procedure Edit1KeyPress(Sender: TObject; var Key: Char);
    procedure Edit1Exit(Sender: TObject);
  private
    { Private declarations }
    xtk:string;
    nform:smallint;     //0:初始 1:增加 2:保存;
    procedure tabrefresh;
  public
    { Public declarations }
  end;

var
  FormXtxx: TFormXtxx;

implementation

uses datamodl,Publicfun;

{$R *.dfm}

procedure TFormXtxx.tabrefresh;
begin
  case ComboBox1.ItemIndex of
    0: begin
         xtk:='fptjb';
         datamodule1.ChangeTab(xtk);
         dbgrid1.Columns[0].Title.caption:='分配途径编号';
         dbgrid1.Columns[1].Title.caption:='分配途径';
         labelbh.Caption:='分配途径编号';
         labelmc.Caption:='分配途径';
       end;
    1: begin
         xtk:='fwytb';
         datamodule1.ChangeTab(xtk);
         dbgrid1.Columns[0].Title.caption:='用途编号';
         dbgrid1.Columns[1].Title.caption:='房屋用途';
         labelbh.Caption:='用途编号';
         labelmc.Caption:='房屋用途';
       end;
    2: begin
         xtk:='fwhxb';
         datamodule1.ChangeTab(xtk);
         dbgrid1.Columns[0].Title.caption:='户型编号';
         dbgrid1.Columns[1].Title.caption:='户型名称';
         labelbh.Caption:='户型编号';
         labelmc.Caption:='户型名称';
       end ;
    3: begin
         xtk:='fwcxb';
         datamodule1.ChangeTab(xtk);
         dbgrid1.Columns[0].Title.caption:='朝向编号';
         dbgrid1.Columns[1].Title.caption:='房屋朝向';
         labelbh.Caption:='朝向编号';
         labelmc.Caption:='房屋朝向';
       end ;
    4: begin
         xtk:='fwdjb';
         datamodule1.ChangeTab(xtk);
         dbgrid1.Columns[0].Title.caption:='等级编号';
         dbgrid1.Columns[1].Title.caption:='房屋等级';
         labelbh.Caption:='等级编号';
         labelmc.Caption:='房屋等级';
       end ;
  end;
  dbgrid1.Columns[2].Title.caption:='备注';
end;

procedure TFormXtxx.ComboBox1Change(Sender: TObject);
begin
  tabrefresh;
end;

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

procedure TFormXtxx.FormActivate(Sender: TObject);
begin
  ComboBox1.ItemIndex:=0;
  datamodule1.ChangeTab('fptjb');
  datamodule1.DataS.DataSet:= datamodule1.ADOTab;
  dbgrid1.Columns[0].Title.caption:='分配途径编号';
  dbgrid1.Columns[1].Title.caption:='分配途径';
  dbgrid1.Columns[2].Title.caption:='备注';
  labelbh.Caption:='分配途径编号';
  labelmc.Caption:='分配途径';
  nform:=0;
  xtk:= 'fptjb';
  edit1.Enabled:=false;
  edit2.Enabled:=false;
  edit3.Enabled:=false;
  button4.Enabled:=false;

end;

procedure TFormXtxx.Button1Click(Sender: TObject);
begin
  edit1.Enabled:=true;
  edit2.Enabled:=true;
  edit3.Enabled:=true;
  edit1.Text:='';
  edit2.Text:='';
  edit3.Text:='';
  edit1.SetFocus;
  nform:=1;
  button1.Enabled:=false;
  button2.Enabled:=false;
  button4.Enabled:=true;
end;

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

procedure TFormXtxx.Button4Click(Sender: TObject);
var
  HD:Thandle;
begin
  if trim(edit1.Text)='' then
    begin
      showmessage('编号不能为空!');
      edit1.SetFocus;
      exit;
    end;
  if trim(edit2.Text)='' then
    begin
      showmessage('项目名称不能为空!');
      edit2.SetFocus;
      exit;
    end;

  HD:= formxtxx.Handle;
  if datamodule1.ADOSP.Active= true then
    datamodule1.ADOSP.Close;
  case ComboBox1.ItemIndex of
    0: datamodule1.ADOSP.ProcedureName:='P_SYS0_Save;1';
    1: datamodule1.ADOSP.ProcedureName:='P_SYS1_Save;1';
    2: datamodule1.ADOSP.ProcedureName:='P_SYS2_Save;1';
    3: datamodule1.ADOSP.ProcedureName:='P_SYS3_Save;1';
    4: datamodule1.ADOSP.ProcedureName:='P_SYS4_Save;1';
  end;
  if nform= 0 then exit;
  if nform= 1 then
     if datamodule1.ifexist(xtk,'BH',trim(edit1.Text))= true then
       if messagebox(HD,pchar('数据库中已存在编号为<'+trim(edit1.Text)+'>的纪录,是否更新?'),pchar('信息提示'),MB_YESNO)=IDYES then
         if SysAdd(trim(edit1.Text),trim(edit2.Text),trim(edit3.Text))=0  then
           showmessage('更新成功!')
         else
           begin
             showmessage('更新失败!');
             exit;
           end
       else
           exit
     else
       if SysAdd(trim(edit1.Text),trim(edit2.Text),trim(edit3.Text))=0  then
         showmessage('保存成功!')
       else
         begin
           showmessage('保存失败!');
           exit;
         end
  else
    if nform= 2 then
      if SysAdd(trim(edit1.Text),trim(edit2.Text),trim(edit3.Text))=0  then
        showmessage('更新成功!')
      else
        begin
          showmessage('更新失败!');
          exit;
        end;
  tabrefresh;
  nform:=0;
  button1.Enabled:=true;
  button2.Enabled:=true;
  button4.Enabled:=false;
  edit1.Text:='';
  edit2.Text:='';
  edit3.Text:='';
  dbgrid1.Enabled:=true;
  edit1.Enabled:=false;
  edit2.Enabled:=false;
  edit3.Enabled:=false;
  button1.SetFocus;
end;

procedure TFormXtxx.Button2Click(Sender: TObject);
begin
   nform:=2;
   edit1.Text:= Datamodule1.ADOTab.fieldbyname('BH').AsString;
   edit2.Text:= Datamodule1.ADOTab.fieldbyname('MC').AsString;
   edit3.Text:= Datamodule1.ADOTab.fieldbyname('BZ').AsString;
   edit1.Enabled:=false;
   edit2.Enabled:=true;
   edit3.Enabled:=true;
   dbgrid1.Enabled:=false;
   button2.Enabled:=false;
   button2.Enabled:=false;
   button4.Enabled:=true;
end;

procedure TFormXtxx.Button3Click(Sender: TObject);
begin
  datamodule1.ADOTab.Delete;

end;

procedure TFormXtxx.Edit3Exit(Sender: TObject);
begin
    button4.SetFocus;
end;

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

procedure TFormXtxx.Edit1Exit(Sender: TObject);
begin
  if length(edit1.Text)<>2 then
    begin
      showmessage('请确定编号位数!');
      edit1.SetFocus;
      exit;
    end;
end;

end.

⌨️ 快捷键说明

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