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

📄 tswh_form.pas

📁 sql版功能齐全
💻 PAS
字号:
unit TSWH_Form;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, TFlatButtonUnit, ComCtrls, TFlatGroupBoxUnit, StdCtrls,
  TFlatMemoUnit, TFlatComboBoxUnit, TFlatEditUnit, TFlatRadioButtonUnit,
  DB, DBTables, Grids, DBGrids, ADODB;

type
  TTSWH_F = class(TForm)
    TSWH_PC: TPageControl;
    TSXGSC_TS: TTabSheet;
    TSLBBJ_TS: TTabSheet;
    FlatGroupBox1: TFlatGroupBox;
    FlatGroupBox2: TFlatGroupBox;
    Label1: TLabel;
    Label2: TLabel;
    Label3: TLabel;
    Label4: TLabel;
    Label5: TLabel;
    Label6: TLabel;
    Label7: TLabel;
    Label8: TLabel;
    Label9: TLabel;
    Label10: TLabel;
    Label11: TLabel;
    Label12: TLabel;
    Label13: TLabel;
    Label14: TLabel;
    Label15: TLabel;
    BH_FE: TFlatEdit;
    SM_FE: TFlatEdit;
    ZZ_FE: TFlatEdit;
    LB_FCB: TFlatComboBox;
    CBRQ_FE: TFlatEdit;
    CBS_FE: TFlatEdit;
    DJ_FE: TFlatEdit;
    SL_FE: TFlatEdit;
    BZ_FM: TFlatMemo;
    FlatGroupBox3: TFlatGroupBox;
    Label16: TLabel;
    DWBH_FE: TFlatEdit;
    DW_FBtn: TFlatButton;
    ZX_FBtn: TFlatButton;
    Close_Btn: TButton;
    Label17: TLabel;
    FlatGroupBox5: TFlatGroupBox;
    LB_DG: TDBGrid;
    FlatGroupBox7: TFlatGroupBox;
    LB_DS: TDataSource;
    ADOTable1: TADOTable;
    Del_FBtn: TFlatButton;
    FlatButton1: TFlatButton;
    FlatButton2: TFlatButton;
    FlatGroupBox6: TFlatGroupBox;
    FlatButton3: TFlatButton;
    FlatButton4: TFlatButton;
    FlatButton5: TFlatButton;
    LBZX_FBtn: TFlatButton;
    FlatButton6: TFlatButton;
    ADOQuery1: TADOQuery;
    FlatEdit1: TFlatEdit;
    FlatButton7: TFlatButton;
    procedure Close_BtnClick(Sender: TObject);
    procedure FormClose(Sender: TObject; var Action: TCloseAction);
    procedure FormDestroy(Sender: TObject);
    procedure FormCreate(Sender: TObject);
    procedure DW_FBtnClick(Sender: TObject);
    procedure ZX_FBtnClick(Sender: TObject);
    procedure Del_FBtnClick(Sender: TObject);
    procedure LBZX_FBtnClick(Sender: TObject);
    procedure FormShow(Sender: TObject);
    procedure FlatButton3Click(Sender: TObject);
    procedure FlatButton5Click(Sender: TObject);
    procedure FlatButton4Click(Sender: TObject);
    procedure FlatButton6Click(Sender: TObject);
    procedure FlatButton1Click(Sender: TObject);
    procedure FlatButton2Click(Sender: TObject);
    procedure FlatEdit1Click(Sender: TObject);
    procedure LB_FCBChange(Sender: TObject);
    procedure FlatButton7Click(Sender: TObject);
  private
    function CheckError:boolean;
    { Private declarations }
  public
    { Public declarations }
  end;

var
  TSWH_F: TTSWH_F;

implementation

uses
  Common_Unit, Main_Form;

{$R *.dfm}

var
  TSLB_T:Tadoquery;
  TSJBXX_T:TTable;

procedure TTSWH_F.Close_BtnClick(Sender: TObject);
begin
  close;
end;
//***********************************************************************************
procedure TTSWH_F.FormClose(Sender: TObject; var Action: TCloseAction);
begin
  Action:=caFree;
end;
//***********************************************************************************
procedure TTSWH_F.FormDestroy(Sender: TObject);
begin
//  TSLB_T.Close;
//  TSJBXX_T.Close;
  TSWH_F:=nil;
end;
//***********************************************************************************
procedure TTSWH_F.FormCreate(Sender: TObject);
begin
  tslb_t:=adoquery1;
  TSLB_T.close;
  TSLB_T.SQL.Clear;
  TSLB_T.SQL.Text :='select classid,classname from TSlb';
  TSLB_T.open;
  LB_FCb.Items.Clear;
  while not TSLB_T.Eof do
    begin
      LB_FCB.Items.Add(TSLB_T.Fields.Fields[0].value+'-'+TSLB_T.Fields.Fields[1].value);
      TSLB_T.Next;
    end;
  LB_FCB.ItemIndex:=0;
end;
//***********************************************************************************
procedure TTSWH_F.DW_FBtnClick(Sender: TObject);       //定位记录
begin
  ZX_FBtn.Enabled:=false;
  FlatButton7.Enabled:=false;
  TSLB_T.close;
  TSLB_T.SQL.Clear;
  TSLB_T.SQL.Text :='select tsbh,tsname,auther,class,outdate,cbs,cost,totalnum,lastnum,bz from TSJBXX where tsbh='+chr(39)+DWBH_FE.Text+chr(39) ;
  TSLB_T.open;
  if tslb_t.RecordCount >0 then
    begin
       ZX_FBtn.Enabled:=true;
       FlatButton7.Enabled:=true;
       BH_FE.Text:=tslb_t.Fields.Fields[0].Value;
       sm_FE.Text:=tslb_t.Fields.Fields[1].Value;
       zz_FE.Text:=tslb_t.Fields.Fields[2].Value;
       FlatEdit1.Text:=tslb_t.Fields.Fields[3].Value;
       CBRQ_FE.Text:=datetimetostr(tslb_t.Fields.Fields[4].Value);
       CBS_FE.Text:=tslb_t.Fields.Fields[5].Value;
       dj_FE.Text:=inttostr(tslb_t.Fields.Fields[6].Value);
       sl_FE.Text:=inttostr(tslb_t.Fields.Fields[7].Value);
       try
         BZ_FM.Lines.Text:=tslb_t.Fields.Fields[9].Value;
       except
       end;
    end
  else
    MessageBox(handle,'图书编号有误或输入不正确!','错误',MB_OK or MB_ICONERROR);
end;
//***********************************************************************************
function TTSWH_F.CheckError:boolean;          //检查输入的数据是否有错误
begin
  result:=false;
  if SM_FE.Text='' then
    begin
      MessageBox(handle,'书名不能为空!','书名有误',MB_OK or MB_ICONERROR);
      result:=true;
      exit;
    end;

  if ZZ_FE.Text='' then
    begin
      MessageBox(handle,'作者不能为空!','作者有误',MB_OK or MB_ICONERROR);
      result:=true;
      exit;
    end;

  if CBS_FE.Text='' then
    begin
      MessageBox(handle,'出版社不能为空!','出版社有误',MB_OK or MB_ICONERROR);
      result:=true;
      exit;
    end;

  if DJ_FE.Text='' then
    begin
      MessageBox(handle,'定价不能为空!','定价有误',MB_OK or MB_ICONERROR);
      result:=true;
      exit;
    end;

  try                       //判断定价是否正确
    StrToFloat(DJ_FE.Text);
  except
    MessageBox(handle,'定价不对!','定价错误',MB_OK or MB_ICONERROR);
    result:=true;
    exit;
  end;

  try                       //判断日期格式是否正确
    StrToDate(CBRQ_FE.Text);
  except
    MessageBox(handle,'日期格式不对,正确格式形如:2003-03-19或2003-3-19 !','日期错误',MB_OK or MB_ICONERROR);
    result:=true;
    exit;
  end;

  try                       //入库数量必须为整数
    StrToInt(SL_FE.Text);
  except
    MessageBox(handle,'入库数量必须为大于0的整数!','数量错误',MB_OK or MB_ICONERROR);
    result:=true;
    exit;
  end;
end;
//***********************************************************************************
procedure TTSWH_F.ZX_FBtnClick(Sender: TObject);       //图书修改删除的执行操作
begin
  if CheckError then exit;
  TSLB_T.Close;
  TSLB_T.SQL.Clear;
  TSLB_T.SQL.Add('update TSJBXX ');
  TSLB_T.SQL.Add('set Class='+chr(39)+copy(LB_FCB.Text,1,4)+chr(39)+',');
  TSLB_T.SQL.Add('tsName='+chr(39)+SM_FE.Text+chr(39)+',');
  TSLB_T.SQL.Add('Auther='+chr(39)+zz_FE.Text+chr(39)+',');
  TSLB_T.SQL.Add('OutDate='+chr(39)+cbrq_FE.Text+chr(39)+',');
  TSLB_T.SQL.Add('CBS='+chr(39)+CBS_FE.Text+chr(39)+',');
  TSLB_T.SQL.Add('bz='+chr(39)+bz_Fm.Text+chr(39)+',');
  TSLB_T.SQL.Add('Cost='+dj_FE.Text+',');
  TSLB_T.SQL.Add('TotalNum='+sl_FE.Text);
  TSLB_T.SQL.Add('where tsbh='+chr(39)+BH_FE.Text+chr(39));
//  showmessage(TSLB_T.SQL.text);
  TSLB_T.ExecSQL;
  MessageBox(handle,'记录已成功修改!!','修改成功',MB_OK or MB_ICONINFORMATION);

end;
//***********************************************************************************

//***********************************************************************************
procedure TTSWH_F.Del_FBtnClick(Sender: TObject);        //删除类别
begin
   adotable1.Delete;
end;
//***********************************************************************************
procedure TTSWH_F.LBZX_FBtnClick(Sender: TObject);      //类别的执行操作
begin
   adotable1.Post;
end;
//***********************************************************************************

//***********************************************************************************
procedure TTSWH_F.FormShow(Sender: TObject);
begin
  TSWH_PC.ActivePage:=TSXGSC_TS;
end;
//***********************************************************************************

//***********************************************************************************

procedure TTSWH_F.FlatButton3Click(Sender: TObject);
begin
    adotable1.First;
end;

procedure TTSWH_F.FlatButton5Click(Sender: TObject);
begin
  adotable1.Prior;
end;

procedure TTSWH_F.FlatButton4Click(Sender: TObject);
begin
    adotable1.Next;
end;

procedure TTSWH_F.FlatButton6Click(Sender: TObject);
begin
   adotable1.Last;
end;

procedure TTSWH_F.FlatButton1Click(Sender: TObject);
begin
  lb_dg.ReadOnly:=false;
  FlatButton2.Enabled:=true;
  del_fbtn.Enabled:=true;
  lbzx_fbtn.Enabled:=true;
end;

procedure TTSWH_F.FlatButton2Click(Sender: TObject);
begin
    adotable1.Append;
end;



procedure TTSWH_F.FlatEdit1Click(Sender: TObject);
begin
    LB_FCB.Visible:=true;
end;

procedure TTSWH_F.LB_FCBChange(Sender: TObject);
begin
   FlatEdit1.Text:=LB_FCB.Text;
   LB_FCB.Visible:=false;
end;

procedure TTSWH_F.FlatButton7Click(Sender: TObject);
begin
  if tslb_t.Fields.Fields[8].Value=tslb_t.Fields.Fields[7].Value then
    begin
      LB_FCB.Visible:=false;
      TSLB_T.close;
      TSLB_T.SQL.Clear;
      TSLB_T.SQL.Text :='delete TSJBXX where tsbh='+chr(39)+BH_FE.Text+chr(39) ;
//      showmessage(TSLB_T.SQL.Text);
      TSLB_T.ExecSQL;
    end
  else
    MessageBox(handle,'图书库存和总数不等,不能删除!','错误',MB_OK or MB_ICONERROR);
end;

end.

⌨️ 快捷键说明

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