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

📄 buyinfounit.pas

📁 客户关系管理系统,可以进行一些简单的客户关系管理
💻 PAS
📖 第 1 页 / 共 2 页
字号:
      ComboBox3.Items.Add(FieldByName('name').AsString);
      Next;
    end;
    ComboBox3.ItemIndex := 0;
  end;
end;

procedure TBuyInfo_Form.AddShopInfo;
begin
  with Datamodule_Unit.DM.Aq_MacInfo do
  begin
    Close;
    Sql.Clear;
    Sql.Add('Select * from 购机商店表');
    try
      Open;
    except
    end;
    First;
    ComboBox2.Items.Clear;
    while not Eof do
    begin
      ComboBox2.Items.Add(FieldByName('name').AsString);
      Next;
    end;
    ComboBox2.ItemIndex := 0;
  end;
end;



procedure TBuyInfo_Form.FormShow(Sender: TObject);
begin
  AddMacInfo;
  AddShopInfo;
  AddComInfo;
  DateTimePicker1.Date := Now();
  DateTimePicker2.Date := Now();
  if ComboBox1.Items.Count = 0 then
  begin
    Application.MessageBox('机器型号信息为空,请先添加机器型号信息!','提示',Mb_Ok or Mb_IconStop);
    Exit;
  end;
  if ComboBox2.Items.Count = 0 then
  begin
    Application.MessageBox('购机商店信息为空,请先添加商店信息!','提示',Mb_Ok or Mb_IconStop);
    Exit;
  end;
  if ComboBox3.Items.Count = 0 then
  begin
    Application.MessageBox('分公司信息为空,请先添加分公司信息!','提示',Mb_Ok or Mb_IconStop);
    Exit;
  end;
  ClearEdit;
  if G_Detail = True then
  begin
    LoadAllInfo(G_Bar);
  end;
end;



procedure TBuyInfo_Form.ComboBox1KeyDown(Sender: TObject; var Key: Word;
  Shift: TShiftState);
begin
  if Key = VK_RETURN then
  begin
    Perform(WM_NEXTDLGCTL, 0, 0);
  end;
end;

procedure TBuyInfo_Form.ComboBox2KeyDown(Sender: TObject; var Key: Word;
  Shift: TShiftState);
begin
  if Key = VK_RETURN then
  begin
    Perform(WM_NEXTDLGCTL, 0, 0);
  end;
end;

procedure TBuyInfo_Form.DateTimePicker1KeyDown(Sender: TObject;
  var Key: Word; Shift: TShiftState);
begin
  if Key = VK_RETURN then
  begin
    Perform(WM_NEXTDLGCTL, 0, 0);
  end;
end;

procedure TBuyInfo_Form.DateTimePicker2KeyDown(Sender: TObject;
  var Key: Word; Shift: TShiftState);
begin
  if Key = VK_RETURN then
  begin
    Perform(WM_NEXTDLGCTL, 0, 0);
  end;
end;

procedure TBuyInfo_Form.ComboBox3KeyDown(Sender: TObject; var Key: Word;
  Shift: TShiftState);
begin
  if Key = VK_RETURN then
  begin
    Perform(WM_NEXTDLGCTL, 0, 0);
  end;
end;




procedure TBuyInfo_Form.ComboBox1Exit(Sender: TObject);
begin
  if ComboBox1.Items.Count = 0 then
  begin
    Application.MessageBox('机器型号表为空!请先维护机器型号库!', '提示', Mb_Ok or Mb_IconWarning);
  end;
end;

procedure TBuyInfo_Form.ComboBox2Exit(Sender: TObject);
begin
  if ComboBox2.Items.Count = 0 then
  begin
    Application.MessageBox('商店信息为空!请先维护商店信息库!', '提示', Mb_Ok or Mb_IconWarning);
  end;
end;

procedure TBuyInfo_Form.ComboBox3Exit(Sender: TObject);
begin
  if ComboBox3.Items.Count = 0 then
  begin
    Application.MessageBox('分公司信息为空!请先维护分公司信息库!', '提示', Mb_Ok or Mb_IconWarning);
  end;
end;

