📄 uaddkhxx.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.分类名称,(case a.删除标志 when 1 then '+''''+'正常'+''''+' when 0 then '+''''+'删除'+''''+' end) 是否删除 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.分类名称,(case a.删除标志 when 1 then '+''''+'正常'+''''+' when 0 then '+''''+'删除'+''''+' end) 是否删除 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 + -