📄 firstregunit.pas
字号:
unit FirstRegUnit;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, ComCtrls, StdCtrls, Buttons, ExtCtrls, DB, ADODB, frxDesgn,
frxClass;
type
TScholar=record
Id:integer;
Scholar:string;
end;
TDepartment=record
id:integer;
department:string;
end;
TSpec=record
id:integer;
Spec:String;
end;
TFirstRegform = class(TForm)
Panel1: TPanel;
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;
Label16: TLabel;
Label17: TLabel;
Label46: TLabel;
id_edit: TEdit;
ChargeYearID_ComboBox: TComboBox;
ChargeRangeId_combobox: TComboBox;
StudyYear_ComboBox: TComboBox;
StudentName_Edit: TEdit;
Sex_ComboBox: TComboBox;
Address_Edit: TEdit;
Scholar_ComboBox: TComboBox;
Department_ComboBox: TComboBox;
Spec_ComboBox: TComboBox;
ClassCode_Edit: TEdit;
ClassCode_BitBtn: TBitBtn;
Length_ComboBox: TComboBox;
Source_Edit: TEdit;
Tutor_Edit: TEdit;
Circs_Edit: TEdit;
Memo_Edit: TEdit;
Scholarid_Edit: TEdit;
Departmentid_Edit: TEdit;
Specid_edit: TEdit;
Code_Edit: TEdit;
GroupBox1: TGroupBox;
GroupBox3: TGroupBox;
Label28: TLabel;
Label29: TLabel;
Label30: TLabel;
Label31: TLabel;
Label32: TLabel;
Label33: TLabel;
Label34: TLabel;
tuition_be_Edit: TEdit;
house_be_Edit: TEdit;
book_be_Edit: TEdit;
insurance_be_Edit: TEdit;
live_be_Edit: TEdit;
pledge_be_Edit: TEdit;
sum_be_Edit: TEdit;
GroupBox4: TGroupBox;
Label25: TLabel;
Label26: TLabel;
Label27: TLabel;
Label36: TLabel;
Label37: TLabel;
Label38: TLabel;
Label39: TLabel;
tuition_re_Edit: TEdit;
house_re_Edit: TEdit;
book_re_Edit: TEdit;
insurance_re_Edit: TEdit;
live_re_Edit: TEdit;
pledge_re_Edit: TEdit;
sum_re_Edit: TEdit;
GroupBox5: TGroupBox;
Label35: TLabel;
Label41: TLabel;
Label43: TLabel;
Label44: TLabel;
tuition_code_Edit: TEdit;
book_code_Edit: TEdit;
live_code_Edit: TEdit;
pledge_code_Edit: TEdit;
GroupBox2: TGroupBox;
Label18: TLabel;
Label19: TLabel;
Label20: TLabel;
Label21: TLabel;
Label22: TLabel;
Label23: TLabel;
Label24: TLabel;
tuition_m_Edit: TEdit;
house_m_Edit: TEdit;
book_m_Edit: TEdit;
insurance_m_Edit: TEdit;
live_m_Edit: TEdit;
pledge_m_Edit: TEdit;
sum_m_Edit: TEdit;
Panel2: TPanel;
save_BitBtn: TBitBtn;
print_BitBtn: TBitBtn;
print_pledge_BitBtn: TBitBtn;
print_get_BitBtn: TBitBtn;
new_BitBtn: TBitBtn;
close_BitBtn: TBitBtn;
oper_adoquery: TADOQuery;
calc_bitbtn: TBitBtn;
ReceType_combobox: TComboBox;
Label45: TLabel;
print_book_bitbtn: TBitBtn;
frxDesigner1: TfrxDesigner;
frxReport4: TfrxReport;
frxReport3: TfrxReport;
frxReport2: TfrxReport;
frxReport1: TfrxReport;
procedure tuition_be_EditKeyPress(Sender: TObject; var Key: Char);
procedure tuition_be_EditExit(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure FormShow(Sender: TObject);
procedure FormCreate(Sender: TObject);
procedure Scholar_ComboBoxChange(Sender: TObject);
procedure Department_ComboBoxChange(Sender: TObject);
procedure Spec_ComboBoxChange(Sender: TObject);
procedure ClassCode_BitBtnClick(Sender: TObject);
procedure save_BitBtnClick(Sender: TObject);
procedure sum_be_EditEnter(Sender: TObject);
procedure sum_re_EditEnter(Sender: TObject);
procedure calc_bitbtnClick(Sender: TObject);
procedure close_BitBtnClick(Sender: TObject);
procedure print_BitBtnClick(Sender: TObject);
procedure print_pledge_BitBtnClick(Sender: TObject);
procedure print_get_BitBtnClick(Sender: TObject);
procedure new_BitBtnClick(Sender: TObject);
procedure print_book_bitbtnClick(Sender: TObject);
procedure tuition_be_EditEnter(Sender: TObject);
procedure frxReport1BeforePrint(Sender: TfrxReportComponent);
procedure frxReport2BeforePrint(Sender: TfrxReportComponent);
procedure frxReport3BeforePrint(Sender: TfrxReportComponent);
procedure frxReport4BeforePrint(Sender: TfrxReportComponent);
private
{ Private declarations }
print,print_book,print_pledge,print_get:boolean;
{ Private declarations }
NewScholar:array of TScholar;
NewDepartMent:array of TDepartment;
NewSpec:array of TSpec;
procedure CloseWindow(var Msg:TMessage);message wm_user;
procedure ClearContent;
procedure ButtonUse(CanUse:boolean);
public
{ Public declarations }
end;
var
FirstRegform: TFirstRegform;
implementation
uses DMUnit, commonunit, tipUnit, MainformUnit;
{$R *.dfm}
procedure TFirstRegform.tuition_be_EditKeyPress(Sender: TObject; var Key: Char);
begin
if not (key in['0'..'9','.',#8,#13]) then key:=#0;
if key=#13 then selectnext((sender as tedit),true,true);
end;
procedure TFirstRegform.tuition_be_EditExit(Sender: TObject);
var
Cash:Currency;
begin
if close_bitbtn.Focused then exit;
if trim((sender as tedit).Text )='' then (sender as tedit).Text:='0';
try
cash:= strtofloat(trim((sender as tEdit).text) );
if cash<0 then
begin
MessageBox(application.handle,pchar('金额输入错误!'),'错误',MB_ICONWARNING+MB_OK);
(sender as TEdit).SetFocus ;
end;
except
MessageBox(application.handle,pchar('金额输入错误!'),'错误',MB_ICONWARNING+MB_OK);
(sender as TEdit).SetFocus ;
end;
end;
procedure TFirstRegform.CloseWindow(var Msg: TMessage);
begin
FreeAndNil(FirstRegform);
end;
procedure TFirstRegform.FormClose(Sender: TObject;
var Action: TCloseAction);
begin
action:=cafree;
postmessage(handle,wm_user,0,0);
end;
procedure TFirstRegform.FormShow(Sender: TObject);
var
wpath:string;
begin
clearcontent;
WPath := ExtractFilePath(Application.ExeName);
frxReport1.LoadFromFile(WPath + '学费.fr3');
frxReport2.LoadFromFile(WPath + '学费.fr3');
frxReport4.LoadFromFile(WPath + '保证金.fr3');
frxReport3.LoadFromFile(WPath + '领物单.fr3');
end;
procedure TFirstRegform.FormCreate(Sender: TObject);
var
i:integer;
Year, Month, Day: Word;
begin
decodedate(now,year,month,day);
ChargeYearID_ComboBox.Items.Clear;
ChargeRangeId_combobox.Items.Clear;
for i :=year-4 to year+4 do
begin
ChargeYearID_ComboBox.Items.Add(inttostr(i));
ChargeRangeId_combobox.Items.Add(inttostr(i));
end;
with oper_adoquery do
begin
close;
sql.Clear;
sql.Add('select * from Scholar order by id');
open;
if not isempty then
begin
setlength(NewScholar,RecordCount);
for i := 0 to RecordCount-1 do
begin
NewScholar[i].Id :=fieldbyname('id').AsInteger ;
NewScholar[i].Scholar:=fieldbyname('Scholar').AsString ;
scholar_combobox.Items.Add(fieldbyname('Scholar').AsString) ;
Next;
end;
end;
end;
end;
procedure TFirstRegform.Scholar_ComboBoxChange(Sender: TObject);
var
i:integer;
begin
department_combobox.ItemIndex:=-1;
departmentid_edit.Text :='';
department_combobox.Items.Clear;
scholarid_Edit.Text:='';
spec_combobox.ItemIndex:=-1;
specid_edit.Text :='';
ClassCode_Edit.Text :='';
spec_combobox.Items.Clear;
if scholar_combobox.ItemIndex<0 then exit;
scholarid_Edit.Text :=inttostr(NewScholar[scholar_combobox.itemindex].id);
with oper_adoquery do
begin
close;
sql.Clear;
sql.Add('select * from department where ScholarId=:ScholarId order by id');
Parameters.ParamByName('ScholarId').Value :=scholarid_edit.Text ;
open;
if not isempty then
begin
setlength(NewDepartMent,RecordCount);
for i := 0 to RecordCount-1 do
begin
NewDepartMent[i].Id :=fieldbyname('id').AsInteger ;
NewDepartMent[i].department :=fieldbyname('department').AsString ;
department_combobox.Items.Add(fieldbyname('department').AsString) ;
Next;
end;
end;
end;
end;
procedure TFirstRegform.ClearContent;
var
Year, Month, Day: Word;
begin
decodedate(now,year,month,day);
id_edit.Text :='';
ChargeYearID_ComboBox.ItemIndex:=ChargeYearID_ComboBox.Items.IndexOf(inttostr(year));
ChargeRangeId_combobox.ItemIndex:=ChargeRangeId_combobox.Items.IndexOf(inttostr(year));
StudyYear_ComboBox.ItemIndex:=0;
StudentName_Edit.Text :='';
Sex_ComboBox.ItemIndex:=0;
Address_Edit.text:='';
Scholar_ComboBox.ItemIndex :=-1;
Scholarid_Edit.Text :='';
Department_ComboBox.ItemIndex :=-1;
Departmentid_Edit.Text :='';
Spec_ComboBox.ItemIndex:=-1;
Specid_edit.Text :='';
Length_ComboBox.ItemIndex:=-1;
ClassCode_Edit.Text :='';
Code_Edit.Text :='';
Source_Edit.Text :='';
Tutor_Edit.Text :='';
Circs_Edit.Text :='';
Memo_Edit.Text :='';
ReceType_combobox.ItemIndex:=0;
tuition_be_Edit .Text :='0';
house_be_Edit.Text :='0';
book_be_Edit.Text :='0';
insurance_be_Edit.Text :='0';
live_be_Edit.Text :='0';
pledge_be_Edit.Text :='0';
sum_be_Edit.Text :='0';
tuition_re_Edit.Text :='0';
house_re_Edit.Text :='0';
book_re_Edit.Text :='0';
insurance_re_Edit.Text :='0';
live_re_Edit.Text :='0';
pledge_re_Edit.Text :='0';
sum_re_Edit.Text :='0';
tuition_code_Edit.Text :='';
book_code_Edit.Text :='';
live_code_Edit.Text :='';
pledge_code_Edit.Text :='';
tuition_m_Edit.Text :='0';
house_m_Edit.Text :='0';
book_m_Edit.Text :='0';
insurance_m_Edit.Text :='0';
live_m_Edit.Text :='0';
pledge_m_Edit.Text :='0';
sum_m_Edit.Text :='0';
print:=false;
print_book:=false;
print_pledge:=false;
print_get:=false;
end;
procedure TFirstRegform.Department_ComboBoxChange(Sender: TObject);
var
i:integer;
begin
departmentid_edit.Text :='';
spec_combobox.ItemIndex:=-1;
specid_edit.Text :='';
spec_combobox.Items.Clear;
ClassCode_Edit.Text :='';
if Department_ComboBox.ItemIndex<0 then exit;
departmentid_edit.Text :=inttostr(NewDepartment[Department_ComboBox.itemindex].id);
with oper_adoquery do
begin
close;
sql.Clear;
sql.Add('select * from spec where ScholarId=:ScholarId and departmentid=:departmentid order by id');
Parameters.ParamByName('ScholarId').Value :=scholarid_edit.Text ;
Parameters.ParamByName('departmentid').Value :=departmentid_edit.Text ;
open;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -