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

📄 khth_unit.pas

📁 用DELPHI实现的销售管理系统
💻 PAS
字号:
unit khth_unit;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, ComCtrls, Grids, DBGrids, StdCtrls, Buttons, ToolWin;

type
  Tkhth_form = class(TForm)
    GroupBox6: TGroupBox;
    SpeedButton15: TSpeedButton;
    SpeedButton16: TSpeedButton;
    SpeedButton17: TSpeedButton;
    SpeedButton18: TSpeedButton;
    SpeedButton19: TSpeedButton;
    GroupBox1: TGroupBox;
    Label3: TLabel;
    Label4: TLabel;
    Label5: TLabel;
    Label6: TLabel;
    Label7: TLabel;
    SpeedButton10: TSpeedButton;
    SpeedButton11: TSpeedButton;
    Edit2: TEdit;
    Edit3: TEdit;
    Edit4: TEdit;
    Edit5: TEdit;
    DateTimePicker1: TDateTimePicker;
    Edit30: TEdit;
    Edit31: TEdit;
    Edit32: TEdit;
    Edit33: TEdit;
    Edit34: TEdit;
    GroupBox2: TGroupBox;
    Label8: TLabel;
    Label9: TLabel;
    Label10: TLabel;
    Label11: TLabel;
    Label12: TLabel;
    Label13: TLabel;
    Label14: TLabel;
    Label15: TLabel;
    Label16: TLabel;
    SpeedButton5: TSpeedButton;
    Edit8: TEdit;
    Edit9: TEdit;
    Edit10: TEdit;
    Edit11: TEdit;
    Edit12: TEdit;
    Edit13: TEdit;
    Edit14: TEdit;
    Edit6: TEdit;
    Edit7: TEdit;
    Edit29: TEdit;
    StatusBar1: TStatusBar;
    LV: TListView;
    procedure SpeedButton18Click(Sender: TObject);
    procedure FormCreate(Sender: TObject);
    procedure SpeedButton15Click(Sender: TObject);
    procedure SpeedButton17Click(Sender: TObject);
    procedure SpeedButton19Click(Sender: TObject);
    procedure SpeedButton5Click(Sender: TObject);
    procedure SpeedButton11Click(Sender: TObject);
    procedure Edit2KeyDown(Sender: TObject; var Key: Word;
      Shift: TShiftState);
    procedure Edit3KeyDown(Sender: TObject; var Key: Word;
      Shift: TShiftState);
    procedure Edit4KeyDown(Sender: TObject; var Key: Word;
      Shift: TShiftState);
    procedure Edit5KeyDown(Sender: TObject; var Key: Word;
      Shift: TShiftState);
    procedure Edit6KeyDown(Sender: TObject; var Key: Word;
      Shift: TShiftState);
    procedure Edit7KeyDown(Sender: TObject; var Key: Word;
      Shift: TShiftState);
    procedure Edit8KeyDown(Sender: TObject; var Key: Word;
      Shift: TShiftState);
    procedure Edit9KeyDown(Sender: TObject; var Key: Word;
      Shift: TShiftState);
    procedure Edit10KeyDown(Sender: TObject; var Key: Word;
      Shift: TShiftState);
    procedure Edit13KeyDown(Sender: TObject; var Key: Word;
      Shift: TShiftState);
    procedure Edit14KeyDown(Sender: TObject; var Key: Word;
      Shift: TShiftState);
    procedure SpeedButton10Click(Sender: TObject);
    procedure SpeedButton16Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  khth_form: Tkhth_form;

implementation

uses data_unit, jh_sp_find_unit, jh_yg_find_unit, kh_th_find_unit,
  khth_find_unit, main_unit;

{$R *.dfm}

procedure Tkhth_form.SpeedButton18Click(Sender: TObject);
begin
  close;
end;

procedure Tkhth_form.FormCreate(Sender: TObject);
begin
  self.Top := 74;
  self.Left := 11;
  self.Height := 491;
  self.Width := 767;
  datetimepicker1.date := date;
end;

