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

📄 bookfeeunit.pas

📁 是一个Delphi的教材管理系统,内容很全面详细
💻 PAS
字号:
unit BookFeeUnit;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, DB, ADODB, StdCtrls, Buttons, ComCtrls;

type
  TfrmBookFee = class(TForm)
    PageControl1: TPageControl;
    TabSheet1: TTabSheet;
    TabSheet2: TTabSheet;
    GroupBox1: TGroupBox;
    Label1: TLabel;
    Label2: TLabel;
    Label3: TLabel;
    Label4: TLabel;
    Label5: TLabel;
    Label6: TLabel;
    Label7: TLabel;
    ComboBox1: TComboBox;
    Edit1: TEdit;
    Edit2: TEdit;
    Edit3: TEdit;
    Edit4: TEdit;
    Edit5: TEdit;
    Edit6: TEdit;
    BitBtn1: TBitBtn;
    BitBtn2: TBitBtn;
    GroupBox2: TGroupBox;
    Label8: TLabel;
    Label9: TLabel;
    Label10: TLabel;
    Label11: TLabel;
    Label12: TLabel;
    Label14: TLabel;
    ComboBox2: TComboBox;
    Edit7: TEdit;
    Edit8: TEdit;
    Edit9: TEdit;
    Edit10: TEdit;
    BitBtn4: TBitBtn;
    BitBtn3: TBitBtn;
    Edit12: TEdit;
    procedure FormCreate(Sender: TObject);
    procedure BitBtn1Click(Sender: TObject);
    procedure ComboBox1Change(Sender: TObject);
    procedure Edit2Exit(Sender: TObject);
    procedure BitBtn2Click(Sender: TObject);
    procedure Button1Click(Sender: TObject);
    procedure ComboBox2Change(Sender: TObject);
    procedure Edit8Exit(Sender: TObject);
    procedure BitBtn4Click(Sender: TObject);
  private
    procedure clearData();
    { Private declarations }
  public
    { Public declarations }
  end;

var
 // check1:TCheckValue;
  frmBookFee: TfrmBookFee;
  cla,Dep:TADOTable;

implementation

uses DataModuleUnit, MainUnit, CommonUnit;

{$R *.dfm}
procedure TfrmBookFee.clearData();
var
   i:integer;
begin
  for i:=0 to frmBookFee.ComponentCount-1 do
  begin
    if Components[i] is TCustomEdit then
     (frmBookFee.Components[i] as TCustomEdit).Text:=''
    else
    if Components[i] is TCombobox then
     (frmBookFee.Components[i] as TCombobox).ItemIndex:=-1;
  end;
end;
procedure TfrmBookFee.FormCreate(Sender: TObject);
var
   i:integer;
begin
//初始化班级信息
   cla:=TADOTable.Create(nil);
   with Cla do
   begin
     Connection:=frmDataModule.Connection;
     TableName:='classes';
     Active:=true;
     for i:=0 to  RecordCount-1 do //读取班级信息
     begin
       ComboBox1.Items.Add(FieldByName('className').Value);
       Next;
     end;
   end;
    //院系信息表初始化
   Dep:=TADOTable.Create(nil); //班级表
   with Dep do
   begin
     Connection:=frmDataModule.Connection;
     TableName:='Departments';
     Active:=true;
     for i:=0 to RecordCount-1 do
     begin
       comboBox2.Items.Add(Fields[0].Value);
       Next;
     end;
   end;

   ComboBox1.ItemIndex:=-1;
   combobox2.ItemIndex:=-1;
end;

procedure TfrmBookFee.BitBtn1Click(Sender: TObject);
var
   fee:TADOTable;
begin
   fee:=TADOTable.Create(nil);
   with fee do   //交书费
   begin
     Connection:=frmDataModule.Connection;
     TableName:='FeeHistory';
     Active:=true;
     Append;
     FieldByName('ClassName').Value:=ComboBox1.Text;
     FieldByName('LastFee').Value:=edit1.Text;
     FieldByName('theFee').Value:=edit3.Text;
     FieldByName('nowFee').Value:=strtofloat(edit1.Text)+strtofloat(edit3.Text);
     FieldByName('handler').Value:=edit4.Text;
     FieldByName('operatorID').Value:=frmMain.OperatorInfo.OperatorID;
     FieldByName('About').Value:=edit5.Text;
     FieldByName('Strength').Value:=edit6.Text;
     post;
   end;
   //更新班级总书费
   cla.Locate('ClassName',Combobox1.Text,[loCaseInsensitive]);
   cla.Edit;
   cla.FieldByName('TotalFee').Value:=strtofloat(edit1.Text)+strtofloat(edit3.Text);
   cla.Post;
   Application.MessageBox('交费成功!','提示',mb_ok);
   self.clearData;
   Edit2.ReadOnly:=true;
