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

📄 stumoney.pas

📁 老年人大学的学籍管理,主要是学费收取
💻 PAS
字号:
unit stumoney;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, base, SUIButton, StdCtrls, SUIComboBox, SUIEdit, ExtCtrls,
  SUIForm, DB, ADODB;

type
  Tfrmstumoney = class(Tbaseform)
    Label1: TLabel;
    Label2: TLabel;
    Label3: TLabel;
    Label4: TLabel;
    Label5: TLabel;
    Label6: TLabel;
    Label7: TLabel;
    Label8: TLabel;
    Label9: TLabel;
    edtname: TsuiEdit;
    cbxdep: TsuiComboBox;
    cbxmajor: TsuiComboBox;
    cbxgrade: TsuiComboBox;
    cbxclass: TsuiComboBox;
    edtying: TsuiEdit;
    edtshi: TsuiEdit;
    suiButton1: TsuiButton;
    suiButton2: TsuiButton;
    suiButton3: TsuiButton;
    suiButton4: TsuiButton;
    Label11: TLabel;
    edtid: TsuiEdit;
    adqstu: TADOQuery;
    suiButton5: TsuiButton;
    procedure FormCreate(Sender: TObject);
    procedure cbxgradeChange(Sender: TObject);
    procedure suiButton1Click(Sender: TObject);
    procedure edtyingKeyPress(Sender: TObject; var Key: Char);
    procedure edtshiKeyPress(Sender: TObject; var Key: Char);
    procedure suiButton3Click(Sender: TObject);
    procedure suiButton4Click(Sender: TObject);
    procedure cbxdepChange(Sender: TObject);
    procedure suiButton2Click(Sender: TObject);
    procedure FormShow(Sender: TObject);
    procedure suiButton5Click(Sender: TObject);
    procedure edtidKeyPress(Sender: TObject; var Key: Char);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  frmstumoney: Tfrmstumoney;

implementation

uses pub, umain, newstu, rptnew, rptstu, money;

{$R *.dfm}

procedure Tfrmstumoney.FormCreate(Sender: TObject);
var tmp:tadoquery;
begin
  inherited;
  tmp:=tadoquery.Create(nil);
  tmp.ConnectionString :=frmmain.adc.ConnectionString;
  try
    pub.showrecord(tmp,'*','dep','id');
    while not tmp.Eof do
      begin
      cbxdep.Items.Add(tmp.fieldbyname('dep').AsString);
      tmp.Next;
      end;
    pub.showrecord(tmp,'*','grade','id');
    while not tmp.Eof do
      begin
      cbxgrade.Items.Add(tmp.fieldbyname('grade').AsString);
      tmp.Next;
      end;
  finally
    tmp.Free;
  end;
end;