procedure Tkhth_form.SpeedButton15Click(Sender: TObject);
begin
  if (length(edit2.Text) <> 0) and (length(edit6.text) <> 0) and
    (length(edit3.text) <> 0) then
  begin
    with database do
    begin
      if (length(edit13.Text) = 0) and (length(edit14.Text) = 0) then
      begin
        edit13.Text := '0';
        edit14.Text := '0';
      end;
      edit14.Text := '-' + edit14.Text;
      edit29.Text := floattostr(strtofloat(edit13.Text) *
        strtofloat(edit14.Text));
      edit30.Text := formatdatetime('MM-dd-yy', datetimepicker1.date);
      edit33.Text := formatdatetime('MM-dd-yy', datetimepicker1.date);
      edit34.Text := formatdatetime('MM-dd-yy', datetimepicker1.date);
      adoq1.SQL.Clear;
      adoq1.SQL.Add('insert into khthd(录单日期,单据编码,客户名称,经手人,备注,商品简码,商品编码,商品名称,类别,规格,型号,单位,参考单价,数量,金额) values(:ldrq,:djbm,:khmc,:jsr,:bz,:spjm,:spbm,:spmc,:lb,:gg,:xh,:dw,:ckdj,:sl,:je)');
      adoq1.parameters.ParamByName('ldrq').value := edit30.Text;
      adoq1.parameters.ParamByName('djbm').value := edit2.text;
      adoq1.parameters.ParamByName('khmc').value := edit3.text;
      adoq1.Parameters.ParamByName('jsr').Value := edit4.Text;
      adoq1.Parameters.ParamByName('bz').Value := edit5.text;
      adoq1.parameters.ParamByName('spjm').value := edit6.text;
      adoq1.parameters.ParamByName('spbm').value := edit7.text;
      adoq1.parameters.ParamByName('spmc').value := edit8.text;
      adoq1.Parameters.ParamByName('lb').Value := edit9.Text;
      adoq1.Parameters.ParamByName('gg').Value := edit10.text;
      adoq1.parameters.ParamByName('xh').value := edit11.text;
      adoq1.parameters.ParamByName('dw').value := edit12.text;
      adoq1.parameters.ParamByName('ckdj').value := strtofloat(edit13.text);
      adoq1.Parameters.ParamByName('sl').Value := edit14.Text;
      adoq1.Parameters.ParamByName('je').Value := strtofloat(edit29.Text);
      adoq1.ExecSQL;
      adoq1.SQL.Clear;
      adoq1.SQL.Add('select 录单日期,单据编码,客户名称,经手人,备注,商品简码,商品编码,商品名称,类别,规格,型号,单位,参考单价,数量 from khthd where 单据编码=:djbm and 录单日期 between #' + edit33.text + '# and #' + edit34.text + '#');
      adoq1.Parameters.ParamByName('djbm').Value := edit2.Text;
      adoq1.Active := true;
      FrmMain.AddData(LV, Adoq1);
      statusbar1.Panels[1].Text := inttostr(adoq1.Recordset.RecordCount);
      edit6.Clear;
      edit7.Clear;
      edit8.Clear;
      edit9.Clear;
      edit10.clear;
      edit11.Clear;
      edit12.clear;
      edit13.Text := '0';
      edit14.Text := '0';
      datetimepicker1.date := date;
      if (length(edit2.Text) <> 0) and (length(edit3.Text) <> 0) then
        edit6.SetFocus;
    end;
  end
  else
  begin
    showmessage('请正确输入退货单号,客户名称,商品名称!');
    if (length(edit2.Text) <> 0) and (length(edit3.Text) <> 0) then
      edit6.SetFocus
    else
      edit2.SetFocus;
  end;

end;

