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

📄 mrkhxx.pas

📁 客户管理系统主要是以客户为基础
💻 PAS
字号:
unit MRKHXX;

interface

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

type
  TFRM_KHXX = class(TForm)
    Panel2: TPanel;
    ToolBar1: TToolBar;
    ToolButton1: TToolButton;
    ToolButton2: TToolButton;
    ToolButton3: TToolButton;
    ToolButton4: TToolButton;
    ToolButton5: TToolButton;
    ToolButton6: TToolButton;
    ToolButton7: TToolButton;
    ToolButton8: TToolButton;
    ToolButton9: TToolButton;
    ToolButton10: TToolButton;
    ToolButton11: TToolButton;
    ToolButton12: TToolButton;
    ToolButton13: TToolButton;
    PageControl1: TPageControl;
    TabSheet1: TTabSheet;
    Panel1: TPanel;
    TabSheet2: TTabSheet;
    GroupBox1: TGroupBox;
    DBGrid1: TDBGrid;
    ImageList1: TImageList;
    DataSource1: TDataSource;
    Label1: TLabel;
    Label2: TLabel;
    Label3: TLabel;
    Label4: TLabel;
    Label5: TLabel;
    Label6: TLabel;
    Label7: TLabel;
    Label8: TLabel;
    Label9: TLabel;
    Label10: TLabel;
    Label11: TLabel;
    Label12: TLabel;
    Label13: TLabel;
    Label14: TLabel;
    Label15: TLabel;
    Label16: TLabel;
    Label17: TLabel;
    Label18: TLabel;
    Label19: TLabel;
    Label20: TLabel;
    Label21: TLabel;
    DBEdit1: TDBEdit;
    DBEdit2: TDBEdit;
    DBComboBox1: TDBComboBox;
    DBComboBox2: TDBComboBox;
    DBComboBox3: TDBComboBox;
    DBComboBox5: TDBComboBox;
    DBEdit4: TDBEdit;
    DBEdit5: TDBEdit;
    DBEdit6: TDBEdit;
    DBEdit7: TDBEdit;
    DBEdit8: TDBEdit;
    DBEdit9: TDBEdit;
    DBEdit10: TDBEdit;
    DBEdit11: TDBEdit;
    DBEdit12: TDBEdit;
    DBEdit13: TDBEdit;
    DBEdit14: TDBEdit;
    DBComboBox7: TDBComboBox;
    DBMemo1: TDBMemo;
    DBEdit3: TDBEdit;
    DBComboBox6: TDBComboBox;
    procedure ToolButton1Click(Sender: TObject);
    procedure ToolButton4Click(Sender: TObject);
    procedure ToolButton5Click(Sender: TObject);
    procedure ToolButton2Click(Sender: TObject);
    procedure ToolButton3Click(Sender: TObject);
    procedure DBEdit11KeyPress(Sender: TObject; var Key: Char);
    procedure DBEdit14KeyPress(Sender: TObject; var Key: Char);
    procedure DBEdit2KeyDown(Sender: TObject; var Key: Word;
      Shift: TShiftState);
    procedure DBComboBox61Change(Sender: TObject);
    procedure DBEdit4KeyDown(Sender: TObject; var Key: Word;
      Shift: TShiftState);
    procedure DBEdit5KeyDown(Sender: TObject; var Key: Word;
      Shift: TShiftState);
    procedure DBEdit6KeyDown(Sender: TObject; var Key: Word;
      Shift: TShiftState);
    procedure DBEdit7KeyDown(Sender: TObject; var Key: Word;
      Shift: TShiftState);
    procedure DBEdit8KeyDown(Sender: TObject; var Key: Word;
      Shift: TShiftState);
    procedure DBEdit9KeyDown(Sender: TObject; var Key: Word;
      Shift: TShiftState);
    procedure DBEdit10KeyDown(Sender: TObject; var Key: Word;
      Shift: TShiftState);
    procedure DBEdit11KeyDown(Sender: TObject; var Key: Word;
      Shift: TShiftState);
    procedure DBEdit12KeyDown(Sender: TObject; var Key: Word;
      Shift: TShiftState);
    procedure DBEdit13KeyDown(Sender: TObject; var Key: Word;
      Shift: TShiftState);
    procedure DBEdit14KeyDown(Sender: TObject; var Key: Word;
      Shift: TShiftState);
    procedure FormShow(Sender: TObject);
    procedure DBComboBox5Change(Sender: TObject);
    procedure ToolButton8Click(Sender: TObject);
    procedure ToolButton9Click(Sender: TObject);
    procedure ToolButton10Click(Sender: TObject);
    procedure ToolButton11Click(Sender: TObject);
    procedure ToolButton13Click(Sender: TObject);
    procedure ToolButton6Click(Sender: TObject);
    procedure FormCreate(Sender: TObject);
    procedure DBComboBox3Change(Sender: TObject);
    procedure DBComboBox6Change(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  FRM_KHXX: TFRM_KHXX;
  tb : integer = 0;
implementation
  USES DATA, MRKHXX_CX;
{$R *.dfm}

procedure TFRM_KHXX.ToolButton1Click(Sender: TObject);
var
   s : string;
   i : integer;
begin
  i := 1;
  ToolButton4.Enabled := true;
  ToolButton5.Enabled := true;
  ToolButton2.Enabled := false;
  ToolButton1.Enabled := false;
  TabSheet1.Enabled := true;

  with database.ADO_KHXX do
  begin
    close;
    sql.Clear;
    sql.Add('select * from tb_khxx order by khxx_id');
    open;
  end;
  s := 'KH'+formatdatetime('yyyymm',now());
  if database.ADO_KHXX.RecordCount<1 then
  begin
    database.ADO_KHXX.Append;
    database.ADO_KHXX.Edit;
    database.ADO_KHXX.FieldByName('khxx_id').AsString := s+'00000'+inttostr(i);
  end
  else
  begin
    database.ADO_KHXX.Last;
    i := strtoint(copy(database.ADO_KHXX.fieldbyname('KHXX_id').AsString,9,6));
    database.ADO_KHXX.Append;
    database.ADO_KHXX.Edit;
    database.ADO_KHXX.FieldByName('khxx_id').AsString := s+formatfloat('000000',i+1);
  end;
  
  dbedit2.SetFocus;

end;

procedure TFRM_KHXX.ToolButton4Click(Sender: TObject);
begin
  try
  if (dbedit1.Text = '')or(dbedit2.Text = '')or(dbedit4.Text = '')
     or(dbedit5.Text = '')or(dbedit13.Text = '')or(dbedit14.Text = '')
     or(dbcombobox1.Text = '')or(dbcombobox2.Text = '')
     or(dbcombobox3.Text = '')or(dbedit3.Text = '')
     or(dbcombobox5.Text = '')or(dbcombobox6.Text = '')
     or(dbcombobox7.Text = '') then
  begin
    showmessage('有些客户信息必须填写。');
  end
  else
  begin
    database.ADO_KHXX.Post;
    TabSheet1.Enabled := false;
    ToolButton4.Enabled := false;
    ToolButton5.Enabled := false;
    ToolButton1.Enabled := true;
    ToolButton2.Enabled := true;
    database.ADO_KHXX.Active := false;
    database.ADO_KHXX.Active := true;
  end;
  except
    showmessage('客户名称不能重复。');
    FRM_KHXX.ToolButton5Click(Sender);
  end;
end;

procedure TFRM_KHXX.ToolButton5Click(Sender: TObject);
begin
  database.ADO_KHXX.Cancel;
  TabSheet1.Enabled := false;
  ToolButton4.Enabled := false;
  ToolButton5.Enabled := false;
  ToolButton1.Enabled := true;
  ToolButton2.Enabled := true;
  tb := 0;
  with database.ADO_KHXX do
  begin
    close;
    sql.Clear;
    sql.Add('select * from tb_khxx');
    open;
  end;
end;

procedure TFRM_KHXX.ToolButton2Click(Sender: TObject);
begin
  ToolButton4.Enabled := true;
  ToolButton5.Enabled := true;
  ToolButton1.Enabled := false;
  TabSheet1.Enabled := true;
  database.ADO_KHXX.Edit;
end;

procedure TFRM_KHXX.ToolButton3Click(Sender: TObject);
begin
  if database.ADO_KHXX.FieldByName('khxx_id').AsString = '' then
  begin
    showmessage('客户信息已为空,无法删除。');
  end
  else
  begin
  if application.MessageBox('真的要删除客户信息吗?','提示',mb_yesno) = idyes then
    database.ADO_KHXX.Delete;
  end;
end;

procedure TFRM_KHXX.DBEdit11KeyPress(Sender: TObject; var Key: Char);
begin
  if not (key in ['0'..'9','-',#8]) then
    key := #0;
end;

procedure TFRM_KHXX.DBEdit14KeyPress(Sender: TObject; var Key: Char);
begin
  if not (key in ['0'..'9','-',#8]) then
    key := #0;
end;

procedure TFRM_KHXX.DBEdit2KeyDown(Sender: TObject; var Key: Word;
  Shift: TShiftState);
begin
  if (key = vk_return)and(dbedit2.Text <> '') then
    dbcombobox1.SetFocus;
end;

procedure TFRM_KHXX.DBComboBox61Change(Sender: TObject);
begin
  if dbcombobox6.Text <> '' then
    dbedit4.SetFocus;
end;

procedure TFRM_KHXX.DBEdit4KeyDown(Sender: TObject; var Key: Word;
  Shift: TShiftState);
begin
  if (key = vk_return)and(dbedit4.Text <> '') then
    dbedit5.SetFocus;
end;

procedure TFRM_KHXX.DBEdit5KeyDown(Sender: TObject; var Key: Word;
  Shift: TShiftState);
begin
  if (key = vk_return)and(dbedit5.Text <> '') then
    dbedit6.SetFocus;
end;

procedure TFRM_KHXX.DBEdit6KeyDown(Sender: TObject; var Key: Word;
  Shift: TShiftState);
begin
  if (key = vk_return)and(dbedit6.Text <> '') then
    dbedit7.SetFocus;
end;

procedure TFRM_KHXX.DBEdit7KeyDown(Sender: TObject; var Key: Word;
  Shift: TShiftState);
begin
  if (key = vk_return)and(dbedit7.Text <> '') then
    dbedit8.SetFocus;
end;

procedure TFRM_KHXX.DBEdit8KeyDown(Sender: TObject; var Key: Word;
  Shift: TShiftState);
begin
  if (key = vk_return)and(dbedit8.Text <> '') then
    dbedit9.SetFocus;
end;

procedure TFRM_KHXX.DBEdit9KeyDown(Sender: TObject; var Key: Word;
  Shift: TShiftState);
begin
  if (key = vk_return)and(dbedit9.Text <> '') then
    dbedit10.SetFocus;
end;

procedure TFRM_KHXX.DBEdit10KeyDown(Sender: TObject; var Key: Word;
  Shift: TShiftState);
begin
  if (key = vk_return)and(dbedit10.Text <> '') then
    dbedit11.SetFocus;
end;

procedure TFRM_KHXX.DBEdit11KeyDown(Sender: TObject; var Key: Word;
  Shift: TShiftState);
begin
  if (key = vk_return)and(dbedit11.Text <> '') then
    dbedit12.SetFocus;
end;

procedure TFRM_KHXX.DBEdit12KeyDown(Sender: TObject; var Key: Word;
  Shift: TShiftState);
begin
  if (key = vk_return)and(dbedit12.Text <> '') then
    dbedit13.SetFocus;
end;

procedure TFRM_KHXX.DBEdit13KeyDown(Sender: TObject; var Key: Word;
  Shift: TShiftState);
begin
  if (key = vk_return)and(dbedit13.Text <> '') then
    dbedit14.SetFocus;
end;

procedure TFRM_KHXX.DBEdit14KeyDown(Sender: TObject; var Key: Word;
  Shift: TShiftState);
begin
  if (key = vk_return)and(dbedit14.Text <> '') then
    dbmemo1.SetFocus;
end;

procedure TFRM_KHXX.FormShow(Sender: TObject);
var
  ini : Tinifile;
  ssp : string;
begin
  ssp := '客户信息';
  ini:=Tinifile.Create('c:\cc.ini');
  ini.WriteString('one',datetimetostr(now),ssp);
  ini.Free;
  dbcombobox1.Clear;
  dbcombobox2.Clear;
  dbcombobox3.Clear;
  dbcombobox5.Clear;
  dbcombobox7.Clear;

  with database.ADO_bb do   //企业性质
  begin
    close;
    sql.Clear;
    sql.Add('select qyxz_xzmc from tb_Client_qyxz');
    open;
  end;
  database.ADO_bb.First;
  while not database.ADO_bb.Eof do
  begin
    dbcombobox1.Items.Add(Trim(database.ADO_bb.fieldbyname('qyxz_xzmc').AsString));
    database.ADO_bb.Next;
  end;

  with database.ADO_bb do   //企业资信
  begin
    close;
    sql.Clear;
    sql.Add('select qyzx_zxjb from tb_Client_qyzx');
    open;
  end;
  database.ADO_bb.First;
  while not database.ADO_bb.Eof do
  begin
    dbcombobox2.Items.Add(Trim(database.ADO_bb.fieldbyname('qyzx_zxjb').AsString));
    database.ADO_bb.Next;
  end;

  with database.ADO_bb do   //客户级别
  begin
    close;
    sql.Clear;
    sql.Add('select khjb_jbmc from tb_Client_khjb');
    open;
  end;
  database.ADO_bb.First;
  while not database.ADO_bb.Eof do
  begin
    dbcombobox3.Items.Add(Trim(database.ADO_bb.fieldbyname('khjb_jbmc').AsString));
    database.ADO_bb.Next;
  end;

  with database.ADO_bb do   //企业类型
  begin
    close;
    sql.Clear;
    sql.Add('select qylx_lxmc from tb_Client_qylx');
    open;
  end;
  database.ADO_bb.First;
  while not database.ADO_bb.Eof do
  begin
    dbcombobox7.Items.Add(Trim(database.ADO_bb.fieldbyname('qylx_lxmc').AsString));
    database.ADO_bb.Next;
  end;

  with database.ADO_bb do    //省份
  begin
    close;
    sql.Clear;
    sql.Add('select distinct csxx_sfmc from tb_Client_csxx');
    open;
  end;
  while not database.ADO_bb.Eof do
  begin
    dbcombobox5.Items.Add(Trim(database.ADO_bb.fieldbyname('csxx_sfmc').AsString));
    database.ADO_bb.Next;
  end;

  with database.ADO_KHXX do
  begin
    close;
    sql.Clear;
    sql.Add('select * from tb_khxx order by khxx_id');
    open;
  end;
end;

procedure TFRM_KHXX.DBComboBox5Change(Sender: TObject);
begin
  dbcombobox6.Clear;
  with database.ADO_bb do   //城市
  begin
    close;
    sql.Clear;
    sql.Add('select csxx_csmc from tb_Client_csxx where csxx_sfmc='+''''+trim(dbcombobox5.Text)+'''');
    open;
  end;
  while not database.ADO_bb.Eof do
  begin
    dbcombobox6.Items.Add(Trim(database.ADO_bb.fieldbyname('csxx_csmc').AsString));
    database.ADO_bb.Next;
  end;
end;

procedure TFRM_KHXX.ToolButton8Click(Sender: TObject);
begin
  database.ADO_KHXX.First;
  ToolButton8.Enabled := false;
  ToolButton9.Enabled := false;
  ToolButton10.Enabled := true;
  ToolButton11.Enabled := true;
end;

procedure TFRM_KHXX.ToolButton9Click(Sender: TObject);
begin
  database.ADO_KHXX.Prior;
  if not database.ADO_KHXX.Bof then
  begin
    ToolButton8.Enabled := true;
    ToolButton9.Enabled := true;
    ToolButton10.Enabled := true;
    ToolButton11.Enabled := true;
  end
  else
  begin
    ToolButton8.Enabled := false;
    ToolButton9.Enabled := false;
    ToolButton10.Enabled := true;
    ToolButton11.Enabled := true;
  end;
end;

procedure TFRM_KHXX.ToolButton10Click(Sender: TObject);
begin
  database.ADO_KHXX.Next;
  if not database.ADO_KHXX.Eof then
  begin
    ToolButton8.Enabled := true;
    ToolButton9.Enabled := true;
    ToolButton10.Enabled := true;
    ToolButton11.Enabled := true;
  end
  else
  begin
    ToolButton8.Enabled := true;
    ToolButton9.Enabled := true;
    ToolButton10.Enabled := false;
    ToolButton11.Enabled := false;
  end;
end;

procedure TFRM_KHXX.ToolButton11Click(Sender: TObject);
begin
  database.ADO_KHXX.Last;
  ToolButton8.Enabled := true;
  ToolButton9.Enabled := true;
  ToolButton10.Enabled := false;
  ToolButton11.Enabled := false;
end;

procedure TFRM_KHXX.ToolButton13Click(Sender: TObject);
begin
  close;
end;

procedure TFRM_KHXX.ToolButton6Click(Sender: TObject);
begin
  ToolButton5.Enabled := true;
  application.CreateForm(TFRM_KHXX_CX, FRM_KHXX_CX);
  FRM_KHXX_CX.ShowModal;
  FRM_KHXX_CX.Free;
end;

procedure TFRM_KHXX.FormCreate(Sender: TObject);
begin
  DATABASE.ADO_KHXX.Active := FALSE;
  DATABASE.ADO_KHXX.Active := TRUE;
end;

procedure TFRM_KHXX.DBComboBox3Change(Sender: TObject);
begin
  if dbcombobox3.Text <> '' then
    dbedit3.SetFocus;
end;

procedure TFRM_KHXX.DBComboBox6Change(Sender: TObject);
begin
  with database.ADO_bb do
  begin
    close;
    sql.Clear;
    sql.Add('select * from tb_client_csxx where csxx_csmc='+''''+dbcombobox6.Text+'''');
    open;
  end;
  if database.ADO_bb.RecordCount>0 then
  begin
    dbedit4.Text := database.ADO_bb.fieldbyname('csxx_yb').AsString;
    dbedit11.Text := database.ADO_bb.fieldbyname('csxx_dhqh').AsString+'-';
    dbedit12.Text := database.ADO_bb.fieldbyname('csxx_dhqh').AsString+'-';
    dbedit5.SetFocus;
  end;
end;

end.

⌨️ 快捷键说明

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