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

📄 tas530_02.pas

📁 这是一个功能齐全的,代码完整的ERP企业信息管理系统,现在上传和大家分享
💻 PAS
📖 第 1 页 / 共 5 页
字号:
end;

procedure TTas530_02Form.edtDaysKeyPress(Sender: TObject; var Key: Char);
begin
  inherited;
  ValidFloat(Sender,Key);
end;

procedure TTas530_02Form.ActFirstExecute(Sender: TObject);
begin
  inherited;
//最前
  if qryTas530.IsEmpty then Exit;
  qryTas530.First;
  ActFirst.Enabled:=False;
  ActPrior.Enabled:=False;
  ActNext.Enabled:=True;
  ActLast.Enabled:=True;
end;

procedure TTas530_02Form.ActPriorExecute(Sender: TObject);
begin
  inherited;
//上移
  if qryTas530.IsEmpty then Exit;
  qryTas530.Prior;
  ActNext.Enabled:=not qryTas530.Eof;
  ActLast.Enabled:=not qryTas530.Eof;
  ActFirst.Enabled:=not qryTas530.Bof;
  ActPrior.Enabled:=not qryTas530.Bof;
end;

procedure TTas530_02Form.ActNextExecute(Sender: TObject);
begin
  inherited;
//下移
  if qryTas530.IsEmpty then Exit;
  qryTas530.Next;
  ActNext.Enabled:=not qryTas530.Eof;
  ActLast.Enabled:=not qryTas530.Eof;
  ActFirst.Enabled:=not qryTas530.Bof;
  ActPrior.Enabled:=not qryTas530.Bof;
end;

procedure TTas530_02Form.ActLastExecute(Sender: TObject);
begin
  inherited;
//最后
  if qryTas530.IsEmpty then Exit;
  qryTas530.Last;
  ActNext.Enabled:=False;
  ActLast.Enabled:=False;
  ActFirst.Enabled:=True;
  ActPrior.Enabled:=True;
end;

procedure TTas530_02Form.ActInsertExecute(Sender: TObject);
var
  ADate:TDateTime;
begin
  inherited;
//新增
  Screen.Cursor:=crHourGlass;
  AMode:='ADD';
  edtCode.Text:='';
  edtWork.Text:='';
  edtTasks.Text:='';
  edtPriority.Text:='';
  edtName.Text:='';
  edtClass.Text:='';
  edtPerson.Text:='';
  edtCust.Text:='';
  edtCustName.Text:='';
  edtPhone.Text:='';
  edtAddress.Text:='';
  edtContact.Text:='';
  edtPost.Text:='';
  edtEmail.Text:='';
  edtItem.Text:='';
  edtItemName.Text:='';
  edtMacNo.Text:='';
