ddch.~pas

来自「应对服装行业的生产成本控制系统」· ~PAS 代码 · 共 809 行 · 第 1/2 页

~PAS
809
字号
DBGrid1.Canvas.Brush.Color:=clred;
DBGrid1.Canvas.Font.Color:=clWhite;
DBGrid1.DefaultDrawColumnCell(Rect,   datacol,column,   State);
end;
end;

procedure TFrmddch.rqKeyPress(Sender: TObject; var Key: Char);
begin
if key=#13 then tsl.SetFocus;
end;

procedure TFrmddch.BqueryClick(Sender: TObject);
var
commandtring1,relation,cx:string;
begin
 relation:=' like ''';
    cx:='%';
commandstring:='select * from dbo.ddb';
commandtring1:='select * from dbo.ddb';
  try
if (trim(qddh.Text)<>'') and (cddh.Checked) then
   begin
 relation:=' like ''';
    cx:='%';
  if  commandstring=commandtring1 then
  begin
commandstring:=commandstring+' where (dbo.ddb.ddh'+relation+cx+trim(qddh.Text)+cx+''')';
end
else
begin
commandstring:=commandstring+' and (dbo.ddb.ddh'+relation+cx+trim(qddh.Text)+cx+''')';
end;
end
else
begin
qddh.Text:='';
end;
if (trim(qjglx.Text)<>'') and (cjglx.Checked) then
   begin
 relation:=' like ''';
    cx:='%';
  if  commandstring=commandtring1 then
  begin
commandstring:=commandstring+' where (dbo.ddb.jglx'+relation+cx+trim(qjglx.Text)+cx+''')';
end
else
begin
commandstring:=commandstring+' and (dbo.ddb.jglx'+relation+cx+trim(qjglx.Text)+cx+''')';
end;
end
else
begin
qjglx.Text:='';
end;
if (trim(qkhmc.Text)<>'') and (ckhmc.Checked) then
   begin
    relation:=' like ''';
    cx:='%';
  if  commandstring=commandtring1 then
  BEGIN
  commandstring:=commandstring+' where (dbo.ddb.khmc'+relation+cx+TRIM(qkhmc.Text)+cx+''')'
 END
  else
  BEGIN
  commandstring:=commandstring+' and (dbo.ddb.khmc'+relation+cx+TRIM(qkhmc.Text)+cx+''')'
  end;
 end
 else
 begin
qkhmc.Text:='';
end;
if (trim(qcpmc.Text)<>'') and (ccpmc.Checked) then
   begin
    relation:=' like ''';
    cx:='%';
  if  commandstring=commandtring1 then
  BEGIN
  commandstring:=commandstring+' where (dbo.ddb.cpmc'+relation+cx+TRIM(qcpmc.Text)+cx+''')'
 END
  else
  BEGIN
  commandstring:=commandstring+' and (dbo.ddb.cpmc'+relation+cx+TRIM(qcpmc.Text)+cx+''')'
  end;
 end
 else
 begin
qcpmc.Text:='';
end;
if (trim(qcpfl.Text)<>'') and (ccpfl.Checked) then
   begin
    relation:=' like ''';
    cx:='%';
  if  commandstring=commandtring1 then
  BEGIN
  commandstring:=commandstring+' where (dbo.ddb.cpfl'+relation+cx+TRIM(qcpfl.Text)+cx+''')'
 END
  else
  BEGIN
  commandstring:=commandstring+' and (dbo.ddb.cpfl'+relation+cx+TRIM(qcpfl.Text)+cx+''')'
  end;
 end
 else
 begin
qcpfl.Text:='';
end;
if (trim(qcpdw.Text)<>'') and (ccpdw.Checked) then
   begin
    relation:=' like ''';
    cx:='%';
  if  commandstring=commandtring1 then
  BEGIN
  commandstring:=commandstring+' where (dbo.ddb.cpdw'+relation+cx+TRIM(qcpdw.Text)+cx+''')'
 END
  else
  BEGIN
  commandstring:=commandstring+' and (dbo.ddb.cpdw'+relation+cx+TRIM(qcpdw.Text)+cx+''')'
  end;
 end
 else
 begin
qcpdw.Text:='';
end;
if csq.Checked then
 begin
if commandstring=commandtring1 then
begin
relation:=' >= ''';
    cx:='';
commandstring:=commandstring+' where (dbo.ddb.jdrq'+ relation+FormatDateTime('yyyy-mm-dd',sq.Date)+cx+''')';
end
else
begin
relation:=' >= ''';
    cx:='';
