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

📄 quality_check.pas

📁 适合行业为眼镜业
💻 PAS
📖 第 1 页 / 共 3 页
字号:
    for i:=1 to StringGrid1.RowCount-1 do
    begin
        StringGrid1.Cells[0,i]:=IntTostr(i); //表示第0列第i行
    end;
end;

procedure Tfrm_Quality_Check.StringGrid1DrawCell(Sender: TObject; ACol,
  ARow: Integer; Rect: TRect; State: TGridDrawState);
var
  s:string;
  r:TRect;
begin
//ydy add 设置显示颜色
 with Sender as Tstringgrid do
        begin
        if gdSelected in State then
        Canvas.Brush.Color:= clTeal;  //clBlue; //clyellow;//clRed;
        Canvas.TextRect(Rect,Rect.Left,Rect.Top,' '+Cells[ACol,ARow]);
        if gdFocused in State then
        Canvas.DrawFocusRect(Rect);
        end;

//不但水平居中,还垂直居中
with Sender as Tstringgrid do
    begin
      Canvas.FillRect(Rect);
      s:=Cells[ACol,ARow];
      r:=Rect;
      DrawText(Canvas.Handle,PChar(s),Length(s),r,DT_CENTER or DT_SINGLELINE or DT_VCENTER);
    end;
    with sender as TStringGrid do
    begin
        if (GDFocused in state) then
        begin
            Pcol:=Acol;
            Prow:=ARow;
            func.String_Col:=ARow;
        end;
    end;
end;

procedure Tfrm_Quality_Check.StringGrid1DblClick(Sender: TObject);
var
    openstr:string;
    S1,s2,s3:string;
    sqlsub:widestring;
  I:INTEGER;
begin
  if pcol = 4 then  //复制数量
  begin
   for i := prow+1 to STRINGGRID1.rowcount -1 do
   begin
   STRINGGRID1.cells[4,i]:= STRINGGRID1.cells[4,prow];
   STRINGGRID1.cells[5,i]:=INTTOSTR(STRTOINT(STRINGGRID1.cells[3,i])-STRTOINT(STRINGGRID1.cells[4,i]));
   //同时要计算金额
   END;
  END;
end;


procedure Tfrm_Quality_Check.Edit1DblClick(Sender: TObject);
begin
    Edit1.Text:=ForMatDateTime('yyyy''-''mm''-''dd',now);
end;

procedure Tfrm_Quality_Check.Edit1KeyPress(Sender: TObject; var Key: Char);
begin
    if Key=#13 then
        Edit1.Text:=ForMatDateTime('yyyy''-''mm''-''dd',now);
end;

procedure Tfrm_Quality_Check.Edit8KeyPress(Sender: TObject; var Key: Char);
begin
    if Key=#13 then
        Edit8.Text:=Handle_Man;
end;

procedure Tfrm_Quality_Check.Edit8DblClick(Sender: TObject);
begin
    Edit8.Text:=Handle_Man;
end;
procedure Tfrm_Quality_Check.Cmd_LHDJClick(Sender: TObject);
var
    sqlsub:widestring;
    i:integer;
begin
    LHXZ_Str:='';
    LHXZ_Str:='Quality_Check_001';
    LHXZ_Str_List_NO:='';
    LHXZ_Str_Result:='';
    frm_Stock_Write_Check:=Tfrm_Stock_Write_Check.Create(self);
    frm_Stock_Write_Check.ShowModal;
    frm_Stock_Write_Check.Free;
    edit3.Text:=LHXZ_Str_List_NO;
    if stringgrid1.RowCount<2 then
    begin
      stringgrid1.RowCount:=2;
      stringgrid1.FixedRows:=1;
    end;  
end;

procedure Tfrm_Quality_Check.FormClose(Sender: TObject;
  var Action: TCloseAction);
begin
  DMMAIN.CDSquery2.Close;
  dmmain.CDSquery2.Data:=null;
  DMMAIN.CDSexecsql.Close;
  dmmain.CDSexecsql.Data:=null;
  dmmain.cdsprintmaster.Close;
  dmmain.cdsprintmaster.Data:=null;
  dmmain.cdsQuality_Check.Close;
  dmmain.cdsQuality_Check.Data:=null;
  dmmain.cdsQuality_Check_detail.Close;
  dmmain.cdsQuality_Check_detail.Data:=null;
  Action:=cafree;
