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

📄 uaddkhxsyq.pas

📁 已经投入使用的商业级管理系统:液化气管理系统。 附带全部源码
💻 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 + -