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

📄 tas530_01.pas.svn-base

📁 这是一个功能齐全的,代码完整的ERP企业信息管理系统,现在上传和大家分享
💻 SVN-BASE
📖 第 1 页 / 共 2 页
字号:
procedure TTas530_01Form.sbSearchClick(Sender: TObject);
begin
  inherited;
//查询
  if edtTasks.Text<>'' then
  begin
    if not IsExists('select * from TAS520,TAS530 where T520_001=T530_002 and T520_002='+''''+edtTasks.Text+'''') then
    begin
      ShowMsg('UMS10000285');  //输入的任务编号无效
      edtTasks.SetFocus;
      Abort;
    end;
  end;
  if (edtFromDate.Text='') or (edtToDate.Text='') then
  begin
    ShowMsg('UMS10000319');  //起止日期不可为空
    if edtFromDate.Text='' then edtFromDate.SetFocus else edtToDate.SetFocus;
    Abort;
  end;
  if edtFromDate.Date>edtToDate.Date then
  begin
    ShowMsg('UMS10000320');  //结束日期不能小于起始日期
    edtToDate.SetFocus;
    Abort;
  end;
  Screen.Cursor:=crHourGlass;
  ADOQuery1.DisableControls;
  ADOQuery1.Close;
  ADOQuery1.SQL.Clear;
  if edtTasks.Text='' then
  begin
    ADOQuery1.SQL.Add('select A.*,B.T520_019,C.T510_001,C.T510_002,C.T510_005,C.T510_018,D.T100_002,E.T120_003,');
    ADOQuery1.SQL.Add('       H.O150_001,H.O150_002,H.O150_003,');
    ADOQuery1.SQL.Add('       B.T520_005,B.T520_006,B.T520_007,C.T510_016,C.T510_017,C.T510_019');
    ADOQuery1.SQL.Add('from TAS530 A,TAS520 B,TAS510 C,TAS100 D,TAS120 E,ORD150 H');
    ADOQuery1.SQL.Add('where A.T530_002=B.T520_001 and B.T520_002=C.T510_001 and');
    ADOQuery1.SQL.Add('      C.T510_004=D.T100_001 and C.T510_003=E.T120_001 and');
    ADOQuery1.SQL.Add('      C.T510_016=H.O150_001 and ');
    ADOQuery1.SQL.Add('      A.T530_005>='+GetDateString(edtFromDate.Date)+' and A.T530_005<='+GetDateString(edtToDate.Date));
    ADOQuery1.SQL.Add('order by T530_001');
  end else
  begin
    ADOQuery1.SQL.Add('select A.*,B.T520_019,C.T510_001,C.T510_002,C.T510_005,C.T510_018,D.T100_002,E.T120_003,');
    ADOQuery1.SQL.Add('       H.O150_001,H.O150_002,H.O150_003,');
    ADOQuery1.SQL.Add('       B.T520_005,B.T520_006,B.T520_007,C.T510_016,C.T510_017,C.T510_019');
    ADOQuery1.SQL.Add('from TAS530 A,TAS520 B,TAS510 C,TAS100 D,TAS120 E,ORD150 H');
    ADOQuery1.SQL.Add('where A.T530_002=B.T520_001 and B.T520_002=C.T510_001 and');
    ADOQuery1.SQL.Add('      C.T510_004=D.T100_001 and C.T510_003=E.T120_001 and');
    ADOQuery1.SQL.Add('      C.T510_016=H.O150_001 and ');
    ADOQuery1.SQL.Add('      A.T530_005>='+GetDateString(edtFromDate.Date)+' and A.T530_005<='+GetDateString(edtToDate.Date)+' and ');
    ADOQuery1.SQL.Add('      exists(select 1 from TAS520 where T520_001=T530_002 and T520_002='+''''+edtTasks.Text+''''+')');
    ADOQuery1.SQL.Add('order by T530_001');
  end;
  ADOQuery1.Open;
  ADOQuery1.EnableControls;
  ARecordCount:=GetDataSetCount(ADOQuery1);
  Screen.Cursor:=crDefault;
end;

procedure TTas530_01Form.sbTasksClick(Sender: TObject);
begin
  inherited;
//任务编号查询
  if not edtTasks.Focused then edtTasks.SetFocus;
  HwSelDataForm:=THwSelDataForm.Create(Application);
  HwSelDataForm.OpenSelData(qryTas510,nil);
  if HwSelDataForm.ShowModal=1 then
  begin
    edtTasks.Text:=qryTas510.FieldByName('T510_001').AsString;
  end;
end;

procedure TTas530_01Form.edtTasksExit(Sender: TObject);
begin
  inherited;
  if edtTasks.Text<>'' then
  begin
    if not IsExists('select * from TAS520,TAS530 where T520_001=T530_002 and T520_002='+''''+edtTasks.Text+'''') then
    begin
      ShowMsg('UMS10000285');  //输入的任务编号无效
      edtTasks.SetFocus;
      Abort;
    end;
    qryTas510.Locate('T510_001',edtTasks.Text,[]);
    edtTasks.Text:=qryTas510.FieldByName('T510_001').AsString;
  end;
  sbSearch.Click;
end;

procedure TTas530_01Form.ReportGetValue(const ParName: String; var ParValue: Variant);
begin
  inherited;
end;

procedure TTas530_01Form.ADOQuery1CalcFields(DataSet: TDataSet);
begin
  inherited;
  case ADOQuery1T530_007.AsInteger of
    0:ADOQuery1FUnit.AsString:=AUnit[0];  //时
    1:ADOQuery1FUnit.AsString:=AUnit[1];  //天
    2:ADOQuery1FUnit.AsString:=AUnit[2];  //周
    3:ADOQuery1FUnit.AsString:=AUnit[3];  //月
  end;
end;

procedure TTas530_01Form.dxDBGrid1T530_001DrawSummaryFooter(
  Sender: TObject; ACanvas: TCanvas; ARect: TRect; var AText: String;
  var AAlignment: TAlignment; AFont: TFont; var AColor: TColor;
  var ADone: Boolean);
begin
  inherited;
  AColor:=clWhite;
  AText:=GetDBString('COM00004002')+IntToStr(ARecordCount);  //记录总数:
end;

procedure TTas530_01Form.BrowseEvent;
begin
  inherited;
  Tas530_02Form:=TTas530_02Form.Create(Application);
  Tas530_02Form.OpenData(ADOQuery1T530_001.Value);
  Tas530_02Form.ShowModal;
end;

procedure TTas530_01Form.DeleteEvent;
var
  ACode,AWork:string;
  AStatus:Integer;
begin
  inherited;
//删除
  //允许删除状态为完成的任务计划下的任务汇报单
  if GetSysParams('TAS0009')<>'Y' then
  begin
    //不能删除状态为完成的任务汇报单
    AStatus:=GetValue('select A.T510_003 from TAS510 A, TAS520 B, TAS530 C where A.T510_001=B.T520_002 and B.T520_001=C.T530_002 and C.T530_001='+''''+ADOQuery1T530_001.AsString+'''');
    if AStatus=3 then  //状态=完成
    begin
      ShowMsg('UMS10000304');  //不能删除状态为完成的任务汇报单
      Abort;
    end;
  end;
  try
    ACode:=ADOQuery1T530_001.AsString;
    AWork:=ADOQuery1T530_002.AsString;
    SYSDM.qryQuery.Close;
    SYSDM.qryQuery.SQL.Clear;
    SYSDM.qryQuery.SQL.Add('delete from TAS531 where T531_001='+''''+ACode+'''');
    SYSDM.qryQuery.ExecSQL;
    SYSDM.qryQuery.Close;
    SYSDM.qryQuery.SQL.Clear;
    SYSDM.qryQuery.SQL.Add('delete from TAS532 where T532_001='+''''+ACode+'''');
    SYSDM.qryQuery.ExecSQL;
    SYSDM.qryQuery.Close;
    SYSDM.qryQuery.SQL.Clear;
    SYSDM.qryQuery.SQL.Add('delete from TAS533 where T533_001='+''''+ACode+'''');
    SYSDM.qryQuery.ExecSQL;
    DeleteTableRecord(ADOQuery1,'TAS530','T530_001='+''''+ACode+'''');
    if ACode<>'' then UpdateWorksInfo(AWork);  //更新任务工单信息(实际工时、实际开始日期、实际结束日期)
  except
    ShowMsg(SYSDM.ADOC.Errors[0].Description,1);
    Abort;
  end;
end;

procedure TTas530_01Form.InsertEvent;
begin
  inherited;
//新增
  Tas530_02Form:=TTas530_02Form.Create(Application);
  Tas530_02Form.OpenData('');
  Tas530_02Form.ActInsert.Execute;
  Tas530_02Form.ShowModal;
end;

procedure TTas530_01Form.UpdateEvent;
begin
  inherited;
//修改
  //不能修改状态为完成的任务汇报单
{  AStatus:=GetValue('select A.T510_003 from TAS510 A, TAS520 B, TAS530 C where A.T510_001=B.T520_002 and B.T520_001=C.T530_002 and C.T530_001='+''''+ADOQuery1T530_001.AsString+'''');
  if AStatus=3 then  //状态=完成
  begin
    ShowMsg('UMS10000305');  //不能修改状态为完成的任务汇报单
    Abort;
  end;  }
  Tas530_02Form:=TTas530_02Form.Create(Application);
  Tas530_02Form.OpenData(ADOQuery1T530_001.AsString);
  Tas530_02Form.ActUpdate.Execute;
  Tas530_02Form.ShowModal;
end;

initialization
  RegisterClass(TTas530_01Form);
               
finalization
  UnRegisterClass(TTas530_01Form);

end.

⌨️ 快捷键说明

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