end;

procedure Tfrm_Quality_Check.SpeedButton5Click(Sender: TObject);
begin
    Check_Storage:='';Check_Storage_Result:='';
    Check_Storage:='Quality_Checkstr';
    frm_Storage_Select:=Tfrm_Storage_Select.Create(self);
    frm_Storage_Select.ShowModal;
    Edit5.Text:=Trim(Check_Storage_Result_NO);
    Edit_Storage_Name.Text:=Trim(Check_Storage_Result);
    frm_Storage_Select.Free;
end;

procedure Tfrm_Quality_Check.SpeedButton9Click(Sender: TObject);
begin
    Employe_Check:='';
    Employe_Check:='Quality_Checkstr';
    Employe_Check_Result:='';
    frm_Login_Man:=Tfrm_Login_Man.Create(self);
    frm_Login_Man.Caption:='经手人选择';
    frm_Login_Man.ShowModal;
    Edit6.Text:=Employe_Check_Result;
    frm_Login_Man.Free;
end;

procedure Tfrm_Quality_Check.SpeedButton8Click(Sender: TObject);
begin
    ChildShop_Str:='';
    ChildShop_Result_NO:='';
    ChildShop_Result_Name:='';
    ChildShop_Str:='Quality_Check_str';
    frm_ChildShop_Select:=Tfrm_ChildShop_Select.Create(self);
    frm_ChildShop_Select.ShowModal;
    Edit7.Text:=ChildShop_Result_NO;
    frm_ChildShop_Select.Free;
end;

procedure Tfrm_Quality_Check.SpeedButton7Click(Sender: TObject);
begin
    frm_Login_Man:=Tfrm_Login_Man.Create(self);
    frm_Login_Man.Caption:='制单人选择';
    frm_Login_Man.ShowModal;
    Edit8.Text:=Employe_Check_Result;
    frm_Login_Man.Free;
end;

procedure Tfrm_Quality_Check.SpeedButton2Click(Sender: TObject);
var
  user,tablename:widestring;
  flag:olevariant;
begin
  if trim(stringgrid1.Cells[1,1])='' then exit;
  no:=trim(edit2.Text);
  typed:='质量验收单';
  user:=trim(Handle_No);
  flag:=adisp.receipted(no,typed,user,1,Handle_Part);
  tablename:='select a.storage_no,b.goods_no,b.stock_no,b.Regular_Amount as amount from Quality_Check as a ,Quality_Check_detail as b where a.stock_no=b.stock_no and a.stock_no='+''''+trim(No)+'''';
  flag:=inttostr(adisp.UpdateOrder(tablename));
  if flag='1' then
  begin
    application.MessageBox('审核成功!',pchar(application.Title),mb_iconinformation);
    close;
    exit;
  end;
  if flag='2' then
  begin
    application.MessageBox('无权进行进行审核',pchar(application.Title),mb_iconinformation);
    close;
    exit;
  end;
  if flag='3' then
  begin
    application.MessageBox('审核完毕!',pchar(application.Title),mb_iconinformation);
    close;
    exit;
  end;
  if flag='4' then
  begin
    application.MessageBox('反审核完毕!',pchar(application.Title),mb_iconinformation);
    exit;
  end;
  if flag='5' then
  begin
    application.MessageBox('反审核成功!',pchar(application.Title),mb_iconinformation);
    exit;
  end;
  if flag='6' then
  begin
    application.MessageBox('单据过帐后,不能进行审核或反审核!',pchar(application.Title),mb_iconinformation);
    exit;
  end;
end;

procedure Tfrm_Quality_Check.Edit3Change(Sender: TObject);
  var
  sql:widestring;
  i:integer;
