ubxxx_ed.pas

来自「很好的汽车管理系统 很实用的 谢谢合作」· PAS 代码 · 共 451 行

PAS
451
字号


unit UBXXX_ED;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls, ExtCtrls, Buttons, ComCtrls;

type
  TBXXX_ED = class(TForm)
    Panel1: TPanel;
    GroupBox1: TGroupBox;
    Label2: TLabel;
    Label4: TLabel;
    Label11: TLabel;
    Label12: TLabel;
    Label13: TLabel;
    Label14: TLabel;
    Label15: TLabel;
    Label16: TLabel;
    Label17: TLabel;
    Edit1: TEdit;
    Edit2: TEdit;
    Panel2: TPanel;
    SpeedButton1: TSpeedButton;
    SpeedButton2: TSpeedButton;
    SpeedButton3: TSpeedButton;
    SpeedButton4: TSpeedButton;
    SpeedButton5: TSpeedButton;
    Memo1: TMemo;
    Edit3: TEdit;
    Edit4: TEdit;
    Edit5: TEdit;
    Edit6: TEdit;
    Edit7: TEdit;
    Edit8: TEdit;
    Edit9: TEdit;
    Label1: TLabel;
    procedure SpeedButton5Click(Sender: TObject);
    procedure FormCreate(Sender: TObject);
    procedure FormShow(Sender: TObject);
    procedure SpeedButton1Click(Sender: TObject);
    procedure SpeedButton2Click(Sender: TObject);
    procedure SpeedButton3Click(Sender: TObject);
    procedure SpeedButton4Click(Sender: TObject);
    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 Edit7KeyPress(Sender: TObject; var Key: Char);
    procedure Edit8KeyPress(Sender: TObject; var Key: Char);
    procedure Edit9KeyPress(Sender: TObject; var Key: Char);
    procedure Edit2Change(Sender: TObject);
    procedure Edit3Change(Sender: TObject);
    procedure Edit4Change(Sender: TObject);
    procedure Edit5Change(Sender: TObject);
    procedure Edit6Change(Sender: TObject);
    procedure Edit7Change(Sender: TObject);
    procedure Edit8Change(Sender: TObject);
    procedure Edit9Change(Sender: TObject);
    procedure Memo1Change(Sender: TObject);
  private
    { Private declarations }
  public
    procedure BH;
    function cansave:boolean;
    procedure GetAll;
    procedure Posting;
    procedure ENA;
    procedure DIS;
    procedure CLS;
    procedure tr;
    { Public declarations }
  end;

var
  BXXX_ED: TBXXX_ED;

implementation

uses UMain, UDM, UBXXX;

{$R *.dfm}
procedure TBXXX_ED.tr;
var
i:integer;
begin
  for i:=ComponentCount - 1 downto 0 do
    if(Components[i] is TEdit) then
    TEdit(Components[i]).Text:=trim(TEdit(Components[i]).Text);
end;
procedure TBXXX_ED.BH;
var
  s,m:string;
begin
  with dm.QBXXX do
  begin
    Close;
    SQL.Clear;
    SQL.Add('Select max(bh) as 公司编号 From BXXX');
    Open;
  end;
  if dm.ADODSBXXX.FieldByName('bh').Value=null then
    s:=s+'1'
  else
  begin
    dm.ADODSBXXX.Last;
    m:=Trim(DM.ADODSBXXX.Fieldbyname('bh').Value);
    s:=inttostr(strtoint(m)+1);
  end;
  edit1.Text:=s;
end;
function TBXXX_ED.CanSave: Boolean;
begin
  if (Edit1.Text='') then
  begin
   Result:=False;
   Application.MessageBox('编号不能为空!','提示信息',0+MB_ICONINFORMATION);
   exit;
  end;
  if (Edit2.Text='') then
  begin
   Result:=False;
   Application.MessageBox('公司名称不能为空!','提示信息',0+MB_ICONINFORMATION);
   exit;
   Edit2.SetFocus;
  end;
  if (Edit3.Text='') then
  begin
    Result:=False;
    Application.MessageBox('公司地址不能为空!','提示信息',0+MB_ICONINFORMATION);
    exit;
    Edit3.SetFocus;
  end;
  if (Edit4.Text='') then
  begin
    Result:=False;
    Application.MessageBox('公司电话不能为空!','提示信息',0+MB_ICONINFORMATION);
    exit;
    Edit4.SetFocus;
  end;
  if (Edit6.Text='') then
  begin
    Result:=False;
    Application.MessageBox('联系人不能为空!','提示信息',0+MB_ICONINFORMATION);
    exit;
    Edit6.SetFocus;
  end;
  if (Edit9.Text='') then
  begin
    Result:=False;
    Application.MessageBox('经办人不能为空!','提示信息',0+MB_ICONINFORMATION);
    exit;
    Edit9.SetFocus;
  end;