procedure Tfrmstumoney.cbxgradeChange(Sender: TObject);
var tmp:tadoquery;
begin
  inherited;
  cbxclass.Clear;
  tmp:=tadoquery.Create(nil);
  tmp.ConnectionString:=frmmain.adc.ConnectionString;
  try
    pub.showrecord(tmp,'*','class where grade='+''''+cbxgrade.Text+'''','id');
    while not tmp.Eof do
      begin
      cbxclass.Items.Add(tmp.fieldbyname('class').AsString);
      tmp.Next;
      end;
  finally
    tmp.Free;
  end;
end;

procedure Tfrmstumoney.suiButton1Click(Sender: TObject);
var i:integer;
    tmp:tadoquery;
begin
  inherited;
  for i:=0 to suiform1.ControlCount-1 do
    if suiform1.Controls[i] is tsuiedit then
      if tsuiedit(suiform1.Controls[i]).Text='' then
        begin
        application.MessageBox('所填信息不完整!','提示',mb_ok+mb_iconinformation);
        exit;
        end;
  for i:=0 to suiform1.ControlCount-1 do
    if suiform1.Controls[i] is tsuicombobox then
      if tsuicombobox(suiform1.Controls[i]).Text='' then
        begin
        application.MessageBox('所填信息不完整!','提示',mb_ok+mb_iconinformation);
        exit;
        end;
  tmp:=tadoquery.Create(nil);
  tmp.ConnectionString:=frmmain.adc.ConnectionString;
  frmmain.adc.BeginTrans;
  try
    with tmp do
      begin
      sql.Clear;
      sql.Add('insert into money (stuid,stuname,yingjiaomoney,shijiaomoney,status,datetime,type) values (:v1,:v2,:v3,:v4,:v5,:v6,:v7)');
      //showmessage(sql.Text);
      parameters.ParamByName('v1').Value := edtid.text;
      parameters.ParamByName('v2').Value := edtname.Text;
      parameters.ParamByName('v3').Value := strtoint(edtying.Text);
      parameters.ParamByName('v4').Value := strtoint(edtshi.Text);
      parameters.ParamByName('v5').Value := 1;
      parameters.ParamByName('v6').Value := formatdatetime('yyyy-mm-dd',now());
      parameters.ParamByName('v7').Value := 'newstu'; 
      execsql;
      end;
    with tmp do
      begin
      sql.Clear;
      sql.Add('update newstu set dep=:v1,major=:v2,grade=:v3,class=:v4,status=:v5 where id=:v6');
      parameters.ParamByName('v1').Value :=cbxdep.Text;
      parameters.ParamByName('v2').Value :=cbxmajor.Text;
      parameters.ParamByName('v3').Value :=cbxgrade.Text;
      parameters.ParamByName('v4').Value :=cbxclass.Text;
      parameters.ParamByName('v5').Value :=1;
      parameters.ParamByName('v6').Value :=edtid.Text;
      execsql;
      end;             
    frmmain.adc.CommitTrans;
    application.MessageBox('交费成功!','提示',mb_ok+mb_iconinformation);
    tmp.Free;
    //close;
  except
    frmmain.adc.RollbackTrans;
    raise;
    application.MessageBox('交费失败!','警告',mb_ok+mb_iconwarning);
    tmp.Free;
  end;
end;

procedure Tfrmstumoney.edtyingKeyPress(Sender: TObject; var Key: Char);
begin
  inherited;
  if not ( key in ['0'..'9',#23,#8]) then
    key:=#0;
end;

procedure Tfrmstumoney.edtshiKeyPress(Sender: TObject; var Key: Char);
begin
  inherited;
  if not ( key in ['0'..'9',#23,#8]) then
    key:=#0;
end;

procedure Tfrmstumoney.suiButton3Click(Sender: TObject);
begin
  inherited;
  frmmoney.id:=strtoint(edtid.Text);
  frmmoney.money:=edtshi.Text;
  frmrptnew:=tfrmrptnew.Create(nil);
  with frmrptnew.QuickRep1 do
    begin
    previewheight:=screen.Height;
    previewwidth:=screen.Width;
    preview;
    end;
end;

procedure Tfrmstumoney.suiButton4Click(Sender: TObject);
begin
  inherited;
  frmmoney.id:=strtoint(edtid.Text);
  frmrptstu:=tfrmrptstu.Create(nil);
  with frmrptstu.QuickRep1 do
    begin
    previewwidth:=screen.Width;
    previewheight:=screen.Height;
    preview;
    end;
end;

procedure Tfrmstumoney.cbxdepChange(Sender: TObject);
var tmp:tadoquery;
begin
  inherited;
  cbxmajor.Clear;
  tmp:=tadoquery.Create(nil);
  tmp.ConnectionString:=frmmain.adc.ConnectionString;
  try
    pub.showrecord(tmp,'*','major where dep='+''''+cbxdep.Text+'''','id');
    while not tmp.Eof do
      begin
      cbxmajor.Items.Add(tmp.fieldbyname('major').AsString);
      tmp.Next;
      end;
  finally
    tmp.Free;
  end;
end;

procedure Tfrmstumoney.suiButton2Click(Sender: TObject);
begin
  inherited;
  close;
end;

procedure Tfrmstumoney.FormShow(Sender: TObject);
begin
  inherited;
  edtid.SetFocus;
end;

procedure Tfrmstumoney.suiButton5Click(Sender: TObject);
begin
  inherited;
  frmnewstu:=tfrmnewstu.Create(nil);
  frmnewstu.ShowModal;
end;

procedure Tfrmstumoney.edtidKeyPress(Sender: TObject; var Key: Char);
begin
  inherited;
  if key=#13 then
    begin
    with adqstu do
      begin
      sql.Clear;
      sql.Add('select * from newstu where stuid like ''%'+edtid.Text+'%''');
      //parameters.ParamByName('v1').Value :=edtstuid.Text;
      open;
  edtname.Text:=adqstu.fieldbyname('stuname').AsString;
  cbxdep.Text:=adqstu.fieldbyname('dep').AsString;
  cbxmajor.Text:=adqstu.fieldbyname('major').AsString;
  cbxgrade.Text:=adqstu.fieldbyname('grade').AsString;
  cbxclass.Text:=adqstu.fieldbyname('class').AsString;
  end;
  if edtname.text='' then
    begin
    if application.messagebox('未找到该生信息,是否录入?','提示',mb_yesno+mb_iconquestion)=idyes then
      begin
      frmmain.form:='stumoney';
      frmnewstu:=tfrmnewstu.Create(nil);
      frmnewstu.ShowModal;
      end;
    end;
    end;
end;

end.

⌨️ 快捷键说明

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