📄 tas500_02.pas.svn-base
字号:
qryOrd150.FieldByName('O150_003').DisplayLabel:=GetDBString('TAS50002044'); //客户名称
qryOrd150.FieldByName('O150_004').DisplayLabel:=GetDBString('TAS50002045'); //客户简称
qryOrd150.FieldByName('O150_005').DisplayLabel:=GetDBString('TAS50002018'); //电话号码
qryOrd150.FieldByName('O150_012').DisplayLabel:=GetDBString('TAS50002019'); //客户地址
qryOrd150.FieldByName('O150_007').DisplayLabel:=GetDBString('TAS50002022'); //电子邮箱
qryOrd153.FieldByName('I150_002').DisplayLabel:=GetDBString('TAS50002023'); //产品编号
qryOrd153.FieldByName('I150_003').DisplayLabel:=GetDBString('TAS50002046'); //产品名称
qryOrd153.FieldByName('O153_003').DisplayLabel:=GetDBString('TAS50002024'); //机身编号
qryOrd153.FieldByName('I150_004').DisplayLabel:=GetDBString('TAS50002025'); //规格型号
qryOrd153.FieldByName('I120_003').DisplayLabel:=GetDBString('TAS50002026'); //产品类别
qryOrd153.FieldByName('O150_002').DisplayLabel:=GetDBString('TAS50002027'); //制造商号
qryOrd153.FieldByName('O150_003').DisplayLabel:=GetDBString('TAS50002028'); //制造商名
qryTas500T500_001.DisplayLabel:=GetDBString('TAS50002051'); //项目编号
qryTas500T500_002.DisplayLabel:=GetDBString('TAS50002052'); //项目名称
qryTas500T120_003.DisplayLabel:=GetDBString('TAS50002053'); //项目状态
qryTas500T500_005.DisplayLabel:=GetDBString('TAS50002054'); //优先级别
qryTas500T500_006.DisplayLabel:=GetDBString('TAS50002055'); //申报日期
qryTas500T500_007.DisplayLabel:=GetDBString('TAS50002056'); //来源类型
qryTas500T500_008.DisplayLabel:=GetDBString('TAS50002057'); //销售订单
qryTas500T500_010.DisplayLabel:=GetDBString('TAS50002058'); //时间单位
qryTas500T500_011.DisplayLabel:=GetDBString('TAS50002059'); //预计工时
qryTas500T500_012.DisplayLabel:=GetDBString('TAS50002060'); //实际工时
qryTas500T500_013.DisplayLabel:=GetDBString('TAS50002061'); //完工比率
qryTas500T500_014.DisplayLabel:=GetDBString('TAS50002062'); //任务总数
qryTas500O150_002.DisplayLabel:=GetDBString('TAS50002063'); //客户编号
qryTas500O150_003.DisplayLabel:=GetDBString('TAS50002064'); //客户名称
qryTas500O150_005.DisplayLabel:=GetDBString('TAS50002065'); //电话号码
qryTas500O150_012.DisplayLabel:=GetDBString('TAS50002066'); //客户地址
qryTas500O151_002.DisplayLabel:=GetDBString('TAS50002067'); //联系人名
qryTas500O151_004.DisplayLabel:=GetDBString('TAS50002068'); //职务名称
qryTas500O150_007.DisplayLabel:=GetDBString('TAS50002069'); //电子邮件
qryTas500I150_002.DisplayLabel:=GetDBString('TAS50002070'); //产品编号
qryTas500I150_003.DisplayLabel:=GetDBString('TAS50002071'); //产品名称
qryTas500I150_004.DisplayLabel:=GetDBString('TAS50002072'); //规格型号
qryTas500I120_003.DisplayLabel:=GetDBString('TAS50002073'); //产品类别
qryTas500M150_002.DisplayLabel:=GetDBString('TAS50002074'); //制造商号
qryTas500M150_003.DisplayLabel:=GetDBString('TAS50002075'); //制造商名
qryTas500T500_017.DisplayLabel:=GetDBString('TAS50002076'); //机身编号
qryTas500T500_019.DisplayLabel:=GetDBString('TAS50002077'); //制单日期
qryTas500T500_020.DisplayLabel:=GetDBString('TAS50002078'); //制单人员
qryTas500T500_021.DisplayLabel:=GetDBString('TAS50002079'); //修改日期
qryTas500T500_022.DisplayLabel:=GetDBString('TAS50002080'); //修改人员
qryTas500H150_002.DisplayLabel:=GetDBString('TAS50002081'); //责任人号
qryTas500H150_003.DisplayLabel:=GetDBString('TAS50002082'); //责任人名
qryTas500T500_024.DisplayLabel:=GetDBString('TAS50002083'); //预计开始
qryTas500T500_025.DisplayLabel:=GetDBString('TAS50002084'); //预计完成
qryTas500T500_026.DisplayLabel:=GetDBString('TAS50002085'); //实际开始
qryTas500T500_027.DisplayLabel:=GetDBString('TAS50002086'); //实际完成
qrySer500S500_001.DisplayLabel:=GetDBString('TAS50002088'); //来电编号
qrySer500S500_002.DisplayLabel:=GetDBString('TAS50002089'); //来电名称
qrySer500S100_002.DisplayLabel:=GetDBString('TAS50002090'); //服务类别
// qryOrd510.FieldByName('O510A_001').DisplayLabel:=GetDBString(''); //销售单号
// qryOrd510.FieldByName('O510A_003').DisplayLabel:=GetDBString(''); //销售日期
// qryOrd510.FieldByName('O150_003').DisplayLabel:=GetDBString(''); //客户编号
// qryOrd510.FieldByName('O150_003').DisplayLabel:=GetDBString(''); //客户名称
// qryOrd510.FieldByName('I150_003').DisplayLabel:=GetDBString(''); //产品编号
// qryOrd510.FieldByName('I150_003').DisplayLabel:=GetDBString(''); //产品名称
// qryOrd510.FieldByName('O510A_011').DisplayLabel:=GetDBString(''); //机身编号
//时间单位 0=时,1=天,2=周,3=月
S:=GetSysParams('TAS0001');
if S<>'' then cbUnit.ItemIndex:=StrToInt(S);
//允许单据录入时更改时间单位
cbUnit.Enabled:=GetSysParams('TAS0005')='Y';
if cbUnit.Enabled then cbUnit.Color:=AEnableColor else cbUnit.Color:=ADisableColor;
//最高优先级别
S:=GetSysParams('TAS0006');
if S<>'' then udPriority.Min:=StrToInt(S);
//最低优先级别
S:=GetSysParams('TAS0007');
if S<>'' then udPriority.Max:=StrToInt(S);
end;
procedure TTas500_02Form.OpenData(ACode:string);
begin
qryTas500.DisableControls;
qryTas500.Close;
qryTas500.SQL.Clear;
qryTas500.SQL.Add('select A.*,B.T120_003,');
qryTas500.SQL.Add(' E.O150_001,E.O150_002,E.O150_003,E.O150_005,E.O150_007,E.O150_012,');
qryTas500.SQL.Add(' G.T130_002,G.T130_006');
qryTas500.SQL.Add('from TAS500 A, TAS120 B,ORD150 E,TAS130 G');
qryTas500.SQL.Add('where A.T500_003=B.T120_001 and A.T500_015=E.O150_001 and');
qryTas500.SQL.Add(' A.T500_004=G.T130_001');
qryTas500.SQL.Add('order by T500_001');
qryTas500.Open;
qryTas500.Locate('T500_001',ACode,[]);
qryTas500.EnableControls;
qryTas500AfterScroll(qryTas500);
end;
procedure TTas500_02Form.FormCreate(Sender: TObject);
begin
inherited;
SetInterface;
qryHrm150.Open;
qryInv150.Open;
qryTas130.Open;
qryOrd150.Open;
qryOrd510.Open;
qrySer500.Open;
SetButtonState(False);
end;
procedure TTas500_02Form.FormClose(Sender: TObject;
var Action: TCloseAction);
begin
inherited;
if ActSave.Enabled then
begin
if ShowDialog('UMS10000007')=IDNO then //数据尚未保存,现在保存吗?
ActCancel.Execute
else
ActSave.Execute;
end;
qryHrm150.Close;
qryOrd150.Close;
qryOrd151.Close;
qryOrd153.Close;
qryTas500.Close;
qryInv150.Close;
qryTas130.Close;
qryOrd510.Close;
qrySer500.Close;
end;
procedure TTas500_02Form.cbFromChange(Sender: TObject);
begin
inherited;
edtOrder.Enabled:=cbFrom.ItemIndex<>1;
sbOrder.Enabled:=edtOrder.Enabled;
edtCust.Enabled:=cbFrom.ItemIndex=1;
sbCust.Enabled:=edtCust.Enabled;
edtItem.Enabled:=edtCust.Enabled;
sbItem.Enabled:=edtCust.Enabled;
edtMacNo.Enabled:=edtCust.Enabled;
sbMacNo.Enabled:=edtCust.Enabled;
if edtOrder.Enabled then edtOrder.Color:=AEnableColor else edtOrder.Color:=ADisableColor;
if edtCust.Enabled then edtCust.Color:=AEnableColor else edtCust.Color:=ADisableColor;
if edtItem.Enabled then edtItem.Color:=AEnableColor else edtItem.Color:=ADisableColor;
if edtMacNo.Enabled then edtMacNo.Color:=AEnableColor else edtMacNo.Color:=ADisableColor;
if not edtOrder.Enabled then edtOrder.Text:='';
if not edtCust.Enabled then edtCust.Text:='';
if not edtItem.Enabled then edtItem.Text:='';
if not edtMacNo.Enabled then edtMacNo.Text:='';
end;
procedure TTas500_02Form.sbOrderClick(Sender: TObject);
var
ACustNo,AItemNo:string;
begin
inherited;
//来源单号查询
if not edtOrder.Focused then edtOrder.SetFocus;
if cbFrom.ItemIndex=0 then //来源类型=销售定单
begin
qryOrd510.Close;
qryOrd510.Open;
HwSelDataForm:=THwSelDataForm.Create(Application);
HwSelDataForm.OpenSelData(qryOrd510,nil);
if HwSelDataForm.ShowModal=1 then
begin
if qryOrd510.IsEmpty then Exit;
edtOrder.Text:=qryOrd510.FieldByName('O510A_001').AsString;
edtMacNo.Text:=qryOrd510.FieldByName('O510A_011').AsString;
edtCust.Text:=qryOrd510.FieldByName('O150_002').AsString;
edtItem.Text:=qryOrd510.FieldByName('I150_002').AsString;
edtCustExit(edtCust);
edtItemExit(edtItem);
end;
end else
//2=来电记录
if cbFrom.ItemIndex=2 then //来源类型=来电记录
begin
qrySer500.Close;
qrySer500.Open;
HwSelDataForm:=THwSelDataForm.Create(Application);
HwSelDataForm.OpenSelData(qrySer500,nil);
if HwSelDataForm.ShowModal=1 then
begin
if qrySer500.IsEmpty then Exit;
edtOrder.Text:=qrySer500.FieldByName('S500_001').AsString;
edtMacNo.Text:=qrySer500.FieldByName('S500_019').AsString;
ACustNo:=qrySer500.FieldByName('S500_017').AsString;
AItemNo:=qrySer500.FieldByName('S500_018').AsString;
edtCust.Text:=GetValue('select O150_002 from ORD150 where O150_001='+ACustNo);
if AItemNo<>'' then edtItem.Text:=GetValue('select I150_002 from INV150 where I150_001='+AItemNo);
edtCustExit(edtCust);
edtItemExit(edtItem);
end;
end;
end;
procedure TTas500_02Form.sbCustClick(Sender: TObject);
var
ACustNo:string;
begin
inherited;
//客户编号查询
if not edtCust.Focused then edtCust.SetFocus;
HwSelDataForm:=THwSelDataForm.Create(Application);
HwSelDataForm.OpenSelData(qryOrd150,nil);
if HwSelDataForm.ShowModal=1 then
begin
if qryOrd150.IsEmpty then Exit;
edtCust.Text:=qryOrd150.FieldByName('O150_002').AsString;
edtCustName.Text:=qryOrd150.FieldByName('O150_003').AsString;
edtPhone.Text:=qryOrd150.FieldByName('O150_005').AsString;
edtAddress.Text:=qryOrd150.FieldByName('O150_012').AsString;
edtEmail.Text:=qryOrd150.FieldByName('O150_007').AsString;
ACustNo:=qryOrd150.FieldByName('O150_001').AsString;
if ACustNo<>'' then
begin
SYSDM.qryQuery.Close;
SYSDM.qryQuery.SQL.Clear;
SYSDM.qryQuery.SQL.Add('select top 1 * from ORD151 where O151_011<>0 and O151_001='+ACustNo);
SYSDM.qryQuery.Open;
edtContact.Text:=SYSDM.qryQuery.FieldByName('O151_002').AsString;
edtPost.Text:=SYSDM.qryQuery.FieldByName('O151_004').AsString;
end;
qryOrd153.Close;
qryOrd153.SQL.Clear;
qryOrd153.SQL.Add('select AA.*,BB.O150_002,BB.O150_003 from');
qryOrd153.SQL.Add(' (select C.I150_002,A.O153_003,C.I150_003,C.I150_004,D.I120_003,C.I150_001,C.I150_010');
qryOrd153.SQL.Add('from ORD153 A, ORD150 B, INV150 C, INV120 D');
qryOrd153.SQL.Add('where A.O153_001=B.O150_001 and A.O153_002=C.I150_001 and C.I150_005=D.I120_001 and B.O150_002='+''''+edtCust.Text+''''+') as AA');
qryOrd153.SQL.Add('left join ORD150 BB on AA.I150_010=BB.O150_001');
qryOrd153.Open;
end;
end;
procedure TTas500_02Form.sbItemClick(Sender: TObject);
var
ACustNo,AItemNo:Integer;
AMacNo:string;
ACustomerInfo:TCustomerInfo;
begin
inherited;
//产品编号查询
if not qryOrd150.Locate('O150_002',edtCust.Text,[]) then
begin
ShowMsg('UMS10000266'); //必须先输入正确的客户编号
edtCust.SetFocus;
Abort;
end;
qryOrd153.Close;
qryOrd153.SQL.Clear;
qryOrd153.SQL.Add('select AA.*,BB.O150_002,BB.O150_003 from');
qryOrd153.SQL.Add(' (select C.I150_002,A.O153_003,C.I150_003,C.I150_004,D.I120_003,C.I150_001,C.I150_010');
qryOrd153.SQL.Add('from ORD153 A, ORD150 B, INV150 C, INV120 D');
qryOrd153.SQL.Add('where A.O153_001=B.O150_001 and A.O153_002=C.I150_001 and C.I150_005=D.I120_001 and B.O150_002='+''''+edtCust.Text+''''+') as AA');
qryOrd153.SQL.Add('left join ORD150 BB on AA.I150_010=BB.O150_001');
qryOrd153.Open;
if not edtItem.Focused then edtItem.SetFocus;
HwSelDataForm:=THwSelDataForm.Create(Application);
HwSelDataForm.OpenSelData(qryOrd153,nil);
if HwSelDataForm.ShowModal=1 then
begin
edtItem.Text:=qryOrd153.FieldByName('I150_002').AsString;
edtItemName.Text:=qryOrd153.FieldByName('I150_003').AsString;
edtMacNo.Text:=qryOrd153.FieldByName('O153_003').AsString;
edtModel.Text:=qryOrd153.FieldByName('I150_004').AsString;
edtItemClass.Text:=qryOrd153.FieldByName('I120_003').AsString;
edtMaker.Text:=qryOrd153.FieldByName('O150_002').AsString;
edtMakerName.Text:=qryOrd153.FieldByName('O150_003').AsString;
ACustNo:=qryOrd150O150_001.Value;
AItemNo:=qryOrd153I150_001.Value;
AMacNo:=edtMacNo.Text;
GetCustomerInfo(ACustNo,AItemNo,AMacNo,ACustomerInfo);
edtPhone.Text:=ACustomerInfo.CustPhone;
edtEmail.Text:=ACustomerInfo.CustEmail;
edtAddress.Text:=ACustomerInfo.CustAddress;
edtContact.Text:=ACustomerInfo.CustContact;
edtPost.Text:=ACustomerInfo.CustPosition;
end;
end;
procedure TTas500_02Form.sbMacNoClick(Sender: TObject);
begin
inherited;
//机身编号查询
if not qryOrd150.Locate('O150_002',edtCust.Text,[]) then
begin
ShowMsg('UMS10000266'); //必须先输入正确的客户编号
edtCust.SetFocus;
Abort;
end;
qryOrd153.Close;
qryOrd153.SQL.Clear;
qryOrd153.SQL.Add('select AA.*,BB.O150_002,BB.O150_003 from');
qryOrd153.SQL.Add(' (select C.I150_002,A.O153_003,C.I150_003,C.I150_004,D.I120_003,C.I150_001,C.I150_010');
qryOrd153.SQL.Add('from ORD153 A, ORD150 B, INV150 C, INV120 D');
qryOrd153.SQL.Add('where A.O153_001=B.O150_001 and A.O153_002=C.I150_001 and C.I150_005=D.I120_001 and B.O150_002='+''''+edtCust.Text+''''+') as AA');
qryOrd153.SQL.Add('left join ORD150 BB on AA.I150_010=BB.O150_001');
qryOrd153.Open;
if not edtMacNO.Focused then edtMacNO.SetFocus;
HwSelDataForm:=THwSelDataForm.Create(Application);
HwSelDataForm.OpenSelData(qryOrd153,nil);
if HwSelDataForm.ShowModal=1 then
begin
edtItem.Text:=qryOrd153.FieldByName('I150_002').AsString;
edtItemName.Text:=qryOrd153.FieldByName('I150_003').AsString;
edtMacNo.Text:=qryOrd153.FieldByName('O153_003').AsString;
edtModel.Text:=qryOrd153.FieldByName('I150_004').AsString;
edtItemClass.Text:=qryOrd153.FieldByName('I120_003').AsString;
edtMaker.Text:=qryOrd153.FieldByName('O150_002').AsString;
edtMakerName.Text:=qryOrd153.FieldByName('O150_003').AsString;
end;
end;
procedure TTas500_02Form.sbManagerClick(Sender: TObject);
begin
inherited;
//责任人员
if not edtManager.Focused then edtManager.SetFocus;
HwSelDataForm:=THwSelDataForm.Create(Application);
HwSelDataForm.OpenSelData(qryHrm150,nil);
if HwSelDataForm.ShowModal=1 then
begin
edtManager.Text:=qryHrm150.FieldByName('H150_002').AsString;
edtManagerName.Text:=qryHrm150.FieldByName('H150_003').AsString;
end;
end;
procedure TTas500_02Form.edtOrderExit(Sender: TObject);
var
ACustNo,AItemNo:String;
begin
inherited;
//销售订单
if trim(edtOrder.Text)='' then Exit;
if AOldOrder=edtOrder.Text then Exit;
//0=销售定单
if cbFrom.ItemIndex=0 then //来源类型=销售定单
begin
qryOrd510.Close;
qryOrd510.Open;
if qryOrd510.Locate('O510A_001',edtOrder.Text,[]) then
begin
edtOrder.Text:=qryOrd510.FieldByName('O510A_001').Value;
edtMacNo.Text:=qryOrd510.FieldByName('O510A_011').AsString;
edtCust.Text:=qryOrd510.FieldByName('O150_002').AsString;
edtItem.Text:=qryOrd510.FieldByName('I150_002').AsString;
edtCustExit(edtCust);
edtItemExit(edtItem);
end else
begin
ShowMsg('UMS10000306'); //输入的来源单号无效,请重新输入
edtOrder.SetFocus;
Abort;
end;
end else
//2=来电记录
if cbFrom.ItemIndex=2 then //来源类型=来电记录
begin
qrySer500.Close;
qrySer500.Open;
if qrySer500.Locate('S500_001',edtOrder.Text,[]) then
begin
if qrySer500.IsEmpty then Exit;
edtOrder.Text:=qrySer500.FieldByName('S500_001').AsString;
edtMacNo.Text:=qrySer500.FieldByName('S500_019').AsString;
ACustNo:=qrySer500.FieldByName('S500_017').AsString;
AItemNo:=qrySer500.FieldByName('S500_018').AsString;
edtCust.Text:=GetValue('select O150_002 from ORD150 where O150_001='+ACustNo);
if AItemNo<>'' then edtItem.Text:=GetValue('select I150_002 from INV150 where I150_001='+AItemNo);
edtCustExit(edtCust);
edtItemExit(edtItem);
end else
begin
ShowMsg('UMS10000306'); //输入的来源单号无效,请重新输入
edtOrder.SetFocus;
Abort;
end;
end;
end;
procedure TTas500_02Form.edtManagerExit(Sender: TObject);
begin
inherited;
//责任人员
if trim(edtManager.Text)='' then Exit;
if qryHrm150.Locate('H150_002',edtManager.Text,[]) then
begin
edtManager.Text:=qryHrm150.FieldByName('H150_002').Value;
edtManagerName.Text:=qryHrm150.FieldByName('H150_003').Value;
end else
begin
edtManager.Text:='';
edtManagerName.Text:='';
ShowMsg('UMS10000265'); //输入的责任人员无效
edtManager.SetFocus;
Abort;
end;
end;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -