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

📄 fwdjb.pas

📁 服务信息管理系统
💻 PAS
📖 第 1 页 / 共 2 页
字号:
          SQL.Add('select Count(*) as fwlxsl from fwxxk where Trim(fw_mc)=:lsbl_fwmc');
          ParamByName('lsbl_fwmc').AsString := selecttext1;
          Prepare;
          open;
          if FieldByName('fwlxsl').AsInteger = 0 then
            begin
              Close;
              MessageDlg('没有找到服务类型【' + selecttext1 + '】,请重新选择', mtWarning, [mbOk], 0);
              fwlxEdit.SelectAll;
              fwlxEdit.SetFocus;
              Result := False;
              Exit;
            end;
          Close;
        end;
    end;
  if (copy(Verify_lx, 3, 1) = '1') then
    begin
      if fwryedit.Text <> '' then
        begin
          selecttext1 := Trim(fwryEdit.Text); //将服务人员姓名赋值全局临时变量selecttext1
          with cxQuery do //下面进行服务人员的查询,如果没有找到则不能进行数据保存
            begin
              SQL.clear;
              SQL.Add('select Count(*) as fwrysl from ygdasjk where Trim(yg_xm)=:lsbl_ygxm');
              ParamByName('lsbl_ygxm').AsString := selecttext1;
              Prepare;
              open;
              if FieldByName('fwrysl').AsInteger = 0 then
                begin
                  Close;
                  MessageDlg('没有找到服务人员【' + selecttext1 + '】,请重新选择', mtWarning, [mbOk], 0);
                  fwryEdit.SelectAll;
                  fwryEdit.SetFocus;
                  Result := False;
                  Exit;
                end;
              Close;
            end;
        end;
    end;
  Result := True;
end;

function Tfrmfwdjb.Getkhxxfunction(khxxdata: string): Integer; //客户查询函数
var
  lsbl_cxkhxx: string;
begin
  lsbl_cxkhxx := '%' + khxxdata + '%';
  with cxQuery do //下面进行客户名称的查询,如果没有找到则不能进行数据保存
    begin
      SQL.clear;
      SQL.Add('select kh_bh,kh_mc from khxxk where kh_bh like :lsbl_cxnr');
      SQL.Add('or kh_mc like :lsbl_cxnr');
      SQL.Add('or kh_zjm like :lsbl_cxnr');
      ParamByName('lsbl_cxnr').AsString := lsbl_cxkhxx;
      Prepare;
      open;
      if RecordCount = 0 then //=0,即没有找到此客户
        begin
          MessageDlg('没有找到客户【' + khxxdata + '】', mtWarning, [mbOk], 0);
          Close;
          Result := 0;
          Exit;
        end;
      if RecordCount = 1 then //=1,即找到了此客户
        begin
          selecttext1 := Trim(FieldByName('kh_bh').AsString);
          selecttext2 := Trim(FieldByName('kh_mc').AsString);
          Close;
          Result := 1;
          Exit;
        end;
      if RecordCount > 1 then //>1,即找到了客户,但不唯一需进行选择
        begin
          Close;
          Result := 2;
          Exit;
        end;
    end;
end;

procedure Tfrmfwdjb.SaveToolButtonClick(Sender: TObject);
var
  lsbl_save: Boolean;
begin
  lsbl_save := dataverify('111');
  if lsbl_save = True then
    begin
      lsbl_save := datasave();
      if lsbl_save = True then
        begin
          fwdjb_bjzt := ''; //将变量fwdjb_bjzt赋值为空状态
          enabledstatus(False);
          SaveToolButton.Enabled := False;
        end;
    end;
end;

function Tfrmfwdjb.datasave: Boolean; //数据保存函数
begin
  try
    frmfwdjbDataModule.fwdjbTable.ApplyUpdates;
    Result := True;
  except
    Messagedlg('数据保存失败', mtWarning, [mbOk], 0);
    Result := False;
  end;
end;

procedure Tfrmfwdjb.khxzSpeedButtonClick(Sender: TObject);
begin
  selecttext1 := '';
  selecttext2 := '';
  selecttext3 := '';
  selecttext4 := '';
  frmkhzlcx := Tfrmkhzlcx.Create(Self);
  with frmkhzlcx do
    begin
      khzlcx_data := '';
      ShowModal;
    end;
  if selecttext1 <> '' then
    begin
      frmfwdjbDataModule.fwdjbTable.FieldByName('fwdj_khbh').AsString := selecttext1;
      khmcEdit.Text := selecttext2;
      if selecttext3 <> '' then
        gjrqEdit.Value := strtodate(selecttext3)
      else
        gjrqEdit.Text := '';
      jqxhEdit.Text := selecttext4;
    end;
end;

procedure Tfrmfwdjb.khmcEditExit(Sender: TObject);
var
  lsbl_khzlcxdata: string;
begin
  if khmcEdit.Text = '' then
    begin
      MessageDlg('客户名称不能为空', mtWarning, [mbOK], 0);
      KhmcEdit.SetFocus;
      Exit;
    end;
  case Getkhxxfunction(Trim(khmcEdit.Text)) of
    0: lsbl_khzlcxdata := '';
    1:
      begin
        frmfwdjbDataModule.fwdjbTable.FieldByName('fwdj_khbh').AsString := selecttext1;
        khmcEdit.Text := selecttext2;
        Exit;
      end;
    2: lsbl_khzlcxdata := Trim(khmcEdit.Text);
  end;
  selecttext1 := '';
  selecttext2 := '';
  selecttext3 := '';
  selecttext4 := '';
  frmkhzlcx := Tfrmkhzlcx.Create(Self);
  with frmkhzlcx do
    begin
      khzlcx_data := lsbl_khzlcxdata;
      ShowModal;
    end;
  if selecttext1 <> '' then
    begin
      frmfwdjbDataModule.fwdjbTable.FieldByName('fwdj_khbh').AsString := selecttext1;
      khmcEdit.Text := selecttext2;
      if selecttext3 <> '' then
        gjrqEdit.Value := strtodate(selecttext3)
      else
        gjrqEdit.Text := '';
      jqxhEdit.Text := selecttext4;
    end
  else
    begin
      KhmcEdit.SetFocus;
      Exit;
    end;
end;

procedure Tfrmfwdjb.fwryEditExit(Sender: TObject);
var
  lsbl_fwrycxdata: string;
begin
  if fwryEdit.Text <> '' then
    begin
      case Getfwryfunction(Trim(fwryEdit.Text)) of
        0: lsbl_fwrycxdata := '';
        1:
          begin
            frmfwdjbDataModule.fwdjbTable.FieldByName('fwdj_rybh').AsString := selecttext1;
            fwryEdit.Text := selecttext2;
            Exit;
          end;
        2: lsbl_fwrycxdata := Trim(fwryEdit.Text);
      end;
      selecttext1 := '';
      selecttext2 := '';
      frmygzlxz := Tfrmygzlxz.Create(Self);
      with frmygzlxz do
        begin
          fwrycx_data := lsbl_fwrycxdata;
          ShowModal;
        end;
      if selecttext1 <> '' then
        begin
          frmfwdjbDataModule.fwdjbTable.FieldByName('fwdj_rybh').AsString := selecttext1;
          fwryEdit.Text := selecttext2;
        end
      else
        begin
          fwryEdit.SetFocus;
          Exit;
        end;
    end;
end;

function Tfrmfwdjb.Getfwryfunction(fwrydata: string): Integer; //服务人员查询函数
var
  lsbl_cxfwry: string;
begin
  lsbl_cxfwry := '%' + fwrydata + '%';
  with cxQuery do //下面进行服务人员的查询,如果没有找到则不能进行数据保存
    begin
      SQL.clear;
      SQL.Add('select yg_bh,yg_xm from ygdasjk where yg_bh like :lsbl_cxnr');
      SQL.Add('or yg_xm like :lsbl_cxnr');
      SQL.Add('or yg_zjm like :lsbl_cxnr');
      ParamByName('lsbl_cxnr').AsString := lsbl_cxfwry;
      Prepare;
      open;
      if RecordCount = 0 then //=0,即没有找到此服务人员
        begin
          MessageDlg('没有找到服务人员【' + fwrydata + '】', mtWarning, [mbOk], 0);
          Close;
          Result := 0;
          Exit;
        end;
      if RecordCount = 1 then //=1,即找到了此服务人员
        begin
          selecttext1 := Trim(FieldByName('yg_bh').AsString);
          selecttext2 := Trim(FieldByName('yg_xm').AsString);
          Close;
          Result := 1;
          Exit;
        end;
      if RecordCount > 1 then //>1,即找到了服务人员,但不唯一需进行选择
        begin
          Close;
          Result := 2;
          Exit;
        end;
    end;
end;

procedure Tfrmfwdjb.fwlxEditExit(Sender: TObject);
var
  lsbl_fwlxcxdata: string;
begin
  if fwlxEdit.Text <> '' then
    begin
      case Getfwlxfunction(Trim(fwlxEdit.Text)) of
        0: lsbl_fwlxcxdata := '';
        1:
          begin
            frmfwdjbDataModule.fwdjbTable.FieldByName('fwdj_lxbh').AsString := selecttext1;
            fwlxEdit.Text := selecttext2;
            Exit;
          end;
        2: lsbl_fwlxcxdata := Trim(fwlxEdit.Text);
      end;
      selecttext1 := '';
      selecttext2 := '';
      frmfwlxxz := Tfrmfwlxxz.Create(Self);
      with frmfwlxxz do
        begin
          fwlxcx_data := lsbl_fwlxcxdata;
          ShowModal;
        end;
      if selecttext1 <> '' then
        begin
          frmfwdjbDataModule.fwdjbTable.FieldByName('fwdj_lxbh').AsString := selecttext1;
          fwlxEdit.Text := selecttext2;
        end
      else
        begin
          fwlxEdit.SetFocus;
          Exit;
        end;
    end;
end;

function Tfrmfwdjb.Getfwlxfunction(fwlxdata: string): Integer; //服务人员查询函数
var
  lsbl_cxfwlx: string;
begin
  lsbl_cxfwlx := '%' + fwlxdata + '%';
  with cxQuery do //下面进行服务类型的查询,如果没有找到则不能进行数据保存
    begin
      SQL.clear;
      SQL.Add('select fw_bh,fw_mc from fwxxk where fw_bh like :lsbl_cxnr');
      SQL.Add('or fw_mc like :lsbl_cxnr');
      ParamByName('lsbl_cxnr').AsString := lsbl_cxfwlx;
      Prepare;
      open;
      if RecordCount = 0 then //=0,即没有找到此服务类型
        begin
          MessageDlg('没有找到服务类型【' + fwlxdata + '】', mtWarning, [mbOk], 0);
          Close;
          Result := 0;
          Exit;
        end;
      if RecordCount = 1 then //=1,即找到了此服务类型
        begin
          selecttext1 := Trim(FieldByName('fw_bh').AsString);
          selecttext2 := Trim(FieldByName('fw_mc').AsString);
          Close;
          Result := 1;
          Exit;
        end;
      if RecordCount > 1 then //>1,即找到了服务类型,但不唯一需进行选择
        begin
          Close;
          Result := 2;
          Exit;
        end;
    end;
end;

end.

⌨️ 快捷键说明

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