begin
  if Public_Do='Business_Draft_0006' then exit;
  if trim(edit3.Text)<>'' then
  begin
    sql:='SELECT a.*,b.*,c.* FROM [Stock_Write_detail] as a,Goods_CODE as b,Stock_Write as c where a.goods_no=b.goods_no and a.stock_no=c.stock_no and a.stock_no='+''''+trim(edit3.Text)+'''';
    dmmain.CDSquery2.Close;
    dmmain.CDSquery2.Data:=adisp.resultrecord(sql);
    dmmain.CDSquery2.Open;
    edit4.Text:= dmmain.CDSquery2.fieldbyname('wldw').AsString;
    edit5.Text:= dmmain.CDSquery2.fieldbyname('storage_no').AsString;
    edit7.Text:= dmmain.CDSquery2.fieldbyname('shop_no').AsString;
    edit9.Text:= dmmain.CDSquery2.fieldbyname('condense').AsString;
    edit10.Text:= dmmain.CDSquery2.fieldbyname('remark').AsString;
    wldwno:=dmmain.CDSquery2.FieldByName('wldw_no').AsString;
    i:=1;
    StringGrid1.RowCount:=dmmain.CDSquery2.RecordCount+1;
    while not dmmain.CDSquery2.Eof do
    begin
      StringGrid1.Cells[0,i]:=inttostr(i);
      StringGrid1.Cells[1,i]:=trim(dmmain.CDSquery2.FieldByName('Goods_NO').AsString);//商品编号
      StringGrid1.Cells[2,i]:=trim(dmmain.CDSquery2.FieldByName('Goods_Name').AsString);//商品名称
      StringGrid1.Cells[3,i]:=trim(dmmain.CDSquery2.FieldByName('write_Amount').AsString);//商品编号
      StringGrid1.Cells[7,i]:=trim(dmmain.CDSquery2.FieldByName('TYPE').AsString); //类别名称
      StringGrid1.Cells[StringGrid1.ColCount-2,i]:=trim(dmmain.CDSquery2.FieldByName('write_remark').AsString); //类别名称
      StringGrid1.Cells[StringGrid1.ColCount-1,i]:=trim(dmmain.CDSquery2.FieldByName('ORDERS').AsString); //类别名称
      dmmain.CDSquery2.Next;
      inc(i);
    end;
  end;
end;

procedure Tfrm_Quality_Check.StringGrid1KeyPress(Sender: TObject;
  var Key: Char);
begin
   if trim(StringGrid1.Cells[1,1])='' then exit;
  if pcol = 4 then
  begin
    if not (key in ['0'..'9',#8,'.']) then
    begin
      key:=#0;
    end else
    begin
      if key<>#8 then
      begin
        if pcol=4 then
        begin
          if StringGrid1.Cells[4,prow]<>'0' then
          begin
            StringGrid1.Cells[4,prow]:=StringGrid1.Cells[4,prow]+key;
          end else
          begin
            StringGrid1.Cells[4,prow]:=key;
          end;
          StringGrid1.Cells[5,prow]:=inttostr(strtoint(StringGrid1.Cells[3,prow])-strtoint(StringGrid1.Cells[4,prow]));
        end;
      end else
      begin
        if pcol=4 then
        begin
          StringGrid1.Cells[4,prow]:=copy(StringGrid1.Cells[4,prow],1,length(StringGrid1.Cells[4,prow])-1);   //减去最后数字
          if  StringGrid1.Cells[4,prow]='' then
          begin
            StringGrid1.Cells[4,prow]:='0';
          end;
          StringGrid1.Cells[5,prow]:=inttostr(strtoint(StringGrid1.Cells[3,prow])-strtoint(StringGrid1.Cells[4,prow]));
        end;
      end;
    end;
  end ;
  if pcol=6 then
  begin
    stringgrid1.Options:=stringgrid1.Options+[goediting];
  end else
  begin
    stringgrid1.Options:=stringgrid1.Options-[goediting];
  end;
end;

procedure Tfrm_Quality_Check.StringGrid1SelectCell(Sender: TObject; ACol,
  ARow: Integer; var CanSelect: Boolean);
begin
  pcol:=acol;
  prow:=arow;
end;

procedure Tfrm_Quality_Check.SpeedButton3Click(Sender: TObject);
begin
  if dmmain.cdsprintmaster.IsEmpty then exit;
  fastrepxf:=tfastrepxf.Create(self);
  fastrepxf.filenames:='Quality.ini';
  fastrepxf.ShowModal;
  fastrepxf.Free;
end;

end.

⌨️ 快捷键说明

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