sqedit.pas

来自「一个仓库管理中的子系统--采购子系统」· PAS 代码 · 共 639 行 · 第 1/2 页

PAS
639
字号
    showmessage('您不能在同一张申请表中输入两个产品编号相同的记录,请合并记录!');
    close;
    exit;
    end;
    end;

    with datamodule1 do
    begin
    with publicQuery1 do
    begin
    requestLive:=true;
    try
    close;
    sql.Clear;
    sql.Add('select * From dbo.a_cgsqxb');
    sql.Add('where sqbid='+''''+sqbidstr+''''+' and cpbh='+''''+cpbhstr+'''');
    prepare;
    open;
    edit;
     FieldByname('jldw').asstring:=jldwCombo.Text;
     FieldByname('sbsl').asfloat:=strtoFloat(sbslEdit.Text);
     FieldByname('gjje').asfloat:=strtoFloat(gjjeEdit.Text);
     FieldByname('sccj').asstring:=sccjCombo.Text;
     FieldByname('yyhrw').asstring:=yyhrwEdit.Text;
     FieldByname('sjyq').asstring:=sjyqEdit.Text;
     FieldByname('bz').asstring:=bzEdit.Text;
     FieldByname('cpbh').asstring:=cpbhEdit.Text;
     FieldByname('jhy').asstring:=jhyCombo.Text;
     FieldByname('cpmc').asstring:=cpmcEdit.Text;
     FieldByname('xhgg').asstring:=xhggEdit.Text;
     post;
     except
      on EDBEngineError do
          begin
           messageDlg('您输入的数据可能不符合规范,请检查后重新输入!',mtInformation,[mbOK],0);
           requestlive:=False;
           close;
           exit;
         end;
      end;
     close;
     sql.Clear;
     sql.Add('select * From dbo.a_cgssxb');
     sql.Add('where sqbid='+''''+sqbidstr+''''+' and cpbh='+''''+cpbhstr+'''');
     prepare;
     open;
     if recordcount<>0 then
     begin
     try
     edit;
     FieldByname('jldw').asstring:=jldwCombo.Text;
     FieldByname('sbsl').asstring:=sbslEdit.Text;
     FieldByname('sccj').asstring:=sccjCombo.Text;
     FieldByname('cpbh').asstring:=cpbhEdit.Text;
     FieldByname('cpmc').asstring:=cpmcEdit.Text;
     FieldByname('xhgg').asstring:=xhggEdit.Text;

     FieldBYName('cgslhs').asFloat:=0;
     FieldByname('xcgsl').asfloat:=xcgslstr;
     {if (strtofloat(sbsledit.text)-strTofloat(jhssForm.readkcsl(cpbhedit.Text)))<=0  then
     FieldByName('XCGSL').asFloat:=0
     else
     FieldByName('XCGSL').asFloat:=strtofloat(sbsledit.text)-strTofloat(jhssForm.readkcsl(cpbhedit.Text));
     if (jhyid<>jhyCombo.Text) then
     begin
     FieldByname('jhy').asstring:=jhyCombo.Text;
     FieldByname('tjqr').asstring:='0';
     end;}
     FieldByname('jhy').asstring:=jhyCombo.Text;
     FieldByname('tjqr').asstring:='0';
     post;
     except
      on EDBEngineError do
          begin
           messageDlg('您输入的数据可能不符合规范,请检查后重新输入!',mtInformation,[mbOK],0);
           requestlive:=False;
           close;
           exit;
         end;
      end;
     end;
     try
     close;
     sql.Clear;
     sql.Add('select * From dbo.a_cghzglb');
     sql.Add('where sqbid='+''''+sqbidstr+''''+' and cpbh='+''''+cpbhstr+'''');
     prepare;
     open;
     edit;
     FieldByname('sldw').asstring:=jldwCombo.Text;
     FieldByname('sbsl').asfloat:=strtoFloat(sbslEdit.Text);
     FieldByname('gjje').asfloat:=strtoFloat(gjjeEdit.Text);
     FieldByname('sccj').asstring:=sccjCombo.Text;
     FieldByname('sjyq').asstring:=sjyqEdit.Text;
     FieldByname('cpbh').asstring:=cpbhEdit.Text;
     FieldByname('jhy').asstring:=jhyCombo.Text;
     FieldByname('cpmc').asstring:=cpmcEdit.Text;
     FieldByname('xhgg').asstring:=xhggEdit.Text;
     FieldByname('ysbx1').asstring:=yyhrwEdit.Text;
     //FieldByName('kcsl').asfloat:=strTofloat(jhssForm.readkcsl(cpbhedit.Text));
     FieldBYName('cgslhs').asFloat:=0;
     {if (strtofloat(sbsledit.text)-strTofloat(jhssForm.readkcsl(cpbhedit.Text)))<=0  then
     FieldByName('sxsl').asFloat:=0
     else
     FieldByName('sxsl').asFloat:=strtofloat(sbsledit.text)-strTofloat(jhssForm.readkcsl(cpbhedit.Text));}
     FieldByName('sxsl').asfloat:=xcgslstr;
     post;
     except
      on EDBEngineError do
          begin
           messageDlg('您输入的数据可能不符合规范,请检查后重新输入!',mtInformation,[mbOK],0);
           requestlive:=False;
           close;
           exit;
          end;
      end;
     requestlive:=false;
     close;
     end;
     end;
     showmessage('您已经成功修改了该条记录!');
end;

procedure TsqeditForm.HeditBtnClick(Sender: TObject);
begin
   if sqdwCombo.Text='' then
   begin
     messageDlg('您没有输入申请单位名,请您输入申请单位!',mtInformation,[mbOK],0);
     exit;
   end;
    with datamodule1 do
    begin
    with publicQuery1 do
    begin
    requestLive:=true;
    close;
    sql.Clear;
    sql.Add('select * From dbo.a_cgsqzb');
    sql.Add('where sqbid='+''''+sqbidstr+'''');
    prepare;
    open;
    edit;
    try
    FieldByName('lsh').asstring:=lshedit.Text;
    FieldByName('rwmc').asstring:=rwmcEdit.Text;
    FieldByName('sqdw').asstring:=sqdwCombo.Text;
    FieldByName('sqrq').asstring:=sqinputForm.GetDate709(sqrqedit.Text);
    FieldByName('xqfzr').asstring:=xqfzrCombo.Text;
    FieldByName('bzr').asstring:=bzrCombo.Text;
    FieldByName('shr').asstring:=shrCombo.Text;
    FieldByName('xqrq').asstring:=sqinputForm.GetDate709(xqrqedit.Text);
    FieldByName('bzrq').asstring:=sqinputForm.GetDate709(bzrqedit.Text);
    FieldByName('shrq').asstring:=sqinputForm.GetDate709(shrqedit.Text);
    FieldByName('pzr').asstring:=pzrCombo.Text;
    FieldByName('pzrq').asstring:=sqinputForm.GetDate709(pzrqedit.Text);
    Post;
    except
    on EDBEngineError do
       begin
       messageDlg('您输入的数据可能不符合规范,请检查后重新输入!',mtInformation,[mbOK],0);
       requestlive:=false;
       close;
       exit;
       end;
    end;
     close;
     sql.Clear;
     sql.Add('select * From dbo.a_cghzglb');
     sql.Add('where sqbid='+''''+sqbidstr+'''');
     prepare;
     open;
     while not eof do
     begin
     try
    edit;
    FieldByName('lsh').asstring:=lshedit.Text;
    FieldByName('rwmc').asstring:=rwmcEdit.Text;
    FieldByName('xqdw').asstring:=sqdwCombo.Text;
    FieldByName('sbrq').asstring:=sqinputForm.GetDate709(sqrqedit.Text);
    FieldByName('bzr').asstring:=bzrCombo.Text;
    FieldByName('shr').asstring:=shrCombo.Text;
    FieldByName('bzrq').asstring:=sqinputForm.GetDate709(bzrqedit.Text);
    FieldByName('shrq').asstring:=sqinputForm.GetDate709(shrqedit.Text);
    FieldByName('pzr').asstring:=pzrCombo.Text;
    FieldByName('pzrq').asstring:=sqinputForm.GetDate709(pzrqedit.Text);
    Post;
    except
    on EDBEngineError do
       begin
       messageDlg('您输入的数据可能不符合规范,请检查后重新输入!',mtInformation,[mbOK],0);
       requestlive:=false;
       close;
       exit;
       end;
    end;
    next;
    end;
    requestlive:=false;
    close;
    end;
    end;
    showmessage('您已经成功修改了该申请表表头!');
end;

procedure TsqeditForm.cpbhEditExit(Sender: TObject);
begin
    {if length(cpbhedit.Text)=11 then
    with datamodule1.PublicQuery1 do
    begin
    close;
    sql.Clear;
    sql.Add('select * From dbo.e_wzdmb');
    sql.Add('where wzidh='+''''+cpbhedit.Text+'''');
    prepare;
    open;
    if recordCount=0 then
    begin
    wzszForm:=TwzszForm.Create(application);
    wzszForm.wzidedit.text:=cpbhedit.text;
    wzszForm.panel2.Enabled:=False;
    wzszForm.deletebtn.enabled:=false;
    wzszForm.ShowModal;
    wzszForm.Free;
    end;
    close;
    end;
    if cpmcedit.Text='' then
    with datamodule1.PublicQuery1 do
    begin
    close;
    sql.Clear;
    sql.add('select wzmc,xhgg from dbo.e_wzdmb');
    sql.add('where wzidh='+''''+cpbhedit.Text+'''');
    prepare;
    open;
    cpmcedit.Text:=fieldByname('wzmc').asstring;
    xhggedit.Text:=fieldByName('xhgg').asstring;
    close;
    end;}
end;

procedure TsqeditForm.sccjComboKeyPress(Sender: TObject; var Key: Char);
begin
   if key=#13 then
   with datamodule1.PublicQuery1 do
    begin
    close;
    sql.Clear;
    sql.Add('select gysmc from dbo.e_fczfzb');
    sql.Add('where gysmc like ');
    sql.add(''''+sccjCombo.text+'%'+'''');
    open;
    first;
    sccjCombo.Items.Clear;
       while  not eof do
       begin
         sccjCombo.Items.Add(FieldByName('gysmc').asstring);
         next;
       end;
     close;
     end;
end;

procedure TsqeditForm.FormClose(Sender: TObject; var Action: TCloseAction);
begin
    datamodule1.publicQuery1.RequestLive:=false;
    datamodule1.publicQuery1.close;
end;

procedure TsqeditForm.sbslEditKeyPress(Sender: TObject; var Key: Char);
begin
    if not (key in ['0'..'9','.',#8,#13]) then
    begin
      key:=#0;
      beep;
    end;
end;

procedure TsqeditForm.sbslEditExit(Sender: TObject);
begin
   sbslEdit.Text:=sqinputForm.CheckFloatData(sbslEdit.Text);
end;

procedure TsqeditForm.gjjeEditExit(Sender: TObject);
begin
    gjjeEdit.Text:=sqinputForm.CheckFloatData(gjjeEdit.Text);
end;

procedure TsqeditForm.gjjeEditKeyPress(Sender: TObject; var Key: Char);
begin
    if not (key in ['0'..'9','.',#8,#13]) then
    begin
      key:=#0;
      beep;
    end;
end;

procedure TsqeditForm.cpbhEditDblClick(Sender: TObject);
begin
    wzxxcxForm:=TwzxxcxForm.Create(application);
    wzxxcxform.cpbhEdit.Text:=cpbhedit.Text;
    hide;
    if (wzxxcxForm.ShowModal=mrOK) then
    begin
    cpbhedit.Text:=wzxxcxForm.cpbhstr;
    cpmcedit.Text:=wzxxcxForm.cpmcstr;
    xhggedit.Text:=wzxxcxForm.xhggstr;
    end;
    wzxxcxForm.free;
    show;
end;

procedure TsqeditForm.BitBtn1Click(Sender: TObject);
begin
   close;
end;

end.

⌨️ 快捷键说明

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