end;
procedure TBXXX_ED.GetAll;
begin
    Edit1.Text:=DM.ADODSBXXX.FieldByName('bh').AsString;
    Edit2.Text:=DM.ADODSBXXX.FieldByName('gsmc').AsString;
    Edit3.Text:=DM.ADODSBXXX.FieldByName('gsdz').AsString;
    Edit4.Text:=DM.ADODSBXXX.FieldByName('gsdh').AsString;
    Edit5.Text:=DM.ADODSBXXX.FieldByName('cz').AsString;
    Edit6.Text:=DM.ADODSBXXX.FieldByName('lxr').AsString;
    Edit7.Text:=DM.ADODSBXXX.FieldByName('yb').AsString;
    Edit8.Text:=DM.ADODSBXXX.FieldByName('dzyj').AsString;
    Edit9.Text:=DM.ADODSBXXX.FieldByName('jbr').AsString;
    memo1.Text:=DM.ADODSBXXX.FieldByName('bz').AsString;
end;
procedure TBXXX_ED.Posting;
begin
  if ActionCD='N' then
  BEGIN
  with DM.QBXXX do
  begin
    Close;
    SQL.Clear;
    SQL.Add('INSERT INTO BXXX(gsmc,gsdz,gsdh,cz,lxr,yb,dzyj,jbr,bz,bh)');
    SQL.Add('Values(:公司名称,:公司地址,:公司电话,:传真,:联系人,:邮编,:电子邮件,:经办人,:备注,:编号)');
    Parameters.Items[0].Value:=Edit2.Text;
    Parameters.Items[1].Value:=Edit3.Text;
    Parameters.Items[2].Value:=Edit4.Text;
    Parameters.Items[3].Value:=Edit5.Text;
    Parameters.Items[4].Value:=Edit6.Text;
    Parameters.Items[5].Value:=Edit7.Text;
    Parameters.Items[6].Value:=Edit8.Text;
    Parameters.Items[7].Value:=Edit9.Text;
    Parameters.Items[8].Value:=Memo1.Text;
    Parameters.Items[9].Value:=Edit1.Text;
    Prepared:=True;
    ExecSQL;
  end;
  END else
  if ActionCD='M' then
  begin
    With DM.QBXXX DO
    begin
      Close;
      SQL.Clear;
      SQL.Add('update BXXX Set gsmc=:公司名称,');
      SQL.Add('gsdz=:公司地址,gsdh=:公司电话,');
      SQL.Add('cz=:传真,lxr=:联系人,yb=:邮编,');
      SQL.Add('dzyj=:电子邮件,jbr=:经办人,bz=:备注 Where bh=:编号');
      Parameters.Items[0].Value:=Edit2.Text;
      Parameters.Items[1].Value:=Edit3.Text;
      Parameters.Items[2].Value:=Edit4.Text;
      Parameters.Items[3].Value:=Edit5.Text;
      Parameters.Items[4].Value:=Edit6.Text;
      Parameters.Items[5].Value:=Edit7.Text;
      Parameters.Items[6].Value:=Edit8.Text;
      Parameters.Items[7].Value:=Edit9.Text;
      Parameters.Items[8].Value:=Memo1.Text;
      Parameters.Items[9].Value:=DM.ADODSBXXX.FieldByName('bh').AsString;
      Prepared:=true;
      ExecSQL;
    end;
  end;
end;
procedure TBXXX_ED.ENA;
var
  i:integer;
begin
  for i:=ComponentCount-1 downto 0 do
  begin
    if (Components[i] is TEdit) then
    begin
      TEdit(Components[i]).Color:=clWindow;
      TEdit(Components[i]).ReadOnly:=False;
    end;
  end;
  Memo1.Color := clWindow;
  Memo1.ReadOnly := False;
  SpeedButton1.Enabled:=False;
  SpeedButton2.Enabled:=False;
  SpeedButton3.Enabled:=True;
  SpeedButton4.Enabled:=True;
  Panel1.Enabled:=True;
end;
procedure TBXXX_ED.DIS;
var
  i:integer;
begin
  for i:=ComponentCount-1 downto 0 do
  begin
    if (Components[i] is Tedit) then
    begin
      TEdit(Components[i]).Color:=$00d8d8d8;
      TEdit(Components[i]).ReadOnly:=true;
    end;
  end;
  Memo1.Color := $00D8D8D8;
  Memo1.ReadOnly := true;
  SpeedButton1.Enabled:=True;
  SpeedButton2.Enabled:=True;
  SpeedButton3.Enabled:=False;
  SpeedButton4.Enabled:=False;
  Panel1.Enabled:=False;
