📄 ser500_02.pas
字号:
lblCreateBy.Caption:=GetDBString('SER50002039'); //制单人员
lblUpdateDate.Caption:=GetDBString('SER50002040'); //修改日期
lblUpdateBy.Caption:=GetDBString('SER50002041'); //修改人员
edtCode.Enabled:=not GetAutoCoding('SER500');
if edtCode.Enabled then edtCode.Color:=AEnableColor else edtCode.Color:=ADisableColor;
qryHrm150.FieldByName('H150_002').DisplayLabel:=GetDBString('SER50002046'); //员工编号
qryHrm150.FieldByName('H150_003').DisplayLabel:=GetDBString('SER50002047'); //员工姓名
qryOrd150.FieldByName('O150_002').DisplayLabel:=GetDBString('SER50002048'); //客户编号
qryOrd150.FieldByName('O150_003').DisplayLabel:=GetDBString('SER50002049'); //客户名称
qryOrd150.FieldByName('O150_004').DisplayLabel:=GetDBString('SER50002050'); //客户简称
qryOrd150.FieldByName('O150_005').DisplayLabel:=GetDBString('SER50002051'); //电话号码
qryOrd150.FieldByName('O150_006').DisplayLabel:=GetDBString('SER50002052'); //传真号码
qryOrd150.FieldByName('O150_012').DisplayLabel:=GetDBString('SER50002053'); //客户地址
qryOrd153.FieldByName('I150_002').DisplayLabel:=GetDBString('SER50002054'); //产品编号
qryOrd153.FieldByName('I150_003').DisplayLabel:=GetDBString('SER50002055'); //产品名称
qryOrd153.FieldByName('O153_003').DisplayLabel:=GetDBString('SER50002056'); //机身编号
qryOrd153.FieldByName('O153_007').DisplayLabel:=GetDBString('SER50002108'); //保养开始日期
qryOrd153.FieldByName('O153_008').DisplayLabel:=GetDBString('SER50002109'); //保养完成日期
qryOrd153.FieldByName('O153_009').DisplayLabel:=GetDBString('SER50002110'); //续保开始日期
qryOrd153.FieldByName('O153_010').DisplayLabel:=GetDBString('SER50002111'); //续保完成日期
qryOrd153.FieldByName('O153_012').DisplayLabel:=GetDBString('SER50002112'); //来源类型
qrySer500S500_001.DisplayLabel:=GetDBString('SER50002057'); //来电编号
qrySer500S500_002.DisplayLabel:=GetDBString('SER50002058'); //来电名称
// qrySer500S500_003.DisplayLabel:=GetDBString('SER50002059'); //来电状态
qrySer500S110_003.DisplayLabel:=GetDBString('SER50002059'); //来电状态
// qrySer500S500_004.DisplayLabel:=GetDBString('SER50002060'); //来电类别
qrySer500S100_002.DisplayLabel:=GetDBString('SER50002060'); //来电类别
qrySer500S500_005.DisplayLabel:=GetDBString('SER50002061'); //优先级别
qrySer500S500_006.DisplayLabel:=GetDBString('SER50002062'); //来电类型
qrySer500S500_007.DisplayLabel:=GetDBString('SER50002063'); //来电日期
qrySer500S500_008.DisplayLabel:=GetDBString('SER50002064'); //来电时间
qrySer500S500_009.DisplayLabel:=GetDBString('SER50002065'); //接听时间
// qrySer500S500_010.DisplayLabel:=GetDBString('SER50002066'); //受理人员
qrySer500H150_002.DisplayLabel:=GetDBString('SER50002067'); //受理人号
qrySer500H150_003.DisplayLabel:=GetDBString('SER50002068'); //受理人名
qrySer500S500_011.DisplayLabel:=GetDBString('SER50002069'); //来电人员
qrySer500S500_012.DisplayLabel:=GetDBString('SER50002070'); //部门名称
qrySer500S500_013.DisplayLabel:=GetDBString('SER50002071'); //职务名称
qrySer500S500_014.DisplayLabel:=GetDBString('SER50002072'); //联系电话
qrySer500S500_015.DisplayLabel:=GetDBString('SER50002073'); //单据类型
qrySer500S500_016.DisplayLabel:=GetDBString('SER50002074'); //单据编号
// qrySer500S500_017.DisplayLabel:=GetDBString('SER50002075'); //客戶编号
qrySer500O150_002.DisplayLabel:=GetDBString('SER50002075'); //客戶编号
qrySer500O150_003.DisplayLabel:=GetDBString('SER50002076'); //客戶名称
qrySer500O150_005.DisplayLabel:=GetDBString('SER50002077'); //电话号码
qrySer500O150_006.DisplayLabel:=GetDBString('SER50002078'); //传真号码
qrySer500O150_012.DisplayLabel:=GetDBString('SER50002079'); //客戶地址
// qrySer500S500_018.DisplayLabel:=GetDBString('SER50002080'); //产品编号
qrySer500I150_002.DisplayLabel:=GetDBString('SER50002080'); //产品编号
qrySer500I150_003.DisplayLabel:=GetDBString('SER50002081'); //产品名称
qrySer500S500_019.DisplayLabel:=GetDBString('SER50002082'); //机身编号
qrySer500S500_020.DisplayLabel:=GetDBString('SER50002083'); //是否派工
qrySer500S500_027.DisplayLabel:=GetDBString('SER50002090'); //是否报价
qrySer500S500_028.DisplayLabel:=GetDBString('SER50002091'); //保养开始日期
qrySer500S500_029.DisplayLabel:=GetDBString('SER50002092'); //保养完成日期
qrySer500S500_030.DisplayLabel:=GetDBString('SER50002093'); //续保开始日期
qrySer500S500_031.DisplayLabel:=GetDBString('SER50002094'); //续保完成日期
qrySer500S500_032.DisplayLabel:=GetDBString('SER50002095'); //来源类型
qrySer500S500_033.DisplayLabel:=GetDBString('SER50002096'); //来电内容
qrySer500S500_034.DisplayLabel:=GetDBString('SER50002097'); //制单日期
qrySer500S500_035.DisplayLabel:=GetDBString('SER50002098'); //制单人员
qrySer500S500_036.DisplayLabel:=GetDBString('SER50002099'); //修改日期
qrySer500S500_037.DisplayLabel:=GetDBString('SER50002100'); //修改人员
AFrom[0]:=GetDBString('SER50002101'); //电话
AFrom[1]:=GetDBString('SER50002102'); //传真
AFrom[2]:=GetDBString('SER50002103'); //电邮
AFrom[3]:=GetDBString('SER50002104'); //其他
AType[0]:=GetDBString('SER50002105'); //项目计划
AType[1]:=GetDBString('SER50002106'); //任务计划
AType[2]:=GetDBString('SER50002107'); //手工输入
//最高优先级别
S:=GetSysParams('TAS0006');
if S<>'' then udPriority.Min:=StrToInt(S);
//最低优先级别
S:=GetSysParams('TAS0007');
if S<>'' then udPriority.Max:=StrToInt(S);
end;
procedure TSer500_02Form.OpenData(ACode:string);
begin
qrySer500.DisableControls;
qrySer500.Close;
qrySer500.SQL.Clear;
qrySer500.SQL.Add('select A.*,B.S100_002,C.S110_003,D.H150_001,D.H150_002,D.H150_003,');
qrySer500.SQL.Add(' E.O150_001,E.O150_002,E.O150_003,E.O150_005,E.O150_006,E.O150_012');
qrySer500.SQL.Add('from SER500 A, SER100 B, SER110 C, HRM150 D, ORD150 E');
qrySer500.SQL.Add('where A.S500_004=B.S100_001 and A.S500_003=C.S110_001 and');
qrySer500.SQL.Add(' A.S500_010=D.H150_001 and A.S500_017=E.O150_001');
qrySer500.SQL.Add('order by S500_001');
qrySer500.Open;
qrySer500.Locate('S500_001',ACode,[]);
qrySer500.EnableControls;
qrySer500AfterScroll(qrySer500);
end;
procedure TSer500_02Form.FormCreate(Sender: TObject);
begin
inherited;
SetInterface;
qryHrm150.Open;
qryInv150.Open;
qryOrd150.Open;
qrySer100.Open;
SetButtonState(False);
end;
procedure TSer500_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;
qryInv150.Close;
qryOrd150.Close;
qryOrd153.Close;
qrySer100.Close;
qryTas500.Close;
qryTas510.Close;
end;
procedure TSer500_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;
edtFax.Text:=qryOrd150.FieldByName('O150_006').AsString;
edtAddress.Text:=qryOrd150.FieldByName('O150_012').AsString;
ACustNo:=qryOrd150.FieldByName('O150_001').AsString;
qryOrd153.Close;
qryOrd153.SQL.Clear;
qryOrd153.SQL.Add('select C.I150_002,A.O153_003,C.I150_003,C.I150_004,D.I120_003,E.O150_002,E.O150_003,C.I150_001,A.O153_007,A.O153_008,A.O153_009,A.O153_010,A.O153_012');
qryOrd153.SQL.Add('from ORD153 A, ORD150 B, INV150 C, INV120 D, ORD150 E');
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 C.I150_010=E.O150_001');
qryOrd153.SQL.Add(' and B.O150_002='+''''+edtCust.Text+'''');
qryOrd153.Open;
end;
end;
procedure TSer500_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 C.I150_002,A.O153_003,C.I150_003,C.I150_004,D.I120_003,E.O150_002,E.O150_003,C.I150_001,A.O153_007,A.O153_008,A.O153_009,A.O153_010,A.O153_012');
qryOrd153.SQL.Add('from ORD153 A, ORD150 B, INV150 C, INV120 D, ORD150 E');
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 C.I150_010=E.O150_001');
qryOrd153.SQL.Add(' and B.O150_002='+''''+edtCust.Text+'''');
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;
ACustNo:=qryOrd150O150_001.Value;
AItemNo:=qryOrd153I150_001.Value;
AMacNo:=edtMacNo.Text;
GetCustomerInfo(ACustNo,AItemNo,AMacNo,ACustomerInfo);
edtPhone.Text:=ACustomerInfo.CustPhone;
edtFax.Text:=ACustomerInfo.CustFax;
edtAddress.Text:=ACustomerInfo.CustAddress;
edtFromDate1.Date:=qryOrd153O153_007.Value;
edtToDate1.Date:=qryOrd153O153_008.Value;
edtFromDate2.Date:=qryOrd153O153_009.Value;
edtToDate2.Date:=qryOrd153O153_010.Value;
cbItemFrom.ItemIndex:=qryOrd153O153_012.AsInteger;
if cbPrice.Enabled then
begin
if ((edtDate.Date>=edtFromDate1.Date) and (edtDate.Date<=edtToDate1.Date)) or
((edtDate.Date>=edtFromDate2.Date) and (edtDate.Date<=edtToDate2.Date)) then
cbPrice.Checked:=False
else
cbPrice.Checked:=True;
end;
end;
end;
procedure TSer500_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 C.I150_002,A.O153_003,C.I150_003,C.I150_004,D.I120_003,E.O150_002,E.O150_003,C.I150_001,A.O153_007,A.O153_008,A.O153_009,A.O153_010,A.O153_012');
qryOrd153.SQL.Add('from ORD153 A, ORD150 B, INV150 C, INV120 D, ORD150 E');
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 C.I150_010=E.O150_001');
qryOrd153.SQL.Add(' and B.O150_002='+''''+edtCust.Text+'''');
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;
end;
end;
procedure TSer500_02Form.sbAppelaterClick(Sender: TObject);
begin
inherited;
//受理人员
if not edtAppelater.Focused then edtAppelater.SetFocus;
HwSelDataForm:=THwSelDataForm.Create(Application);
HwSelDataForm.OpenSelData(qryHrm150,nil);
if HwSelDataForm.ShowModal=1 then
begin
edtAppelater.Text:=qryHrm150.FieldByName('H150_002').AsString;
edtAppelateName.Text:=qryHrm150.FieldByName('H150_003').AsString;
end;
end;
procedure TSer500_02Form.edtAppelaterExit(Sender: TObject);
begin
inherited;
//受理人员
if trim(edtAppelater.Text)='' then Exit;
if qryHrm150.Locate('H150_002',edtAppelater.Text,[]) then
begin
edtAppelater.Text:=qryHrm150.FieldByName('H150_002').Value;
edtAppelateName.Text:=qryHrm150.FieldByName('H150_003').Value;
end else
begin
edtAppelater.Text:='';
edtAppelateName.Text:='';
ShowMsg('UMS10000355'); //输入的受理人员无效
edtAppelater.SetFocus;
Abort;
end;
end;
procedure TSer500_02Form.edtCustExit(Sender: TObject);
var
ACustNo:string;
begin
inherited;
//客户编号
if trim(edtCust.Text)='' then Exit;
if qryOrd150.Locate('O150_002',edtCust.Text,[]) then
begin
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;
edtFax.Text:=qryOrd150.FieldByName('O150_006').AsString;
ACustNo:=qryOrd150.FieldByName('O150_001').AsString;
qryOrd153.Close;
qryOrd153.SQL.Clear;
qryOrd153.SQL.Add('select C.I150_002,A.O153_003,C.I150_003,C.I150_004,D.I120_003,E.O150_002,E.O150_003,C.I150_001,A.O153_007,A.O153_008,A.O153_009,A.O153_010,A.O153_012');
qryOrd153.SQL.Add('from ORD153 A, ORD150 B, INV150 C, INV120 D, ORD150 E');
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 C.I150_010=E.O150_001');
qryOrd153.SQL.Add(' and B.O150_002='+''''+edtCust.Text+'''');
qryOrd153.Open;
end else
begin
edtCust.Text:='';
edtCustName.Text:='';
edtPhone.Text:='';
edtAddress.Text:='';
edtFax.Text:='';
ShowMsg('UMS10000264'); //输入的客户编号无效
edtCust.SetFocus;
Abort;
end;
end;
procedure TSer500_02Form.edtItemExit(Sender: TObject);
var
ACustNo,AItemNo:Integer;
AMacNo:string;
ACustomerInfo:TCustomerInfo;
begin
inherited;
//产品编号
if trim(edtItem.Text)='' then Exit;
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 C.I150_002,A.O153_003,C.I150_003,C.I150_004,D.I120_003,E.O150_002,E.O150_003,C.I150_001,A.O153_007,A.O153_008,A.O153_009,A.O153_010,A.O153_012');
qryOrd153.SQL.Add('from ORD153 A, ORD150 B, INV150 C, INV120 D, ORD150 E');
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 C.I150_010=E.O150_001');
qryOrd153.SQL.Add(' and B.O150_002='+''''+edtCust.Text+'''');
qryOrd153.Open;
if qryOrd153.Locate('I150_002',edtItem.Text,[]) then
begin
edtItem.Text:=qryOrd153.FieldByName('I150_002').AsString;
edtItemName.Text:=qryOrd153.FieldByName('I150_003').AsString;
// edtMacNo.Text:=qryOrd153.FieldByName('O153_003').AsString;
ACustNo:=qryOrd150O150_001.Value;
AItemNo:=qryOrd153I150_001.Value;
AMacNo:=edtMacNo.Text;
GetCustomerInfo(ACustNo,AItemNo,AMacNo,ACustomerInfo);
edtPhone.Text:=ACustomerInfo.CustPhone;
edtFax.Text:=ACustomerInfo.CustFax;
edtAddress.Text:=ACustomerInfo.CustAddress;
end else
begin
edtItem.Text:='';
edtItemName.Text:='';
edtMacNo.Text:='';
ShowMsg('UMS10000267'); //输入的产品编号无效
edtItem.SetFocus;
Abort;
end;
end;
procedure TSer500_02Form.edtMacNoExit(Sender: TObject);
begin
inherited;
//机身编号
if trim(edtMacNo.Text)='' then Exit;
if not qryOrd150.Locate('O150_002',edtCust.Text,[]) then
begin
ShowMsg('UMS10000266'); //必须先输入正确的客户编号
edtCust.SetFocus;
Abort;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -