i,l:integer;
function getsth(CurrEdit:TEdit):boolean;
begin
result:=false;
if CurrEdit.Text<>'' then
result:=true;
end;
begin
SQLAll:='';
SQLStr:='SELECT * FROM "仪器借出信息库.db" WHERE ';
if RadioGroup1.ItemIndex=1 then Log:='OR' else Log:='AND';
if Getsth(Edit_name) then
arrstr[1]:='(借用人='''+Edit_name.Text+''')';
if Getsth(Edit_No) then
arrstr[2]:='(仪器编号='''+Edit_No.Text+''')';
if Getsth(Edit_DateOut) then
arrstr[3]:='(借用日期='''+Edit_DateOut.Text+''')';
if Getsth(Edit_DateIn) then
arrstr[4]:='(归还日期='''+Edit_DateIn.Text+''')';
arrstr[5]:='';
for i:=1 to 4 do
begin
arrstr[5]:=arrstr[5]+arrstr[i];
if arrstr[i]<>'' then
SQLAll:=SQLAll+Log+arrstr[i];
end;
if arrstr[5]='' then
begin
showmessage('没有查询项目?');
exit;
end;
l:=strlen(Pchar(SQLAll));
GetMem(SQLTemp,l);
SQLTemp^ := Chr(0);
  if SQLAll[1]='O' then
    StrCat(SQLTemp,Pchar(SQLAll)+2);
  if SQLAll[1]='A' then
    StrCat(SQLTemp,Pchar(SQLAll)+3);
  SQLStr:=SQLStr+SQLTemp+' ORDER BY 借用人,仪器编号,借用日期,归还日期';
  FreeMem(SQLTemp);
//  Application.MessageBox(Pchar(SQLStr),'预查询的SQL语句',MB_OK);
  with Query1 do
  begin
    SQL.Clear;
    SQL.Add(SQLStr);
    Prepare;
    ExecSQL;
    Open;
  end;
end;
procedure Tfrm_Borrow.DataSource1DataChange(Sender: TObject;
  Field: TField);
begin
  FormActivate(Sender);
end;
procedure Tfrm_Borrow.FormActivate(Sender: TObject);
begin
  MainForm.StatusBar.Panels[1].Text:='仪器借用库纪录导航信息:第'+inttostr(DataSource1.DataSet.RecNo)+'笔纪录-总共'+inttostr(DataSource1.DataSet.RecordCount)+'笔纪录';
end;
end.
通讯录维护界面与代码设计实现
代码设计:
unit Child_Code;
interface
uses
  Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
  ExtCtrls, Grids, DBGrids, Db, DBTables, StdCtrls, DBCtrls;
type
  Tfrm_Code = class(TForm)
    Panel1: TPanel;
    Label1: TLabel;
    ComboBox1: TComboBox;
    DataSource1: TDataSource;
    Table1: TTable;
    DBNavigator: TDBNavigator;
    DBGrid1: TDBGrid;
    procedure FormCreate(Sender: TObject);
    procedure FormClose(Sender: TObject; var Action: TCloseAction);
    procedure ComboBox1Change(Sender: TObject);
    procedure DataSource1DataChange(Sender: TObject; Field: TField);
    procedure FormActivate(Sender: TObject);
  private
    function GetDBName: String;
    { Private declarations }
  public
    {
首页 上一页 5 6 7 8 9 10 11 下一页 尾页 8/13/13
delphi实验室仪器管理系统(八)由免费论文网(www.jaoyuw.com)会员上传。

