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

📄 uaddkhxx.~pas

📁 已经投入使用的商业级管理系统:液化气管理系统。 附带全部源码
💻 ~PAS
字号:
unit UADDKHXX;

interface

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

type
  TFADDKHXX = class(TForm)
    GroupBox1: TGroupBox;
    Label1: TLabel;
    Label2: TLabel;
    Label3: TLabel;
    Label4: TLabel;
    Label5: TLabel;
    GroupBox2: TGroupBox;
    Label6: TLabel;
    Label7: TLabel;
    Label8: TLabel;
    Label9: TLabel;
    Label10: TLabel;
    Label11: TLabel;
    GroupBox3: TGroupBox;
    Label12: TLabel;
    Label13: TLabel;
    Label14: TLabel;
    Label15: TLabel;
    Label16: TLabel;
    Label17: TLabel;
    Label18: TLabel;
    DTPKHRQ: TDateTimePicker;
    DTPDQRQ: TDateTimePicker;
    CoBKHFL: TComboBox;
    CoBYHLX: TComboBox;
    CoBKHLX: TComboBox;
    EdtKHBH: TEdit;
    EdtKHMC: TEdit;
    EdtLXDZ: TEdit;
    EdtSSQY: TEdit;
    EdtLXDH: TEdit;
    EdtYJ: TEdit;
    EdtSYQP: TEdit;
    EdtLJJF: TEdit;
    EdtXYGP: TEdit;
    EdtSYJF: TEdit;
    EdtHPGP: TEdit;
    EdtBZ: TEdit;
    BitBtn1: TBitBtn;
    BitBtn2: TBitBtn;
    BitBtn3: TBitBtn;
    Label19: TLabel;
    procedure FormShow(Sender: TObject);
    procedure BitBtn1Click(Sender: TObject);
    procedure BitBtn2Click(Sender: TObject);
    procedure BitBtn3Click(Sender: TObject);
    procedure EdtSYQPExit(Sender: TObject);
    procedure EdtLJJFExit(Sender: TObject);
    procedure EdtSYJFExit(Sender: TObject);
    procedure EdtSYQPKeyPress(Sender: TObject; var Key: Char);
    procedure EdtLJJFKeyPress(Sender: TObject; var Key: Char);
    procedure EdtSYJFKeyPress(Sender: TObject; var Key: Char);
    procedure FormKeyDown(Sender: TObject; var Key: Word;
      Shift: TShiftState);
  private
    procedure addKHXX;
    procedure updateKHXX;
    { Private declarations }
  public
    { Public declarations }
  end;

var
  FADDKHXX: TFADDKHXX;

implementation
  uses U_dm,UsysPub,UsysConst;
{$R *.dfm}

procedure TFADDKHXX.addKHXX;
var
  strKHBH,strKHMC,strLXDZ,strSSYQ,strLXDH,strSYQP,strLJJF,strXYGP,strSYJF,strHPGP,strBZ:string;
  strKHFL,strYHLX,strKHLX:string;
  strSQL,strTmp:string;
  dttKHRQ,dttDQRQ:TDatetime;
  i:integer;
