📄 billcodesearchunit.pas
字号:
unit billcodesearchUnit;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, ComCtrls, StdCtrls, Buttons, ExtCtrls, DB, ADODB, cxStyles,
cxCustomData, cxGraphics, cxFilter, cxData, cxDataStorage, cxEdit,
cxDBData, cxGridLevel, cxClasses, cxControls, cxGridCustomView,
cxGridCustomTableView, cxGridTableView, cxGridDBTableView, cxGrid;
type
TScholar=record
Id:integer;
Scholar:string;
end;
TDepartment=record
id:integer;
department:string;
end;
TSpec=record
id:integer;
Spec:String;
end;
Tbillcodesearchform = class(TForm)
Panel1: TPanel;
Label1: TLabel;
Label2: 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;
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;
Panel2: TPanel;
save_BitBtn: TBitBtn;
new_BitBtn: TBitBtn;
close_BitBtn: TBitBtn;
oper_adoquery: TADOQuery;
Panel3: TPanel;
search_BitBtn: TBitBtn;
BillCode_Edit: TEdit;
Label18: TLabel;
BitBtn1: TBitBtn;
PageControl1: TPageControl;
TabSheet1: TTabSheet;
cxGrid1: TcxGrid;
cxGrid1DBTableView1: TcxGridDBTableView;
cxGrid1DBTableView1DBColumn: TcxGridDBColumn;
cxGrid1DBTableView1DBColumn1: TcxGridDBColumn;
cxGrid1DBTableView1DBColumn2: TcxGridDBColumn;
cxGrid1DBTableView1DBColumn3: TcxGridDBColumn;
cxGrid1DBTableView1DBColumn4: TcxGridDBColumn;
cxGrid1DBTableView1DBColumn5: TcxGridDBColumn;
cxGrid1DBTableView1DBColumn6: TcxGridDBColumn;
cxGrid1DBTableView1DBColumn7: TcxGridDBColumn;
cxGrid1Level1: TcxGridLevel;
TabSheet2: TTabSheet;
cxGrid2: TcxGrid;
cxGridDBTableView1: TcxGridDBTableView;
cxGridDBColumn1: TcxGridDBColumn;
cxGridDBColumn2: TcxGridDBColumn;
cxGridDBColumn3: TcxGridDBColumn;
cxGridDBColumn4: TcxGridDBColumn;
cxGridDBColumn5: TcxGridDBColumn;
cxGridDBColumn6: TcxGridDBColumn;
cxGridDBColumn7: TcxGridDBColumn;
cxGridDBColumn8: TcxGridDBColumn;
cxGridLevel1: TcxGridLevel;
TabSheet3: TTabSheet;
cxGrid3: TcxGrid;
cxGridDBTableView2: TcxGridDBTableView;
cxGridDBColumn9: TcxGridDBColumn;
cxGridDBColumn10: TcxGridDBColumn;
cxGridDBColumn11: TcxGridDBColumn;
cxGridDBColumn12: TcxGridDBColumn;
cxGridDBColumn13: TcxGridDBColumn;
cxGridDBColumn14: TcxGridDBColumn;
cxGridDBColumn15: TcxGridDBColumn;
cxGridDBColumn16: TcxGridDBColumn;
cxGridLevel2: TcxGridLevel;
TabSheet4: TTabSheet;
cxGrid4: TcxGrid;
cxGridDBTableView3: TcxGridDBTableView;
cxGridDBColumn17: TcxGridDBColumn;
cxGridDBColumn18: TcxGridDBColumn;
cxGridDBColumn19: TcxGridDBColumn;
cxGridDBColumn20: TcxGridDBColumn;
cxGridDBColumn21: TcxGridDBColumn;
cxGridDBColumn22: TcxGridDBColumn;
cxGridDBColumn23: TcxGridDBColumn;
cxGridDBColumn24: TcxGridDBColumn;
cxGridLevel3: TcxGridLevel;
TabSheet5: TTabSheet;
cxGrid5: TcxGrid;
cxGridDBTableView4: TcxGridDBTableView;
cxGridDBColumn25: TcxGridDBColumn;
cxGridDBColumn26: TcxGridDBColumn;
cxGridDBColumn27: TcxGridDBColumn;
cxGridDBColumn28: TcxGridDBColumn;
cxGridDBColumn29: TcxGridDBColumn;
cxGridDBColumn30: TcxGridDBColumn;
cxGridDBColumn31: TcxGridDBColumn;
cxGridDBColumn32: TcxGridDBColumn;
cxGridLevel4: TcxGridLevel;
ADOQuery1: TADOQuery;
DataSource1: TDataSource;
DataSource2: TDataSource;
ADOQuery2: TADOQuery;
ADOQuery3: TADOQuery;
DataSource3: TDataSource;
DataSource4: TDataSource;
ADOQuery4: TADOQuery;
ADOQuery5: TADOQuery;
DataSource5: TDataSource;
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 close_BitBtnClick(Sender: TObject);
procedure new_BitBtnClick(Sender: TObject);
procedure BillCode_EditKeyPress(Sender: TObject; var Key: Char);
procedure search_BitBtnClick(Sender: TObject);
procedure BitBtn1Click(Sender: TObject);
private
{ Private declarations }
{ 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
billcodesearchform: Tbillcodesearchform;
implementation
uses DMUnit, commonunit, tipUnit, MainformUnit;
{$R *.dfm}
procedure Tbillcodesearchform.CloseWindow(var Msg: TMessage);
begin
FreeAndNil(billcodesearchform);
end;
procedure Tbillcodesearchform.FormClose(Sender: TObject;
var Action: TCloseAction);
begin
action:=cafree;
postmessage(handle,wm_user,0,0);
end;
procedure Tbillcodesearchform.FormShow(Sender: TObject);
begin
clearcontent;
end;
procedure Tbillcodesearchform.FormCreate(Sender: TObject);
var
i:integer;
Year, Month, Day: Word;
begin
decodedate(now,year,month,day);
ChargeYearID_ComboBox.Items.Clear;
for i :=year-5 to year+5 do
begin
ChargeYearID_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 Tbillcodesearchform.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 :='';
spec_combobox.Items.Clear;
ClassCode_Edit.Text :='';
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 Tbillcodesearchform.ClearContent;
var
Year, Month, Day: Word;
begin
decodedate(now,year,month,day);
id_edit.Text :='';
ChargeYearID_ComboBox.ItemIndex:=ChargeYearID_ComboBox.Items.IndexOf(inttostr(year));
BillCode_Edit.Text :='';
StudentName_Edit.Text :='';
Sex_ComboBox.ItemIndex:=-1;
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 :='';
end;
procedure Tbillcodesearchform.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;
if not isempty then
begin
setlength(NewSpec,RecordCount);
for i := 0 to RecordCount-1 do
begin
NewSpec[i].Id :=fieldbyname('id').AsInteger ;
NewSpec[i].spec :=fieldbyname('spec').AsString ;
spec_combobox.Items.Add(fieldbyname('spec').AsString) ;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -