📄 tas530_02.pas
字号:
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 + -