begin
  screen.Cursor:=crhourglass;
  strKHBH:=Trim(EdtKHBH.Text);
  strKHMC:=Trim(EdtKHMC.Text);
  strLXDZ:=Trim(EdtLXDZ.Text);
  strSSYQ:=Trim(EdtSSQY.Text);
  strLXDH:=Trim(EdtLXDH.Text);
  strSYQP:=NontoNumber(EdtSYQP.Text);
  strLJJF:=NontoNumber(EdtLJJF.Text);
  strXYGP:=Trim(EdtXYGP.Text);
  strSYJF:=NontoNumber(EdtSYJF.Text);
  strHPGP:=Trim(EdtHPGP.Text);
  strBZ := Trim(EdtBZ.Text);
  i:=CoBKHFL.ItemIndex;
  if i<>-1 then
  strKHFL:=Trim(TStrkhfl.Strings[i]);
  strYHLX:=Trim(CoBYHLX.Text);
  strKHLX:=Trim(CoBKHLX.Text);
  dttKHRQ:=DTPKHRQ.Date;
  dttDQRQ:=DTPDQRQ.Date;
  strTmp:=GetNewStr(DM.m_clADOQry_Temp);
  if strKHBH='' then
  begin
    Application.MessageBox('用户编号不能为空!',MsgBxCaption,MB_OK+MB_ICONWARNING);
    screen.Cursor:=crdefault;
    EdtKHBH.SetFocus;
    abort;
  end;
  if strKHMC='' then
  begin
    Application.MessageBox('用户名称不能为空!',MsgBxCaption,MB_OK+MB_ICONWARNING);
    screen.Cursor:=crdefault;
    EdtKHMC.SetFocus;
    abort;
  end;
  if strKHFL='' then
  begin
    Application.MessageBox('请选择用户分类!',MsgBxCaption,MB_OK+MB_ICONWARNING);
    screen.Cursor:=crdefault;
    abort;
  end;
  IF strKHLX='' THEN
  begin
    Application.MessageBox('请选择客户分类!',MsgBxCaption,MB_OK+MB_ICONWARNING);
    screen.Cursor:=crdefault;
    abort;
  end;
  strSQL:='select * from JG客户信息 where (客户编号='+''''+strKHBH+''''+')';
  if RunSQL(DM.m_clADOQry_Temp,strSQL,0) then
  begin
    if DM.m_clADOQry_Temp.RecordCount>0 then
    begin
       Application.MessageBox('用户编号重复,请重新输入!',MsgBxCaption,MB_OK+MB_ICONWARNING);
       screen.Cursor:=crdefault;
       EdtKHBH.SetFocus;
       abort;
    end
    else
    begin
      strSQL:='Insert Into JG客户信息 Values('
             +''''+strTmp+''''
             +','+''''+strCZMD+''''
             +','+''''+strKHBH+''''
             +','+''''+strKHMC+''''
             +','+''''+strSSYQ+''''
             +','+''''+strLXDZ+''''
             +','+''''+strLXDH+''''
             +',0'
             +',0'
             +','+strSYQP
             +','+strLJJF
             +','+strSYJF
             +','+''''+DateToStr(dttDQRQ)+''''
             +','+''''+strKHFL+''''
             +','+''''+strYHLX+''''
             +','+''''+strKHLX+''''
             +','+''''+DateToStr(dttKHRQ)+''''
             +','+''''+strXYGP+''''
             +','+''''+strHPGP+''''
             +','+''''+strBZ+''''
             +',1'
             +',1'
             +',Null'
             +')';
       if RunSQL(DM.m_clADOQry_Temp,strSQL,1) then
       begin
          screen.Cursor:=crdefault;
          strSQL:='select a.*,b.分类名称 from JG客户信息 a,JG客户分类 b where (a.门店编号=b.门店编号)and(a.分类编号=b.分类编号)';
          RunSQL(DM.ADOQ_KHXX,strSQL,0);
        end
        else
        begin
          Application.MessageBox('保存数据失败!',MsgBxCaption,MB_OK);
          screen.Cursor:=crdefault;
        end;
     end;
   end;
  DTPKHRQ.DateTime:=NOW();
  DTPDQRQ.DateTime:=NOW();
  CoBKHFL.ItemIndex:=0;
  CoBYHLX.ItemIndex:=0;
  CoBKHLX.ItemIndex:=0;
  EdtKHBH.Text:=BuildTable(dm.m_clADOQry_Temp,'JG客户信息','客户编号','0',6);
  EdtKHMC.Text:='';
  EdtLXDZ.Text:='';
  EdtSSQY.Text:='';
  EdtLXDH.Text:='';
  EdtYJ.Text:='';
  EdtSYQP.Text:='';
  EdtLJJF.Text:='';
  EdtXYGP.Text:='';
  EdtSYJF.Text:='';
  EdtHPGP.Text:='';
  EdtBZ.Text:='';
  EdtKHMC.SetFocus;
end;

procedure TFADDKHXX.updateKHXX;
var
  strKHBH,strKHMC,strLXDZ,strSSYQ,strLXDH,strSYQP,strLJJF,strXYGP,strSYJF,strHPGP,strBZ:string;
  strKHFL,strYHLX,strKHLX:string;
  strSQL,strTmp,strKHID:string;
  dttKHRQ,dttDQRQ:TDatetime;
  i:integer;