procedure TBuyInfo_Form.LoadAllInfo(In_Bar: string);
begin
  with Datamodule_Unit.DM.Aq_BuyInfo do
  begin
    if Locate('In_Bar', In_Bar, []) then
    begin
      UserType := FieldByName('User_Type').AsString;
      NoPay := FieldByName('NoPay').AsString;
      Reinstall := FieldByName('Reinstall').AsString;
      case StrToIntdef(UserType, 0) of
        11:
          begin
            BuyInfo_Form.CheckBox1.Checked := True;
            BuyInfo_Form.CheckBox2.Checked := True;
          end;
        10:
          begin
            BuyInfo_Form.CheckBox1.Checked := True;
            BuyInfo_Form.CheckBox2.Checked := False;
          end;
        0:
          begin
            BuyInfo_Form.CheckBox1.Checked := False;
            BuyInfo_Form.CheckBox2.Checked := False;
          end;
        01:
          begin
            BuyInfo_Form.CheckBox1.Checked := False;
            BuyInfo_Form.CheckBox2.Checked := True;
          end;
      end;
      if NoPay = '1' then
      begin
        RadioGroup1.ItemIndex := 0;
      end
      else
      begin
        RadioGroup1.ItemIndex := 1;
      end;
      if Reinstall = '1' then
      begin
        RadioGroup2.ItemIndex := 0;
      end
      else
      begin
        RadioGroup2.ItemIndex := 1;
      end;
      BuyInfo_Form.Edit1.Text := FieldByName('In_Bar').AsString;
      BuyInfo_Form.Edit2.Text := FieldByName('Out_Bar').AsString;
      BuyInfo_Form.ComboBox1.Text := FieldByName('Mac_Type').AsString;
      BuyInfo_Form.Edit3.Text := FieldByName('Unit_Price').AsString;
      BuyInfo_Form.Edit4.Text := FieldByName('User_Name').AsString;
      BuyInfo_Form.Edit5.Text := FieldByName('Post_Code').AsString;
      BuyInfo_Form.Edit6.Text := FieldByName('Address').AsString;
      BuyInfo_Form.Edit7.Text := FieldByName('Phone_Code').AsString;
      BuyInfo_Form.Edit8.Text := FieldByName('Home_Phone').AsString;
      BuyInfo_Form.Edit9.Text := FieldByName('Office_Phone').AsString;
      BuyInfo_Form.Edit10.Text := FieldByName('Mobile').AsString;
      BuyInfo_Form.ComboBox2.Text := FieldByName('BuyShop').AsString;
      BuyInfo_Form.Edit12.Text := FieldByName('Card_id').AsString;
      BuyInfo_Form.DateTimePicker1.Date := FieldByName('Buy_Date').AsDatetime;
      BuyInfo_Form.DateTimePicker2.Date := FieldByName('Install_Date').AsDatetime;
      BuyInfo_Form.Edit13.Text := FieldByName('RepairCon').AsString;
      BuyInfo_Form.Edit15.Text := FieldByName('Delay').AsString;
      BuyInfo_Form.Edit16.Text := FieldByName('Service_Id').AsString;
      BuyInfo_Form.Edit17.Text := FieldByName('Worker_Name').AsString;
      BuyInfo_Form.Edit18.Text := FieldByName('Cent').AsString;
      BuyInfo_Form.ComboBox3.Text := FieldByName('Unit_Name').AsString;
      BuyInfo_Form.Memo1.Text := FieldByName('Remark').AsString;
    end;
  end;
end;

procedure TBuyInfo_Form.ClearEdit; //清除编辑框内的内容
var
  i: integer;
begin
  for i := 0 to ComponentCount - 1 do
  begin
    if Components[i] is Tedit then
    begin
      (Components[i] as Tedit).Clear;
    end;
  end;
  Memo1.Lines.Clear;
  Edit1.SetFocus;
end;