commandstring:=commandstring+' and (dbo.ddb.jdrq'+ relation+FormatDateTime('yyyy-mm-dd',sq.Date)+cx+''')';
end;
end;
if csz.Checked then
 begin
if commandstring=commandtring1 then
begin
relation:=' < ''';
    cx:='';
commandstring:=commandstring+' where (dbo.ddb.jdrq'+ relation+FormatDateTime('yyyy-mm-dd',sz.Date+1)+cx+''')';
end
else
begin
relation:=' < ''';
    cx:='';
commandstring:=commandstring+' and (dbo.ddb.jdrq'+ relation+FormatDateTime('yyyy-mm-dd',sz.Date+1)+cx+''')';
end;
end;
if cjq.Checked then
 begin
if commandstring=commandtring1 then
begin
relation:=' >= ''';
    cx:='';
commandstring:=commandstring+' where (dbo.ddb.jhrq'+ relation+FormatDateTime('yyyy-mm-dd',jq.Date)+cx+''')';
end
else
begin
relation:=' >= ''';
    cx:='';
commandstring:=commandstring+' and (dbo.ddb.jhrq'+ relation+FormatDateTime('yyyy-mm-dd',jq.Date)+cx+''')';
end;
end;
if cjz.Checked then
 begin
if commandstring=commandtring1 then
begin
relation:=' < ''';
    cx:='';
commandstring:=commandstring+' where (dbo.ddb.jhrq'+ relation+FormatDateTime('yyyy-mm-dd',jz.Date+1)+cx+''')';
end
else
begin
relation:=' < ''';
    cx:='';
commandstring:=commandstring+' and (dbo.ddb.jhrq'+ relation+FormatDateTime('yyyy-mm-dd',jz.Date+1)+cx+''')';
end;
end;
if (trim(qsl.Text)<>'') and (csl.Checked) then
   begin
    relation:=' like ''';
    cx:='%';
  if  commandstring=commandtring1 then
  begin
commandstring:=commandstring+' where (dbo.ddb.sl'+relation+cx+trim(qsl.Text)+cx+''')';
end
else
begin
commandstring:=commandstring+' and (dbo.ddb.sl'+relation+cx+trim(qsl.Text)+cx+''')';
end;
end
else
begin
qsl.Text:='';
end;
if (trim(qdj.Text)<>'') and (cdj.Checked) then
   begin
    relation:=' like ''';
    cx:='%';
  if  commandstring=commandtring1 then
  begin
commandstring:=commandstring+' where (dbo.ddb.dj'+relation+cx+trim(qdj.Text)+cx+''')';
end
else
begin
commandstring:=commandstring+' and (dbo.ddb.dj'+relation+cx+trim(qdj.Text)+cx+''')';
end;
end
else
begin
qdj.Text:='';
end;
if (trim(qje.Text)<>'') and (cje.Checked) then
   begin
    relation:=' like ''';
    cx:='%';
  if  commandstring=commandtring1 then
  begin
commandstring:=commandstring+' where (dbo.ddb.je'+relation+cx+trim(qje.Text)+cx+''')';
end
else
begin
commandstring:=commandstring+' and (dbo.ddb.je'+relation+cx+trim(qje.Text)+cx+''')';
end;
end
else
begin
qje.Text:='';
end;
commandstring:=commandstring+' order by ddh desc ';
commandstringq:=commandstring;
DataModule1.ClientDataSet17.DisableControls;
DataModule1.ClientDataSet17.Close;
DataModule1.ClientDataSet17.CommandText:=commandstring;
DataModule1.ClientDataSet17.Open;
DataModule1.ClientDataSet17.EnableControls;
help.Caption:='   查询完毕,要添加订单出货记录请用鼠标双击该订单记录所在的行!';
pz.Enabled:=true;
dbgrid1.Enabled:=true;
except
DataModule1.clientdataset17.EnableControls;
showmessage('数据库没有打开!');
end;
end;

procedure TFrmddch.DBGrid1DblClick(Sender: TObject);
var
relation:string;
begin
 relation:=' = ''';