begin
  screen.Cursor:=crhourglass;
  strKHBH:=Trim(EdtKHBH.Text);
  strKHMC:=Trim(EdtKHMC.Text);
  strLXDZ:=Trim(EdtLXDZ.Text);
  strSSYQ:=Trim(EdtSSQY.Text);
  strLXDH:=Trim(EdtLXDH.Text);
  strSYQP:=NontoNumber(EdtSYQP.Text);
  strLJJF:=NontoNumber(EdtLJJF.Text);
  strXYGP:=Trim(EdtXYGP.Text);
  strSYJF:=NontoNumber(EdtSYJF.Text);
  strHPGP:=Trim(EdtHPGP.Text);
  strBZ := Trim(EdtBZ.Text);
  i:=CoBKHFL.ItemIndex;
  if i<>-1 then
  strKHFL:=Trim(TStrkhfl.Strings[i]);
  strYHLX:=Trim(CoBYHLX.Text);
  strKHLX:=Trim(CoBKHLX.Text);
  dttKHRQ:=DTPKHRQ.Date;
  dttDQRQ:=DTPDQRQ.Date;
  strTmp:=Trim(dm.ADOQ_KHXX.fieldbyname('门店编号').AsString);
  strKHID:=Trim(dm.ADOQ_KHXX.fieldbyname('客户ID').AsString);
  if strKHBH='' then
  begin
    Application.MessageBox('用户编号不能为空!',MsgBxCaption,MB_OK+MB_ICONWARNING);
    screen.Cursor:=crdefault;
    EdtKHBH.SetFocus;
    abort;
  end;
  if strKHMC='' then
  begin
    Application.MessageBox('用户名称不能为空!',MsgBxCaption,MB_OK+MB_ICONWARNING);
    screen.Cursor:=crdefault;
    EdtKHMC.SetFocus;
    abort;
  end;
  if strKHFL='' then
  begin
    Application.MessageBox('请选择用户分类!',MsgBxCaption,MB_OK+MB_ICONWARNING);
    screen.Cursor:=crdefault;
    abort;
  end;
  IF strKHLX='' THEN
  begin
    Application.MessageBox('请选择客户分类!',MsgBxCaption,MB_OK+MB_ICONWARNING);
    screen.Cursor:=crdefault;
    abort;
  end;
  strSQL:='Update JG客户信息 set 客户名称='
         +''''+strKHMC+''''
         +',区域名称='+''''+strSSYQ+''''
         +',地址='+''''+strLXDZ+''''
         +',电话='+''''+strLXDH+''''
         +',剩余气票='+strSYQP
         +',累计积分='+strLJJF
         +',剩余积分='+strSYJF
         +',订气日期='+''''+DateToStr(dttDQRQ)+''''
         +',分类编号='+''''+strKHFL+''''
         +',用户类型='+''''+strYHLX+''''
         +',客户类型='+''''+strKHLX+''''
         +',开户日期='+''''+DateToStr(dttKHRQ)+''''
         +',钢瓶号='+''''+strXYGP+''''
         +',原钢瓶号='+''''+strHPGP+''''
         +',备注='+''''+strBZ+''''
         +' where (客户ID='+''''+strKHID+''''+')and(门店编号='+''''+strTmp+''''+')';
  if RunSQL(DM.m_clADOQry_Temp,strSQL,1) then
  begin
     strSQL:='Update JG钢瓶信息 set 客户名称='
         +''''+strKHMC+''''
         +' where (客户ID='+''''+strKHID+''''+')';
     RunSQL(DM.m_clADOQry_Temp,strSQL,1);    
     screen.Cursor:=crdefault;
     strSQL:='select a.*,b.分类名称 from JG客户信息 a,JG客户分类 b where (a.门店编号=b.门店编号)and(a.分类编号=b.分类编号)';
     RunSQL(DM.ADOQ_KHXX,strSQL,0);
  end
  else
  begin
     Application.MessageBox('保存数据失败!',MsgBxCaption,MB_OK);
     screen.Cursor:=crdefault;
  end;
end;


procedure TFADDKHXX.FormShow(Sender: TObject);
var
  strSQL:STRING;
