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

📄 ser500_02.pas

📁 这是一个功能齐全的,代码完整的ERP企业信息管理系统,现在上传和大家分享
💻 PAS
📖 第 1 页 / 共 4 页
字号:
  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 + -