procedure Tkhth_form.SpeedButton17Click(Sender: TObject);
begin
  if lv.Items.Count = 0 then
  begin
    ShowMessage('记录集为空,不能够删除');
    exit;
  end;

  if LV.SelCount = 0 then
  begin
    ShowMessage('请选中一条要删除的记录');
    exit;
  end;

  if MessageDlg('是否删除所选中的记录,请确定', mtConfirmation, [mbYes, mbNo], 0)
    = mrYes then
  begin
    if FrmMain.ExecSQL('delete from khthd where 单据编码='''+Lv.Selected.Caption+''' and 商品编码='''+LV.Selected.SubItems[5]+'''')
      then
    else
    begin
      ShowMessage('删除记录时操作失误,记录未删除,请检查');
      exit;
    end;
  end;

  LV.Selected.Delete;

end;

procedure Tkhth_form.SpeedButton19Click(Sender: TObject);
begin
  with database do
  begin
    adoq1.Connection := adoc;
    adoq1.SQL.Clear;
    adoq1.SQL.Add('select 录单日期,单据编码,客户名称,经手人,备注,商品简码,商品编码,商品名称,类别,规格,型号,单位,参考单价,数量 from khthd order by 编号');
    adoq1.Active := true;
    FrmMain.AddData(LV, AdoQ1);
    statusbar1.Panels[1].Text := inttostr(adoq1.Recordset.RecordCount);
  end;

end;

procedure Tkhth_form.SpeedButton5Click(Sender: TObject);
begin
  jh_sp_find_form := Tjh_sp_find_form.create(application);
  jh_sp_find_form.show;
  jh_sp_find_form.DBGrid1.Visible := false;
  jh_sp_find_form.DBGrid3.Visible := true;
  jh_sp_find_form.DBGrid2.Visible := false;

end;

procedure Tkhth_form.SpeedButton11Click(Sender: TObject);
begin
  jh_yg_find_form := Tjh_yg_find_form.create(application);
  jh_yg_find_form.show;
  jh_yg_find_form.DBGrid1.Visible := false;
  jh_yg_find_form.DBGrid2.Visible := false;
  jh_yg_find_form.DBGrid3.Visible := false;
  jh_yg_find_form.DBGrid4.Visible := false;
  jh_yg_find_form.DBGrid5.Visible := false;
  jh_yg_find_form.DBGrid6.Visible := true;

end;

procedure Tkhth_form.Edit2KeyDown(Sender: TObject; var Key: Word;
  Shift: TShiftState);
begin
  if key = vk_return then
    edit3.SetFocus;
end;

procedure Tkhth_form.Edit3KeyDown(Sender: TObject; var Key: Word;
  Shift: TShiftState);
begin
  //if key=vk_return then
  //speedbutton10click(nil);
end;

procedure Tkhth_form.Edit4KeyDown(Sender: TObject; var Key: Word;
  Shift: TShiftState);
begin
  if key = vk_return then
    speedbutton11click(nil);
end;

procedure Tkhth_form.Edit5KeyDown(Sender: TObject; var Key: Word;
  Shift: TShiftState);
begin
  if key = vk_return then
    edit6.SetFocus;

end;

procedure Tkhth_form.Edit6KeyDown(Sender: TObject; var Key: Word;
  Shift: TShiftState);
begin
  if key = vk_return then
    speedbutton5click(nil);
end;

procedure Tkhth_form.Edit7KeyDown(Sender: TObject; var Key: Word;
  Shift: TShiftState);
begin
  if key = vk_return then
    edit8.SetFocus;

end;

procedure Tkhth_form.Edit8KeyDown(Sender: TObject; var Key: Word;
  Shift: TShiftState);
begin
  if key = vk_return then
    edit9.SetFocus;

end;

procedure Tkhth_form.Edit9KeyDown(Sender: TObject; var Key: Word;
  Shift: TShiftState);
begin
  if key = vk_return then
    edit10.SetFocus;

end;

procedure Tkhth_form.Edit10KeyDown(Sender: TObject; var Key: Word;
  Shift: TShiftState);
begin
  if key = vk_return then
    edit11.SetFocus;

end;

procedure Tkhth_form.Edit13KeyDown(Sender: TObject; var Key: Word;
  Shift: TShiftState);
begin
  if key = vk_return then
    edit14.SetFocus;

end;

procedure Tkhth_form.Edit14KeyDown(Sender: TObject; var Key: Word;
  Shift: TShiftState);
begin
  if key = vk_return then
    speedbutton15click(nil);
end;

procedure Tkhth_form.SpeedButton10Click(Sender: TObject);
begin
  kh_th_find_form := Tkh_th_find_form.create(application);
  kh_th_find_form.show;
end;

procedure Tkhth_form.SpeedButton16Click(Sender: TObject);
begin
  khth_find_form := Tkhth_find_form.create(application);
  khth_find_form.show;
end;

end.

⌨️ 快捷键说明

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