begin
  strSQL:='select 分类编号 DaiMa,分类名称 MingCheng from JG客户分类';
  TStrkhfl:=SetCmbxItem(CoBKHFL,DM.m_clADOQry_Temp,strSQL,True);
  strSQL:='select 编号 DaiMa,名称 MingCheng from JG用户类型';
  TStryhlx:=SetCmbxItem(CoBYHLX,DM.m_clADOQry_Temp,strSQL,False);
  strSQL:='select 编号 DaiMa,名称 MingCheng from JG客户类型';
  TStrkhlx:=SetCmbxItem(CobKHLX,DM.m_clADOQry_Temp,strSQL,False);
  DTPKHRQ.DateTime:=NOW();
  DTPDQRQ.DateTime:=NOW();
  IF strCZZT='MODIFY' THEN
  BEGIN
    self.Caption:='修改客户信息';
    DTPKHRQ.DateTime:=dm.ADOQ_KHXX.fieldbyname('开户日期').AsDateTime;
    DTPDQRQ.DateTime:=dm.ADOQ_KHXX.fieldbyname('订气日期').AsDateTime;
    CoBKHFL.ItemIndex:=TStrkhfl.IndexOf(Trim(dm.ADOQ_KHXX.fieldbyname('分类编号').AsString));
    CoBYHLX.Text:=Trim(dm.ADOQ_KHXX.fieldbyname('用户类型').AsString);
    CoBKHLX.Text:=Trim(dm.ADOQ_KHXX.fieldbyname('客户类型').AsString);
    EdtKHBH.Text:=Trim(dm.ADOQ_KHXX.fieldbyname('客户编号').AsString);
    EdtKHMC.Text:=Trim(dm.ADOQ_KHXX.fieldbyname('客户名称').AsString);
    EdtLXDZ.Text:=Trim(dm.ADOQ_KHXX.fieldbyname('地址').AsString);
    EdtSSQY.Text:=Trim(dm.ADOQ_KHXX.fieldbyname('区域名称').AsString);
    EdtLXDH.Text:=Trim(dm.ADOQ_KHXX.fieldbyname('电话').AsString);
    EdtYJ.Text:=Floattostr(dm.ADOQ_KHXX.fieldbyname('押金').AsFloat);
    EdtSYQP.Text:=Floattostr(dm.ADOQ_KHXX.fieldbyname('剩余气票').AsFloat);
    EdtLJJF.Text:=Floattostr(dm.ADOQ_KHXX.fieldbyname('累计积分').AsFloat);
    EdtXYGP.Text:=Trim(dm.ADOQ_KHXX.fieldbyname('钢瓶号').AsString);
    EdtSYJF.Text:=Floattostr(dm.ADOQ_KHXX.fieldbyname('剩余积分').AsFloat);
    EdtHPGP.Text:=Trim(dm.ADOQ_KHXX.fieldbyname('原钢瓶号').AsString);
    EdtBZ.Text:=Trim(dm.ADOQ_KHXX.fieldbyname('备注').AsString);
    EdtKHBH.Color:=clBtnFace;
    EdtKHBH.ReadOnly:=True;
    BitBtn1.Visible:=False;
    EdtKHMC.SetFocus;
  END
  else
  begin
      EdtKHBH.Text:=BuildTable(dm.m_clADOQry_Temp,'JG客户信息','客户编号','0',6);
      EdtKHMC.SetFocus;
  end;
end;

procedure TFADDKHXX.BitBtn1Click(Sender: TObject);
begin
  addKHXX;
end;

procedure TFADDKHXX.BitBtn2Click(Sender: TObject);
begin
  IF strCZZT='MODIFY' THEN
     updateKHXX
  else
    addKHXX;
  self.Close;
end;

procedure TFADDKHXX.BitBtn3Click(Sender: TObject);
begin
  self.Close;
end;

procedure TFADDKHXX.EdtSYQPExit(Sender: TObject);
begin
  if Trim(EdtSYQP.Text)='' then
  begin
    EdtSYQP.Text:='0';
    abort;
  end;
  if TryIsFloat(Trim(EdtSYQP.Text))=False then
  begin
    Application.MessageBox('非法数值!',MsgBxCaption,MB_OK+MB_ICONWARNING);
    EdtSYQP.SetFocus;
  end;
end;

procedure TFADDKHXX.EdtLJJFExit(Sender: TObject);
begin
  if Trim(EdtLJJF.Text)='' then
  begin
    EdtLJJF.Text:='0';
    abort;
  end;
  if TryIsFloat(Trim(EdtLJJF.Text))=False then
  begin
    Application.MessageBox('非法数值!',MsgBxCaption,MB_OK+MB_ICONWARNING);
    EdtLJJF.SetFocus;
  end;
end;

procedure TFADDKHXX.EdtSYJFExit(Sender: TObject);
begin
  if Trim(EdtSYJF.Text)='' then
  begin
    EdtSYJF.Text:='0';
    abort;
  end;
  if TryIsFloat(Trim(EdtSYJF.Text))=False then
  begin
    Application.MessageBox('非法数值!',MsgBxCaption,MB_OK+MB_ICONWARNING);
    EdtSYJF.SetFocus;
  end;
end;

procedure TFADDKHXX.EdtSYQPKeyPress(Sender: TObject; var Key: Char);
begin
  if (not (key in['0'..'9',#8,#9,#14,#23,#24,#25,#26,#27,#28,#30,#13,'.'])) then
    key:=#0;
end;

procedure TFADDKHXX.EdtLJJFKeyPress(Sender: TObject; var Key: Char);
begin
  if (not (key in['0'..'9',#8,#9,#14,#23,#24,#25,#26,#27,#28,#30,#13,'.'])) then
    key:=#0;
end;

procedure TFADDKHXX.EdtSYJFKeyPress(Sender: TObject; var Key: Char);
begin
  if (not (key in['0'..'9',#8,#9,#14,#23,#24,#25,#26,#27,#28,#30,#13,'.'])) then
    key:=#0;
end;

procedure TFADDKHXX.FormKeyDown(Sender: TObject; var Key: Word;
  Shift: TShiftState);
begin
    EnterToChangeFocus(self,key);
end;

END.

⌨️ 快捷键说明

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