procedure TBuyInfo_Form.SaveAllData;
begin
  if (Edit1.Text = '') or (Edit4.Text = '') then
  begin
    Application.MessageBox('必须输入完整的信息才能保存!','提示',Mb_Ok or Mb_IconStop);
    Exit;
  end;
  if RadioGroup1.ItemIndex = 0 then
  begin
    NoPay := '1';
  end
  else
  begin
    NoPay := '0';
  end;
  if CheckBox1.Checked and CheckBox2.Checked then
  begin
    UserType := '11';
  end;
  if not CheckBox1.Checked and not CheckBox2.Checked then
  begin
    UserType := '00';
  end;
  if CheckBox1.Checked and not CheckBox2.Checked then
  begin
    UserType := '10';
  end;
  if not CheckBox1.Checked and CheckBox2.Checked then
  begin
    UserType := '01';
  end;
  if RadioGroup2.ItemIndex = 0 then
  begin
    Reinstall := '1';
  end
  else
  begin
    Reinstall := '0';
  end;
  with Datamodule_Unit.DM.Aq_BuyInfo do
  begin
    Close;
    Sql.Clear;
    Sql.Add('select * from 用户购机资料表');
    try
      Open;
    except
    end;
    if Locate('In_Bar', Edit1.Text, []) then // 已有此记录
    begin
      Edit;
      FieldByName('User_Type').AsString := UserType;
      FieldByName('NoPay').AsString := NoPay;
      FieldByName('Reinstall').AsString := Reinstall;
      FieldByName('In_Bar').AsString := Edit1.Text;
      FieldByName('Out_Bar').AsString := Edit2.Text;
      FieldByName('Mac_Type').AsString := ComboBox1.Text;
      FieldByName('Unit_Price').AsString := Edit3.Text;
      FieldByName('User_Name').AsString := Edit4.Text;
      FieldByName('Post_Code').AsString := Edit5.Text;
      FieldByName('Address').AsString := Edit6.Text;
      FieldByName('Phone_Code').AsString := Edit7.Text;
      FieldByName('Home_Phone').AsString := Edit8.Text;
      FieldByName('Office_Phone').AsString := Edit9.Text;
      FieldByName('Mobile').AsString := Edit10.Text;
      FieldByName('BuyShop').AsString := ComboBox2.Text;
      FieldByName('Card_id').AsString := Edit12.Text;
      FieldByName('Buy_Date').AsDatetime := DateTimePicker1.Date;
      FieldByName('Install_Date').AsDatetime := DateTimePicker2.Date;
      FieldByName('RepairCon').AsString := Edit13.Text;
      FieldByName('Delay').AsString := Edit15.Text;
      FieldByName('Service_Id').AsString := Edit16.Text;
      FieldByName('Worker_Name').AsString := Edit17.Text;
      FieldByName('Cent').AsString := Edit18.Text;
      FieldByName('Unit_Name').AsString := ComboBox3.Text;
      FieldByName('Remark').AsString := Memo1.Text;
      try
        Post;
        Application.MessageBox('保存成功!', '提示', Mb_Ok or Mb_IconInformation);
      except
        Application.MessageBox('保存失败!', '提示', Mb_Ok or Mb_IconError);
      end;
    end
    else //
    begin
      Append;
      FieldByName('User_Type').AsString := UserType;
      FieldByName('NoPay').AsString := NoPay;
      FieldByName('Reinstall').AsString := Reinstall;
      FieldByName('In_Bar').AsString := Edit1.Text;
      FieldByName('Out_Bar').AsString := Edit2.Text;
      FieldByName('Mac_Type').AsString := ComboBox1.Text;
      FieldByName('Unit_Price').AsString := Edit3.Text;
      FieldByName('User_Name').AsString := Edit4.Text;
      FieldByName('Post_Code').AsString := Edit5.Text;
      FieldByName('Address').AsString := Edit6.Text;
      FieldByName('Phone_Code').AsString := Edit7.Text;
      FieldByName('Home_Phone').AsString := Edit8.Text;
      FieldByName('Office_Phone').AsString := Edit9.Text;
      FieldByName('Mobile').AsString := Edit10.Text;
      FieldByName('BuyShop').AsString := ComboBox2.Text;
      FieldByName('Card_id').AsString := Edit12.Text;
      FieldByName('Buy_Date').AsDatetime := DateTimePicker1.Date;
      FieldByName('Install_Date').AsDatetime := DateTimePicker2.Date;
      FieldByName('RepairCon').AsString := Edit13.Text;
      FieldByName('Delay').AsString := Edit15.Text;
      FieldByName('Service_Id').AsString := Edit16.Text;
      FieldByName('Worker_Name').AsString := Edit17.Text;
      FieldByName('Cent').AsString := Edit18.Text;
      FieldByName('Unit_Name').AsString := ComboBox3.Text;
      FieldByName('Remark').AsString := Memo1.Text;
      try
        Post;
        Application.MessageBox('保存成功!', '提示', Mb_Ok or Mb_IconInformation);
      except
        Application.MessageBox('保存失败!', '提示', Mb_Ok or Mb_IconError);
      end;
    end;
  end;
end;

procedure TBuyInfo_Form.BitBtn2Click(Sender: TObject);
begin
  Self.Close;
end;

procedure TBuyInfo_Form.BitBtn1Click(Sender: TObject);
begin
  SaveAllData;
  Self.Close;
end;

procedure TBuyInfo_Form.FormClose(Sender: TObject;
  var Action: TCloseAction);
begin
  Action := CaFree;
  BuyInfo_Form := nil;
end;

procedure TBuyInfo_Form.Memo1KeyDown(Sender: TObject; var Key: Word;
  Shift: TShiftState);
begin
  if key = 13 then
  begin
    BitBtn1.Click;
  end;
end;

procedure TBuyInfo_Form.Edit3Enter(Sender: TObject);
begin
  if Pos ('¥',Tedit(Sender).Text) >0 then
  begin
    Tedit(Sender).Text := Copy(Tedit(Sender).Text,pos ('¥',Tedit(Sender).Text)+2,Length(Tedit(Sender).Text));
  end;
end;

end.

⌨️ 快捷键说明

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