end;

procedure TfrmBookFee.ComboBox1Change(Sender: TObject);
begin
  if trim(Combobox1.Text)<>'' then
  begin
    Edit2.ReadOnly:=false;
    cla.Locate('ClassName',Combobox1.Text,[loCaseInsensitive]);
    Edit1.Text:=cla.fieldByName('totalfee').AsString;
    Edit6.Text:=cla.fieldByName('strength').AsString;
    Edit4.Text:=frmMain.OperatorInfo.OperatorName;
    Edit3.Text:=cla.fieldByName('totalfee').AsString;
  end;
end;
//判断输入的书费是否有误
procedure TfrmBookFee.Edit2Exit(Sender: TObject);
var
  TotalFee,v:real;
begin
   v:=0;
   if trim(Edit2.Text)='' then
   begin
     Application.MessageBox('输入的值不能为空格','提示',mb_ok);
     Edit2.SetFocus;
   end
   else
     V:=strtofloatDef(edit2.Text,0);
   if v>0 then
   begin
     TotalFee:=strtofloatDef(edit6.Text,0)*v;
     Edit3.Text:=floattostr(TotalFee);
   end
   else
   begin
     Application.MessageBox('输入的值不能小于等于0!','提示',mb_ok);
     Edit2.SetFocus;
   end
end;

procedure TfrmBookFee.BitBtn2Click(Sender: TObject);
begin
close;
end;

procedure TfrmBookFee.Button1Click(Sender: TObject);
begin
   self.clearData;
end;

procedure TfrmBookFee.ComboBox2Change(Sender: TObject);
var
  IsExists:boolean;
begin
  IsExists:=false;
  with Dep do
  begin
    IsExists:=Locate('DepartmentName',trim(Combobox2.Text),[loCaseInsensitive]);
    if IsExists then
    begin
      Edit8.ReadOnly:=false;
      Edit8.Text:='0';
      Edit7.Text:=FieldByName('totalFee').Value;//上期书费
      Edit12.Text:=FieldByName('charger').Value; //负责人
      Edit9.Text:=FieldByName('chargerPhone').Value;//联系电话
      Edit10.Text:=FieldByName('TotalFee').Value; //经办人
    end
    else
    begin
      showmessage('你所输入的院系名称不正确!');
      Edit7.Text:='';//上期书费
      Edit12.Text:=''; //负责人
      Edit9.Text:='';//联系电话
      Edit10.Text:=''; //经办人
      Combobox2.SetFocus;      
      abort;
    end;
  end;
end;

procedure TfrmBookFee.Edit8Exit(Sender: TObject);
var
  TotalFee,v:real;
begin
   v:=0;
   if trim(Edit8.Text)='' then
   begin
     Application.MessageBox('输入的值不能为空格','提示',mb_ok);
     Edit8.SetFocus;
   end
   else
     V:=strtofloatDef(edit8.Text,0);
   if v>0 then
   begin
     TotalFee:=strtofloatDef(edit7.Text,0)+v;
     Edit10.Text:=floattostr(TotalFee);
   end
   else
   begin
     Application.MessageBox('输入的值不能小于等于0!','提示',mb_ok);
     Edit8.SetFocus;
   end
end;

procedure TfrmBookFee.BitBtn4Click(Sender: TObject);
var
  IsExists:boolean;
begin
with Dep do
begin
  IsExists:=Locate('DepartmentName',trim(combobox2.Text),[loCaseInsensitive]);
  if IsExists then
  begin
    Edit;
    FieldByName('TotalFee').Value:=Edit10.Text;
    FieldByName('OperatorID').Value:=frmMain.OperatorInfo.OperatorID;
    post;
    Application.MessageBox('书费添加成功!','提示',mb_ok);
    self.clearData;
    Edit8.ReadOnly:=false;    
  end;
end;
end;
end.

⌨️ 快捷键说明

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