end;
procedure TBXXX_ED.CLS;
var
  i:integer;
begin
  for i:=ComponentCount-1 downto 0 do
  begin
    if(Components[i] is tedit) then
      TEdit(Components[i]).Clear;
  end;
  Memo1.Clear;
end;
procedure TBXXX_ED.SpeedButton5Click(Sender: TObject);
begin
  DIS;
  ActionCD:='';
  Close;
end;

procedure TBXXX_ED.FormCreate(Sender: TObject);
begin
  with DM.QBXXX do
  begin
    Close;
    SQL.Clear;
    SQL.Add('select * from BXXX');
    Open;
  end;
end;

procedure TBXXX_ED.FormShow(Sender: TObject);
begin
  DIS;
  if ActionCD = 'M' then
    GetAll
  else if ActionCD = 'N' then
  begin
    CLS;
    ENA;
  end;
  dm.ADODSBXXX.Open;
end;


procedure TBXXX_ED.SpeedButton1Click(Sender: TObject);
begin
  CLS;
  ENA;
  ActionCD := 'N';
  bh;
  Edit2.SetFocus;
end;

procedure TBXXX_ED.SpeedButton2Click(Sender: TObject);
begin
  ENA;
  ACtionCD := 'M';
end;


procedure TBXXX_ED.SpeedButton3Click(Sender: TObject);
begin
  if (cansave) then
  begin
    Posting;
    DIS;
    DM.ADODSBXXX.Close;
    DM.ADODSBXXX.Open;
    Application.MessageBox('保存成功!','提示!',64);
    actioncd:='';
    BXXX_ED.Close;
  end;
end;

procedure TBXXX_ED.SpeedButton4Click(Sender: TObject);
begin
  DIS;
  ActionCD:='';
  BXXX_ED.GetAll;
end;

procedure TBXXX_ED.Edit2KeyPress(Sender: TObject; var Key: Char);
begin
  if (key in['a'..'z','A'..'Z','0'..'9',#46]) then
    key:=#0;
  if key=#13 then
    Edit3.SetFocus;
end;

procedure TBXXX_ED.Edit3KeyPress(Sender: TObject; var Key: Char);
begin
  if (key in[#46]) then
    key:=#0;
  if key=#13 then
    Edit4.SetFocus;
end;

procedure TBXXX_ED.Edit4KeyPress(Sender: TObject; var Key: Char);
begin
  if  not(key in['0'..'9','-',#13]) then
    key:=#0;
  if key=#13 then
    Edit5.SetFocus;
end;

procedure TBXXX_ED.Edit5KeyPress(Sender: TObject; var Key: Char);
begin
  if NOT (key in['0'..'9','-',#8,#13]) then
    key:=#0;
  if key=#13 then
    Edit6.SetFocus;
end;

procedure TBXXX_ED.Edit6KeyPress(Sender: TObject; var Key: Char);
begin
  if (key in['a'..'z','A'..'Z','0'..'9',#46]) then
    key:=#0;
  if key=#13 then
    Edit7.SetFocus;
end;

procedure TBXXX_ED.Edit7KeyPress(Sender: TObject; var Key: Char);
begin
  if NOT (key in['0'..'9',#8,#13]) then
    key:=#0;
  if key=#13 then
    Edit8.SetFocus;
end;

procedure TBXXX_ED.Edit8KeyPress(Sender: TObject; var Key: Char);
begin
  if key=#13 then
    Edit9.SetFocus;
end;

procedure TBXXX_ED.Edit9KeyPress(Sender: TObject; var Key: Char);
begin
  if (key in['a'..'z','A'..'Z','0'..'9',#46]) then
    key:=#0;
  if key=#13 then
    Memo1.SetFocus;
end;

procedure TBXXX_ED.Edit2Change(Sender: TObject);
begin
tr
end;

procedure TBXXX_ED.Edit3Change(Sender: TObject);
begin
tr
end;

procedure TBXXX_ED.Edit4Change(Sender: TObject);
begin
tr
end;

procedure TBXXX_ED.Edit5Change(Sender: TObject);
begin
tr
end;

procedure TBXXX_ED.Edit6Change(Sender: TObject);
begin
tr
end;

procedure TBXXX_ED.Edit7Change(Sender: TObject);
begin
tr
end;

procedure TBXXX_ED.Edit8Change(Sender: TObject);
begin
tr
end;

procedure TBXXX_ED.Edit9Change(Sender: TObject);
begin
tr
end;

procedure TBXXX_ED.Memo1Change(Sender: TObject);
begin
tr
end;

end.

⌨️ 快捷键说明

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