📄 uaddkhxsyq.pas
字号:
unit UADDKHXSYQ;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, Buttons, ExtCtrls;
type
TFADDKHXSYQ = class(TForm)
Label1: TLabel;
Label2: TLabel;
Label3: TLabel;
Label4: TLabel;
EdtKEMC: TEdit;
CobPMGG: TComboBox;
EdtSL: TEdit;
EdtDW: TEdit;
Panel1: TPanel;
BitBtn1: TBitBtn;
BitBtn2: TBitBtn;
BitBtn3: TBitBtn;
procedure FormShow(Sender: TObject);
procedure BitBtn1Click(Sender: TObject);
procedure BitBtn2Click(Sender: TObject);
procedure BitBtn3Click(Sender: TObject);
procedure EdtSLExit(Sender: TObject);
procedure EdtSLKeyPress(Sender: TObject; var Key: Char);
procedure CobPMGGExit(Sender: TObject);
procedure CobPMGGChange(Sender: TObject);
procedure FormKeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
private
procedure updateKHXSYQ;
procedure addKHXSYQ;
procedure PMGGOnchange;
{ Private declarations }
public
{ Public declarations }
end;
var
FADDKHXSYQ: TFADDKHXSYQ;
implementation
uses U_dm,UsysPub,UsysConst;
{$R *.dfm}
procedure TFADDKHXSYQ.addKHXSYQ;
var
strkhid,strpmgg,strspmc,strsl,strdw:string;
strSQL:string;
i:integer;
begin
screen.Cursor:=crhourglass;
PMGGOnchange;
strkhid:=Trim(dm.ADOQ_KHXX.fieldbyname('客户ID').AsString);
i:=CobPMGG.ItemIndex;
if i<>-1 then
strpmgg:=Trim(TStrSp.Strings[i]);
strspmc:=Trim(CobPMGG.Text);
strsl:=NontoNumber(Trim(EdtSL.Text));
strdw:=Trim(EdtDW.Text);
IF strpmgg='' THEN
begin
Application.MessageBox('请选择商品!',MsgBxCaption,MB_OK+MB_ICONWARNING);
screen.Cursor:=crdefault;
abort;
end;
strSQL:='select * from JG客户缺省用气 where (客户ID='+''''+strkhid+''''+')and(商品编号='+''''+strpmgg+''''+')';
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;
abort;
end
else
begin
strSQL:='Insert Into JG客户缺省用气 Values('
+''''+strCZMD+''''
+','+''''+strkhid+''''
+','+''''+strpmgg+''''
+','+''''+strspmc+''''
+','+''''+strdw+''''
+','+strsl+')';
if RunSQL(DM.m_clADOQry_Temp,strSQL,1) then
begin
screen.Cursor:=crdefault;
strSQL:='select * from JG客户缺省用气 WHERE 客户ID='+''''+strkhid+'''';
RunSQL(DM.ADOQ_KHXSYQ,strSQL,0);
end
else
begin
Application.MessageBox('保存数据失败!',MsgBxCaption,MB_OK);
screen.Cursor:=crdefault;
end;
end;
end;
CobPMGG.ItemIndex:=0;
EdtSL.Text:='';
EdtDW.Text:='';
end;
procedure TFADDKHXSYQ.updateKHXSYQ;
var
strkhid,strpmgg,strspmc,strsl,strdw:string;
strSQL,strTmp,strMD:string;
i:integer;
begin
screen.Cursor:=crhourglass;
PMGGOnchange;
strMD:=Trim(dm.ADOQ_KHXSYQ.fieldbyname('门店编号').AsString);
strkhid:=Trim(dm.ADOQ_KHXX.fieldbyname('客户ID').AsString);
strTmp:=Trim(dm.ADOQ_KHXSYQ.fieldbyname('商品编号').AsString);
i:=CobPMGG.ItemIndex;
if i<>-1 then
strpmgg:=Trim(TStrSp.Strings[i]);
strspmc:=Trim(CobPMGG.Text);
strsl:=NontoNumber(Trim(EdtSL.Text));
strdw:=Trim(EdtDW.Text);
IF strpmgg='' THEN
begin
Application.MessageBox('请选择商品!',MsgBxCaption,MB_OK+MB_ICONWARNING);
screen.Cursor:=crdefault;
abort;
end;
if strTmp<>strpmgg then
begin
strSQL:='select * from JG客户缺省用气 where (客户ID='+''''+strkhid+''''+')and(商品编号='+''''+strpmgg+''''+')and(门店编号='+''''+strMD+''''+')';
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;
abort;
end;
end;
end;
strSQL:='update JG客户缺省用气 Set 商品编号='
+''''+strpmgg+''''+',品名规格='+''''+strspmc+''''
+',单位='+''''+strdw+''''+',数量='+strsl
+' where (门店编号='+''''+strMD+''''+')and(客户ID='+''''+strkhid+''''+')and(商品编号='+''''+strTmp+''''+')';
if RunSQL(DM.m_clADOQry_Temp,strSQL,1) then
begin
strSQL:='select * from JG客户缺省用气 WHERE 客户ID='+''''+strkhid+'''';
RunSQL(DM.ADOQ_KHXSYQ,strSQL,0);
screen.Cursor:=crdefault;
end
else
begin
Application.MessageBox('保存数据失败!',MsgBxCaption,MB_OK);
screen.Cursor:=crdefault;
end;
end;
procedure TFADDKHXSYQ.FormShow(Sender: TObject);
var
strSQL:string;
begin
strSQL:='select 商品编号 DaiMa,品名规格 MingCheng from JG商品资料 where 回瓶=1';
TStrSp:=SetCmbxItem(CobPMGG,DM.m_clADOQry_Temp,strSQL,True);
EdtKEMC.Text:=Trim(dm.ADOQ_KHXX.fieldbyname('客户名称').AsString);
IF strCZZT='MODIFY' THEN
BEGIN
self.Caption:='修改客户缺省用气';
CobPMGG.ItemIndex:=TStrSp.IndexOf(Trim(dm.ADOQ_KHXSYQ.fieldbyname('商品编号').AsString));
Edtsl.Text:=Floattostr(dm.ADOQ_KHXSYQ.fieldbyname('数量').AsFloat);
EdtDW.Text:=Trim(dm.ADOQ_KHXSYQ.fieldbyname('单位').AsString);
BitBtn1.Visible:=False;
END
else
begin
end;
EdtSL.SetFocus;
end;
procedure TFADDKHXSYQ.BitBtn1Click(Sender: TObject);
begin
addKHXSYQ;
end;
procedure TFADDKHXSYQ.BitBtn2Click(Sender: TObject);
begin
IF strCZZT='MODIFY' THEN
updateKHXSYQ
else
addKHXSYQ;
self.Close;
end;
procedure TFADDKHXSYQ.BitBtn3Click(Sender: TObject);
begin
self.Close;
end;
procedure TFADDKHXSYQ.EdtSLExit(Sender: TObject);
begin
if Trim(EdtSL.Text)='' then
begin
EdtSL.Text:='0';
abort;
end;
if TryIsFloat(Trim(EdtSL.Text))=False then
begin
Application.MessageBox('非法数值!',MsgBxCaption,MB_OK+MB_ICONWARNING);
EdtSL.SetFocus;
end;
end;
procedure TFADDKHXSYQ.EdtSLKeyPress(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 TFADDKHXSYQ.CobPMGGExit(Sender: TObject);
begin
PMGGOnchange;
end;
procedure TFADDKHXSYQ.CobPMGGChange(Sender: TObject);
begin
PMGGOnchange;
end;
procedure TFADDKHXSYQ.PMGGOnchange;
var
strpmgg:string;
strSQL:string;
i:integer;
begin
i:=CobPMGG.ItemIndex;
if i<>-1 then
strpmgg:=Trim(TStrSp.Strings[i]);
strSQL:='select 单位 from JG商品资料 where 商品编号='+''''+strpmgg+'''';
if RunSQL(DM.m_clADOQry_Temp,strSQL,0) then
begin
EdtDW.Text:=Trim(dm.m_clADOQry_Temp.fieldbyname('单位').AsString);
end;
end;
procedure TFADDKHXSYQ.FormKeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
EnterToChangeFocus(self,key);
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -