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

📄 hygl.pas

📁 图书影碟租赁管理系统
💻 PAS
字号:
unit hygl;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, DBActns, ActnList, StdCtrls, Buttons, ExtCtrls, Grids, DBGrids,
  ComCtrls, DB;

type
  TF_hygl = class(TForm)
    ztl: TStatusBar;
    DBGrid: TDBGrid;
    group: TRadioGroup;
    b_new: TBitBtn;
    b_edit: TBitBtn;
    b_del: TBitBtn;
    b_tz: TBitBtn;
    BitBtn5: TBitBtn;
    BitBtn1: TBitBtn;
    BitBtn2: TBitBtn;
    BitBtn3: TBitBtn;
    ActionList1: TActionList;
    DataSetFirst1: TDataSetFirst;
    DataSetPrior1: TDataSetPrior;
    DataSetNext1: TDataSetNext;
    DataSetLast1: TDataSetLast;
    b_search: TBitBtn;
    b_exit: TBitBtn;
    DataSource1: TDataSource;
    DataSetInsert1: TDataSetInsert;
    DataSetDelete1: TDataSetDelete;
    DataSetEdit1: TDataSetEdit;
    DataSource2: TDataSource;
    procedure DataSetInsert1Execute(Sender: TObject);
    procedure DataSetEdit1Execute(Sender: TObject);
    procedure FormCreate(Sender: TObject);
    procedure FormClose(Sender: TObject; var Action: TCloseAction);
    procedure DataSetDelete1Execute(Sender: TObject);
    procedure FormShow(Sender: TObject);
    procedure groupClick(Sender: TObject);
    procedure b_searchClick(Sender: TObject);
    procedure b_tzClick(Sender: TObject);
    procedure b_exitClick(Sender: TObject);

  private
    { Private declarations }
  public
    { Public declarations }
     procedure ztljs;
  end;

var
  F_hygl: TF_hygl;
  zrs,nzs,yzs:integer;//总办证数,年证数,月证数

implementation

uses datam, vipedit, vipcx, viptz;

{$R *.dfm}
procedure TF_hygl.ztljs;
begin
  zrs:=dm.ADO_vip.RecordCount;
  F_hygl.ztl.panels[1].text:=inttostr(zrs);
  dm.ADOQuery.Close;
  dm.ADOQuery.SQL.Clear;
  dm.ADOQuery.SQL.Add('select count(*) from vip where 证类型="年证"');
  dm.ADOQuery.Open;
  F_hygl.ztl.panels[3].text:=dm.ADOQuery.Fields[0].AsString;
  //月证数量
  dm.ADOQuery.Close;
  dm.ADOQuery.SQL.Clear;
  dm.ADOQuery.SQL.Add('select count(*) from vip where 证类型="月证"');
  dm.ADOQuery.Open;
  F_hygl.ztl.panels[5].text:=dm.ADOQuery.Fields[0].AsString;
  //押金合计
  dm.ADOQuery.Close;
  dm.ADOQuery.SQL.Clear;
  dm.ADOQuery.SQL.Add('select sum(押金) from vip');
  dm.ADOQuery.Open;
  F_hygl.ztl.panels[7].text:=dm.ADOQuery.Fields[0].AsString+'元';

end;

procedure TF_hygl.DataSetInsert1Execute(Sender: TObject);
begin
  dm.ADO_vip.Append;
  dm.ADO_vip.FieldByName('性别').AsString:='男';
  dm.ADO_vip.FieldByName('证类型').AsString:='年证';
  dm.ADO_vip.FieldByName('押金').AsString:='0.00';
  F_vipedit:=TF_vipedit.create(application);
  F_vipedit.b_ok.tag:=0;
  F_vipedit.showmodal;
end;

procedure TF_hygl.DataSetEdit1Execute(Sender: TObject);
begin
  F_vipedit:=TF_vipedit.create(application);
  F_vipedit.b_ok.tag:=1;
  //检测会员有无借书
  dm.ADO_czdt.Open;
  dm.ADO_czdt.First;
  if dm.ADO_czdt.Locate('证号',dm.ADO_vip.fieldbyname('证号').AsString,[]) then
    begin
       F_vipedit.e_id.Enabled:=false;
       dm.ADO_czdt.Close;
    end;
  dm.ADO_czdt.Close;
  //
  F_vipedit.showmodal;
end;

procedure TF_hygl.FormCreate(Sender: TObject);
begin
  dm.ADO_vip.Open;
  dm.ADO_vip.Sort:='证号';
  dm.ADO_vip.First;
end;

procedure TF_hygl.FormClose(Sender: TObject; var Action: TCloseAction);
begin
  dm.ADO_vip.close;
  dm.ADOQuery.Close;
  dm.ADOQuery.SQL.Clear;
  release;
end;

procedure TF_hygl.DataSetDelete1Execute(Sender: TObject);
var
 mes:string;
begin
  dm.ADO_czdt.Open;
  dm.ADO_czdt.First;
  if dm.ADO_czdt.Locate('证号',dm.ADO_vip.fieldbyname('证号').AsString,[]) then
    begin
      mes:='办证会员 <'+dm.ADO_vip.fieldbyname('姓名').AsString
           +'> 还有租借的图书或影碟未还,不能删除!';
      application.MessageBox(pchar(mes),pchar('提示')
       ,+MB_ICONQUESTION);
       dm.ADO_czdt.Close;
      exit;
    end;
  dm.ADO_czdt.Close;
  mes:='是否要删除办证会员< '+dm.ADO_vip.fieldbyname('证号').AsString+'  '
  +dm.ADO_vip.fieldbyname('姓名').AsString
       +'>';
 if application.MessageBox(pchar(mes),pchar('等待确认')
    ,+MB_ICONQUESTION+mb_okcancel+MB_DEFBUTTON2)=idok then
     begin
      dm.ADO_vip.Delete;//删除会员记录
      dm.ADOQ_cx.Close;
      dm.ADOQ_cx.SQL.Clear;
      dm.ADOQ_cx.SQL.add('delete from cashbook where 证号='+'"'+dm.ADO_vip.fieldbyname('证号').AsString+'"');
      dm.ADOQ_cx.ExecSQL;//删除现金收支记录
      dm.ADOQ_cx.Close;
      dm.ADOQ_cx.SQL.Clear;
      dm.ADOQ_cx.SQL.add('delete from qk where 证号='+'"'+dm.ADO_vip.fieldbyname('证号').AsString+'"');
      dm.ADOQ_cx.ExecSQL;//删除欠款记录
      dm.ADOQ_cx.Close;
      dm.ADO_vip.Delete;//删除会员记录
      ztljs;
     end;

end;

procedure TF_hygl.FormShow(Sender: TObject);
begin
  ztljs;
  dbgrid.SetFocus();
end;

procedure TF_hygl.groupClick(Sender: TObject);
begin
  case group.ItemIndex of
     0:dm.ADO_vip.Sort:='证号';
     1:dm.ADO_vip.Sort:='姓名';
     2:dm.ADO_vip.Sort:='办证日期';
  end;
end;

procedure TF_hygl.b_searchClick(Sender: TObject);
begin
   F_vipcx:=TF_vipcx.create(application);
   F_vipcx.showmodal;
end;

procedure TF_hygl.b_tzClick(Sender: TObject);
begin
  F_viptz:=TF_viptz.create(application);
  F_viptz.showmodal;
end;



procedure TF_hygl.b_exitClick(Sender: TObject);
begin
    Close;
end;

end.

⌨️ 快捷键说明

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