www.pudn.com > jiaocaiguanlixitongdaima.rar > BookFeeQueryUnit.pas


unit BookFeeQueryUnit; 
 
interface 
 
uses 
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, 
  Dialogs, DB, ADODB, StdCtrls, Buttons, Grids, DBGrids; 
 
type 
  TfrmBookFeeQuery = class(TForm) 
    GroupBox1: TGroupBox; 
    RadioButton1: TRadioButton; 
    RadioButton2: TRadioButton; 
    GroupBox2: TGroupBox; 
    Label1: TLabel; 
    ComboBox1: TComboBox; 
    BitBtn1: TBitBtn; 
    BitBtn2: TBitBtn; 
    DataSource1: TDataSource; 
    DBGrid2: TDBGrid; 
    DBGrid1: TDBGrid; 
    procedure BitBtn1Click(Sender: TObject); 
    procedure RadioButton1Click(Sender: TObject); 
    procedure RadioButton2Click(Sender: TObject); 
    procedure BitBtn2Click(Sender: TObject); 
    procedure FormCreate(Sender: TObject); 
    procedure ComboBox1Change(Sender: TObject); 
  private 
    { Private declarations } 
  public 
    { Public declarations } 
  end; 
 
var 
  frmBookFeeQuery: TfrmBookFeeQuery; 
  StudentFee:TADOQuery; 
  DepartmentFee:TADOQuery; 
  QueryDS:TADODataSet; 
implementation 
 
uses DataModuleUnit; 
 
{$R *.dfm} 
 
procedure TfrmBookFeeQuery.BitBtn1Click(Sender: TObject); 
begin 
 close; 
end; 
//填充班级名到查询值中 
procedure TfrmBookFeeQuery.RadioButton1Click(Sender: TObject); 
var 
  i:integer; 
begin 
   QueryDS.Close; 
   dbgrid2.SendToBack; 
   Combobox1.Clear; 
   Combobox1.Enabled:=true; 
   StudentFee:=TADOQuery.Create(nil); 
   with StudentFee do 
   begin 
     Connection:=frmDataModule.Connection; 
     SQL.Clear; 
     SQL.Add('select className from classes'); 
     open; 
     for i:=0 to RecordCount-1 do 
     begin 
       ComboBox1.Items.Add(Fields[0].Value); 
       Next; 
     end; 
   end; 
   label1.Caption:='选择查询班级名'; 
end; 
 //填充院系名到查询值中 
procedure TfrmBookFeeQuery.RadioButton2Click(Sender: TObject); 
var 
  i:integer; 
begin 
   QueryDS.Close; 
   dbgrid1.SendToBack; 
   Combobox1.Clear; 
   Combobox1.Enabled:=true; 
   DepartmentFee:=TADOQuery.Create(nil); 
   with DepartmentFee do 
   begin 
     Connection:=frmDataModule.Connection; 
     SQL.Clear; 
     SQL.Add('select DepartmentName from Departments'); 
     open; 
     for i:=0 to RecordCount-1 do 
     begin 
       ComboBox1.Items.Add(Fields[0].Value); 
       Next; 
     end; 
   end; 
   label1.Caption:='选择查询院系名'; 
end; 
 
     //Parameters.CreateParameter('V',ftstring,pdinput,20,Combobox1.Text);等同下句 
   //Parameters.FindParam('V').Value:=combobox1.Text; 
 
 //执行查询 
procedure TfrmBookFeeQuery.BitBtn2Click(Sender: TObject); 
begin 
  with QueryDS do 
  begin 
    close; 
    Parameters.Clear; 
    Parameters.CreateParameter('V',ftstring,pdinput,20,Combobox1.Text); 
    if RadioButton1.Checked then 
    begin 
      //dbgrid1.Columns. 
      CommandText:='select * from FeeHistory where [ClassName]=:V' 
    end 
    else 
    begin 
      CommandText:='select * from Departments where [DepartmentName]=:v'; 
    end; 
   {Parameters.refresh; 
    Parameters.findparame('v').Value := Combobox1.Text;     active:=true;这样写可以不用创建参数} 
    active:=true;  
  end; 
end; 
 
 
 
//初始化 
procedure TfrmBookFeeQuery.FormCreate(Sender: TObject); 
begin 
  QueryDS:=TADODataSet.Create(nil); 
  with QueryDS do 
  begin 
    Connection:=frmDataModule.Connection; 
    CommandType:=cmdText; 
  end; 
  DataSource1.DataSet:=QueryDS; 
  dbGrid1.DataSource:=DataSource1; 
  dbGrid2.DataSource:=DataSource1;   
end; 
 
procedure TfrmBookFeeQuery.ComboBox1Change(Sender: TObject); 
begin 
  QueryDS.Close; 
end; 
 
end.