try
if DataModule1.ClientDataSet17.Active then
begin
 if DataModule1.ClientDataSet17.RecordCount<1 then exit;
 bsave.Enabled:=false;
 bcancel.Enabled:=false;
 bprint.Enabled:=false;
 bnew.Enabled:=true;
 commandstring:='select * from dbo.ddchb where (dbo.ddchb.ddh'+relation+DataModule1.ClientDataSet17.FieldByName('ddh').AsString+''' )'+' order by xh';
DataModule1.clientdataset19.Close;
DataModule1.clientdataset19.CommandText:=commandstring;
DataModule1.clientdataset19.Open;
 end;
 help.Caption:='  要新增记录请点击<新增>按钮!';
 dbgrid1.Enabled:=false;
 bnew.SetFocus;
 except
 dbgrid1.Enabled:=true;
 showmessage('表格中数据出现了错误!')
 end;
end;

procedure TFrmddch.bnewClick(Sender: TObject);
var
i:integer;
begin
pz.Enabled:=true;
rq.DateTime:=date;
sq.DateTime:=date-30;
sz.DateTime:=date;
jq.DateTime:=date;
jz.DateTime:=date+30;
help.Caption:='';
bnew.Enabled:=false;
bsave.Enabled:=true;
bcancel.Enabled:=true;
bprint.Enabled:=false;
i:=DataModule1.ClientDataSet19.RecordCount+1;
txh.Text:=inttostr(i);
while DataModule1.ClientDataSet19.Locate('xh',txh.Text,[]) do
begin
i:=i+1;
txh.Text:=inttostr(i);
end;
rq.SetFocus;
end;

procedure TFrmddch.DBGrid5DrawColumnCell(Sender: TObject;
  const Rect: TRect; DataCol: Integer; Column: TColumn;
  State: TGridDrawState);
begin
 if DataModule1.ClientDataSet19.FieldByName('shbj').AsInteger=1 then
begin
dbgrid5.Canvas.Font.Color:=clred;
dbgrid5.Canvas.Brush.Color:=clyellow;
end
else
begin
dbgrid5.Canvas.Font.Color:=clblue;
dbgrid5.Canvas.Brush.Color:=clwhite;
end;
dbgrid5.DefaultDrawColumnCell(rect,datacol,column,state);
if   ((State = [gdSelected])   or   (State   =   [gdSelected,   gdFocused]))   then
   begin
dbgrid5.Canvas.Brush.Color:=clred;
dbgrid5.Canvas.Font.Color:=clWhite;
dbgrid5.DefaultDrawColumnCell(Rect,   datacol,column,   State);
end;
end;

procedure TFrmddch.DBGrid5TitleClick(Column: TColumn);
var i : integer;
begin
for i:= 1 to dbgrid5.Columns.Count do
begin
//恢复所有标题字体为默认
dbgrid5.Columns[i-1].Title.Font.Color := clBlue;
dbgrid5.Columns[i-1].Title.Font.Style := [];
end;
if DataModule1.ClientDataSet19.IndexFieldNames<>(Column.FieldName) then //判断原排序方式
begin
DataModule1.ClientDataSet19.IndexFieldNames:= Column.FieldName;
Column.Title.Font.Color := clRed; //改变标题行字体为红色,表示当前的排序方式为升序
Column.Title.Font.Style := [fsBold];
end;
end;

procedure TFrmddch.txhKeyPress(Sender: TObject; var Key: Char);
begin
if key=#13 then rq.SetFocus;
end;

procedure TFrmddch.tczlKeyPress(Sender: TObject; var Key: Char);
begin
if not (key in['0'..'9',#8,#13,'.','-']) then
begin
key:=#0;
help.caption:='   请输入数字!';
end;
if key=#13 then twcl.SetFocus;
end;

procedure TFrmddch.twclKeyPress(Sender: TObject; var Key: Char);
begin
if not (key in['0'..'9',#8,#13,'.','-']) then
begin
key:=#0;
help.caption:='   请输入数字!';
end;
if key=#13 then tbz.SetFocus;
end;

procedure TFrmddch.tbzKeyPress(Sender: TObject; var Key: Char);
begin
if not bsave.Enabled then exit;
if key=#13 then bsave.SetFocus;
end;

function tfrmddch.checkcs():boolean;
var
i,i1:integer;
czl,wcl:string;
begin
czl:='0';
wcl:='0';
if not DataModule1.ClientDataSet19.Active then exit;
//if DataModule1.ClientDataSet19.RecordCount<1 then exit;
i1:=DataModule1.ClientDataSet19.RecordCount;
if i1>0 then
begin
DataModule1.ClientDataSet19.First;
for i:=1 to i1 do
begin
czl:=formatfloat('0.00',DataModule1.ClientDataSet19.fieldbyname('sl').AsFloat+strtofloat(czl));
DataModule1.ClientDataSet19.Next;
end;
DataModule1.ClientDataSet19.First;
end;
czl:=floattostr(strtofloat(czl)+strtofloat(tsl.Text));
wcl:=floattostr(DataModule1.ClientDataSet17.fieldbyname('sl').AsFloat-strtofloat(czl));
tczl.Text:=czl;
twcl.Text:=wcl;
end;
procedure TFrmddch.tslChange(Sender: TObject);
begin
checkcs;
end;

end.

⌨️ 快捷键说明

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