//  edtModel.Text:='';
//  edtItemClass.Text:='';
  edtMaker.Text:='';
  edtMakerName.Text:='';
  memDetails.Clear;
  edtDelay.Text:='';
  cbContinue.ItemIndex:=1; //完成状态
  AOldWork:='';
  ADate:=GetServerDate;
  udPercent.Position:=100;
  edtDays.Text:='0';
  cbUnit.ItemIndex:=1;  //天
  edtFromDate.Date:=ADate;
  edtToDate.Date:=ADate;
  edtCreateDate.Text:=FormatDateTime('yyyy-mm-dd hh:mm:ss',ADate);
  edtCreateBy.Text:=AUserName;
  edtUpdateDate.Text:=FormatDateTime('yyyy-mm-dd hh:mm:ss',ADate);
  edtUpdateBy.Text:=AUserName;
  edtVendor.Text:='';
  edtVendorName.Text:='';
  edtSupport.Text:='';
  edtSupportDays.Text:='';

  qryTas531.Close;
  qryTas531.SQL.Clear;
  qryTas531.SQL.Add('select * from TAS531 where T531_001='+''''+edtCode.Text+''''+' order by T531_003,T531_002');
  qryTas531.Open;
  adsTas531.Close;
  adsTas531.CreateDataSet;

  qryTas532.Close;
  qryTas532.SQL.Clear;
  qryTas532.SQL.Add('select * from TAS532 where T532_001='+''''+edtCode.Text+''''+' order by T532_002');
  qryTas532.Open;

  adsTas533.Close;
  adsTas533.CreateDataSet;

  SetButtonState(True);
  if Visible then
    if edtCode.Enabled then edtCode.SetFocus else edtWork.SetFocus;
  Screen.Cursor:=crDefault;
end;

procedure TTas530_02Form.ActUpdateExecute(Sender: TObject);
begin
  inherited;
//修改
  if qryTas530.IsEmpty then
  begin
    ShowMsg('UMS10000002');  //表记录为空,操作无效
    Abort;
  end;

  Screen.Cursor:=crHourGlass;
  AMode:='UPD';
  SetButtonState(True);
  if Visible then
    if edtCode.Enabled then edtCode.SetFocus else edtWork.SetFocus;
  Screen.Cursor:=crDefault;
end;

procedure TTas530_02Form.ActDeleteExecute(Sender: TObject);
var
  ACode,AWork:string;
begin
//删除
  inherited;
  if qryTas530.IsEmpty then
  begin
    ShowMsg('UMS10000002');  //表记录为空,操作无效
    Abort;
  end;

  if ShowDialog('UMS10000008')=IDNO then Abort;  //确定要删除此记录吗?
  try
    ACode:=qryTas530T530_001.AsString;
    AWork:=qryTas530T530_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(qryTas530,'TAS530','T530_001='+''''+ACode+'''');
    if ACode<>'' then UpdateWorksInfo(AWork);  //更新任务工单信息(实际工时、实际开始日期、实际结束日期)
  except
    ShowMsg(SYSDM.ADOC.Errors[0].Description,1);
    Abort;
  end;
end;

procedure TTas530_02Form.ActSaveExecute(Sender: TObject);
begin
  inherited;
//保存
  try
    Screen.Cursor:=crHourGlass;
    SaveData;
  finally
    Screen.Cursor:=crDefault;
  end;
end;

procedure TTas530_02Form.ActCancelExecute(Sender: TObject);
begin
  inherited;
//取消
  adsTas531.CancelBatch;
  qryTas532.CancelBatch;
  qryTas533.CancelBatch;
  SetButtonState(False);
  qryTas530AfterScroll(qryTas530);
end;

procedure TTas530_02Form.ActRefreshExecute(Sender: TObject);
var
  ACode:string;
begin
  inherited;
//刷新
  ACode:=qryTas530.FieldByName('T530_001').AsString;
  qryTas530.DisableControls;
  qryTas530.Close;
  qryTas530.Open;
  qryTas530.Locate('T530_001',ACode,[]);
  qryTas530.EnableControls;
  qryTas530AfterScroll(qryTas530);
end;

procedure TTas530_02Form.ActLocateExecute(Sender: TObject);
begin
  inherited;
//查找
  if qryTas530.IsEmpty then
  begin
    ShowMsg('UMS10000002');  //表记录为空,操作无效
    Abort;
  end;
  LocateDialog(dsTas530);
end;

procedure TTas530_02Form.ActSearchExecute(Sender: TObject);
begin
  inherited;
//查询
  FilterDialog(dsTas530);
end;

procedure TTas530_02Form.ActPrintExecute(Sender: TObject);
begin
  inherited;
//打印
  SYSDM.frDBDataSet2.DataSet:=adsTas531;
  SYSDM.frDBDataSet3.DataSet:=adsTas533;
  SelectReport(qryTas530,AProgramID,AReportName,ReportGetValue);
  ActRefresh.Execute;
end;

procedure TTas530_02Form.ActExitExecute(Sender: TObject);
begin
  inherited;
//退出
  Close;
end;

procedure TTas530_02Form.qryTas530AfterScroll(DataSet: TDataSet);
var
  AReason:string;
begin
  inherited;
  if qryTas530.State in [dsInsert,dsEdit] then Exit;
  if qryTas530.IsEmpty then Exit;
  edtCode.Text:=qryTas530.FieldByName('T530_001').AsString;        //汇报编号
  AOldCode:=edtCode.Text;
  edtWork.Text:=qryTas530.FieldByName('T530_002').AsString;        //工单编号
  AOldWork:=edtWork.Text;
  edtPercent.Text:=qryTas530.FieldByName('T530_003').AsString;     //完工比率
  udPercent.Position:=qryTas530.FieldByName('T530_003').AsInteger;
  edtDays.Text:=qryTas530.FieldByName('T530_004').AsString;        //汇报工时
  edtFromDate.Date:=qryTas530.FieldByName('T530_005').Value;       //开始日期
  edtToDate.Date:=qryTas530.FieldByName('T530_006').Value;         //结束日期
  cbUnit.ItemIndex:=qryTas530.FieldByName('T530_007').AsInteger;   //时间单位
  memDetails.Text:=qryTas530.FieldByName('T530_008').AsString;     //汇报内容
  edtDelay.Text:=qryTas530.FieldByName('T530_009').AsString;       //拖期原因
  edtCreateDate.Text:=qryTas530.FieldByName('T530_011').AsString;  //制单日期
  edtCreateBy.Text:=qryTas530.FieldByName('T530_012').AsString;    //制单人员
  edtUpdateDate.Text:=qryTas530.FieldByName('T530_013').AsString;  //修改日期
  edtUpdateBy.Text:=qryTas530.FieldByName('T530_014').AsString;    //修改人员
  AReason:=qryTas530.FieldByName('T530_015').AsString;             //原因说明
  SetReasonByReaID(AReason);                                       //设置原因说明显示数据
  edtSupport.Text:=qryTas530.FieldByName('T530_017').AsString;     //协助人员
  edtSupportDays.Text:=qryTas530.FieldByName('T530_018').AsString; //协助工时
  edtTasks.Text:=qryTas530.FieldByName('T510_001').AsString;
  edtName.Text:=qryTas530.FieldByName('T510_002').AsString;
  edtPriority.Text:=qryTas530.FieldByName('T510_005').AsString;
  edtPerson.Text:=qryTas530.FieldByName('T520_019').AsString;      //显示执行人员姓名

  edtMacNo.Text:=qryTas530.FieldByName('T510_018').AsString;
  qryTas120.Locate('T120_001',qryTas530.FieldByName('T530_010').AsInteger,[]);  //后续处理
  cbContinue.ItemIndex:=cbContinue.Items.IndexOf(qryTas120.FieldByName('T120_003').AsString);

  edtVendor.Text:=qryTas530.FieldByName('W150_002').AsString;      //协助公司
  edtVendorName.Text:=qryTas530.FieldByName('W150_003').AsString;
  edtClass.Text:=qryTas530.FieldByName('T100_002').AsString;
  edtCust.Text:=qryTas530.FieldByName('O150_002').AsString;
  edtCustName.Text:=qryTas530.FieldByName('O150_003').AsString;
  edtPhone.Text:=qryTas530.FieldByName('O150_005').AsString;
  edtAddress.Text:=qryTas530.FieldByName('O150_012').AsString;
  edtEmail.Text:=qryTas530.FieldByName('O150_007').AsString;
  edtContact.Text:=qryTas530.FieldByName('O151_002').AsString;
  edtPost.Text:=qryTas530.FieldByName('O151_004').AsString;
  edtItem.Text:=qryTas530.FieldByName('I150_002').AsString;
  edtItemName.Text:=qryTas530.FieldByName('I150_003').AsString;
//  edtModel.Text:=qryTas530.FieldByName('I150_004').AsString;
//  edtItemClass.Text:=qryTas530.FieldByName('I120_003').AsString;
  edtMaker.Text:=qryTas530.FieldByName('M150_002').AsString;
  edtMakerName.Text:=qryTas530.FieldByName('M150_003').AsString;

  adsTas531.Close;
  adsTas531.CreateDataSet;
  qryTas531.Close;
  qryTas531.SQL.Clear;
  qryTas531.SQL.Add('select * from TAS531 where T531_001='+''''+edtCode.Text+''''+' order by T531_003,T531_002');
  qryTas531.Open;
  while not qryTas531.Eof do
  begin
    adsTas531.Append;
    adsTas531.FieldByName('FID').Value:=qryTas531.FieldByName('T531_002').Value;
    adsTas531.FieldByName('FPerson').Value:=GetPersonName(qryTas531.FieldByName('T531_002').Value);
    adsTas531.FieldByName('FDate').Value:=qryTas531.FieldByName('T531_003').Value;
    adsTas531.FieldByName('FFromTime').Value:=qryTas531.FieldByName('T531_004').Value;
    adsTas531.FieldByName('FToTime').Value:=qryTas531.FieldByName('T531_005').Value;
    adsTas531.FieldByName('FHours').ReadOnly:=False;
    adsTas531.FieldByName('FHours').Value:=qryTas531.FieldByName('T531_006').Value;
    adsTas531.FieldByName('FHours').ReadOnly:=True;
    adsTas531.FieldByName('FOT').Value:=qryTas531.FieldByName('T531_007').Value;
    adsTas531.FieldByName('FRemark').Value:=qryTas531.FieldByName('T531_008').Value;
    adsTas531.FieldByName('FStartTime').Value:=qryTas531.FieldByName('T531_009').Value;
    adsTas531.FieldByName('FEndTime').Value:=qryTas531.FieldByName('T531_010').Value;
    adsTas531.FieldByName('FTripHour').ReadOnly:=False;
    adsTas531.FieldByName('FTripHour').Value:=qryTas531.FieldByName('T531_011').Value;
    adsTas531.FieldByName('FTripHour').ReadOnly:=True;
    adsTas531.Post;
    qryTas531.Next;
  end;

  qryTas532.Close;
  qryTas532.SQL.Clear;
  qryTas532.SQL.Add('select * from TAS532 where T532_001='+''''+edtCode.Text+''''+' order by T532_002');
  qryTas532.Open;

  adsTas533.Close;
  adsTas533.CreateDataSet;
  qryTas533.Close;
  qryTas533.SQL.Clear;
  qryTas533.SQL.Add('select T533_002,T533_003,I150_001,I150_002,I150_003,I150_004,I140_003,T533_004,T533_005,T533_006,T533_007');

⌨️ 快捷键说明

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