📄 cx.pas
字号:
unit cx;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, Grids, DBGrids, Mask, DBCtrls, DB, DBTables, FR_DSet,
FR_DBSet, FR_Class, FR_Desgn, FR_PTabl;
type
Tfchaxun = class(TForm)
GroupBox1: TGroupBox;
GroupBox2: TGroupBox;
Edit1: TEdit;
Edit2: TEdit;
Edit3: TEdit;
Edit4: TEdit;
Edit5: TEdit;
Edit6: TEdit;
Edit7: TEdit;
Edit8: TEdit;
Edit9: TEdit;
Edit10: TEdit;
Button1: TButton;
Button2: TButton;
Query1: TQuery;
DataSource1: TDataSource;
CheckBox1: TCheckBox;
CheckBox2: TCheckBox;
CheckBox3: TCheckBox;
CheckBox4: TCheckBox;
CheckBox5: TCheckBox;
CheckBox6: TCheckBox;
CheckBox7: TCheckBox;
CheckBox8: TCheckBox;
CheckBox9: TCheckBox;
CheckBox10: TCheckBox;
DBGrid1: TDBGrid;
ListBox1: TListBox;
GroupBox3: TGroupBox;
frPrintTable1: TfrPrintTable;
frDesigner1: TfrDesigner;
Database1: TDatabase;
procedure Button1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
private
{ Private declarations }
public
{ Public declarations }
end;
var
fchaxun: Tfchaxun;
implementation
{$R *.dfm}
procedure Tfchaxun.Button1Click(Sender: TObject);
var
Selectstr:string;{输出条目信息}
i:integer;
begin
if ((DataSource1.DataSet).Active=true) and((DataSource1.DataSet).RecordCount>0) then
begin
button2.Enabled:=true;
end
else
button2.Enabled:=false;
if Listbox1.SelCount=0 then{如果输出结果的项数目为0,则要求再选}
begin
showmessage('请选择输出结果');
exit;{退出此操作}
end;
Selectstr:='';{清空条目信息}
for i:=0 to listbox1.Items.Count-1 do
if(listbox1.Selected[i]) then
Selectstr:=Selectstr+listbox1.Items.Strings [i]+',';{逐个加入查询输出条目}
Selectstr:=Selectstr+',';
Delete(Selectstr,length(Selectstr)-1,2);{删除最后的‘, ’字符}
query1.Close;{首先关闭query1}
query1.SQL.Clear;{置空SQL语句}
query1.SQl.Add('Select '+Selectstr);{假如输出条目}
query1.SQl.Add('FROM bxb inner join xlb on bxb.报修序号=xlb.报修序号');{源表}
query1.SQl.Add('where bxb.报修序号=xlb.报修序号');
DBGrid1.datasource.enabled:=true;
//-------------------------------------------------------//
{1} if (Edit1.text<>'')and (checkbox1.Checked=true) then
query1.SQl.Add(' AND bxb.车辆号码='''+edit1.Text+'''');
{2}if (Edit1.text<>'')and (checkbox1.Checked=false) then
begin
showmessage('请确认') ;
DBGrid1.datasource.enabled:=false;
end;
{3}if ( length(Edit1.text)=0 )and (checkbox1.Checked=true) then
begin
showmessage('请输入车辆号码') ;
DBGrid1.datasource.enabled:=false;
end;
//-------------------------------------------------------//
if ( Edit2.text<>'' )and (checkbox2.Checked=true)then
begin
query1.SQl.Add(' AND bxb.报修序号='''+edit2.Text+'''');
end;
if ( Edit2.text<>'' )and (checkbox2.Checked=false)then
begin
showmessage('请确认') ;
DBGrid1.datasource.enabled:=false;
end;
if ( length(Edit2.text)=0 )and (checkbox2.Checked=true) then
begin
showmessage('请输入报修序号') ;
DBGrid1.datasource.enabled:=false;
end;
//-------------------------------------------------------//
if(Edit3.text<>'')and (checkbox3.Checked=true) then
query1.SQl.Add(' AND bxb.维修地点='''+edit3.Text+'''');
if( Edit3.text<>'' )and (checkbox3.Checked=false)then
begin
showmessage('请确认') ;
DBGrid1.datasource.enabled:=false;
end;
if ( length(Edit3.text)=0 )and (checkbox3.Checked=true) then
begin
showmessage('请输入维修地点') ;
DBGrid1.datasource.enabled:=false;
end;
//------------------------------------------------//
if(Edit4.text<>'') and(checkbox4.Checked=true) then
query1.SQl.Add(' AND 维修系统 like '''+'%'+edit4.Text+'%'+'''');
if( Edit4.text<>'' )and (checkbox4.Checked=false)then
begin
showmessage('请确认') ;
DBGrid1.datasource.enabled:=false;
end;
if ( length(Edit4.text)=0 )and (checkbox4.Checked=true) then
begin
showmessage('请输入维修系统名') ;
DBGrid1.datasource.enabled:=false;
end;
//------------------------------------------------//
if(Edit5.text<>'')and (checkbox5.Checked=true) then
query1.SQl.Add(' AND 系统部件 like '''+'%'+edit5.Text+'%'+'''');
if( Edit5.text<>'' )and (checkbox5.Checked=false)then
begin
showmessage('请确认') ;
DBGrid1.datasource.enabled:=false;
end;
if ( length(Edit5.text)=0 )and (checkbox5.Checked=true) then
begin
showmessage('请输入系统部件名') ;
DBGrid1.datasource.enabled:=false;
end;
//------------------------------------------------//
if(Edit6.text<>'') and(checkbox6.Checked=true) then
query1.SQl.Add(' AND 部件位置 like '''+'%'+edit6.Text+'%'+'''');
if( Edit6.text<>'' )and (checkbox6.Checked=false)then
begin
showmessage('请确认') ;
DBGrid1.datasource.enabled:=false;
end;
if ( length(Edit6.text)=0 )and (checkbox6.Checked=true) then
begin
showmessage('请输入部件位置名') ;
DBGrid1.datasource.enabled:=false;
end;
//------------------------------------------------//
if(Edit7.text<>'')and (checkbox7.Checked=true) then
query1.SQl.Add(' AND bxb.报修时间 like '''+edit7.Text+'%'+'''');
if( Edit7.text<>'' )and (checkbox7.Checked=false)then
begin
showmessage('请确认') ;
DBGrid1.datasource.enabled:=false;
end;
if ( length(Edit7.text)=0 )and (checkbox7.Checked=true) then
begin
showmessage('请输入报修时间') ;
DBGrid1.datasource.enabled:=false;
end;
//------------------------------------------------//
if(Edit8.text<>'') and(checkbox8.Checked=true) then
query1.SQl.Add(' AND 修完时间 like '''+edit8.Text+'%'+'''');
if( Edit8.text<>'' )and (checkbox8.Checked=false)then
begin
showmessage('请确认') ;
DBGrid1.datasource.enabled:=false;
end;
if ( length(Edit8.text)=0 )and (checkbox8.Checked=true) then
begin
showmessage('请输入修完时间') ;
DBGrid1.datasource.enabled:=false;
end;
//------------------------------------------------//
if(Edit9.text<>'')and (checkbox9.Checked=true) then
query1.SQl.Add(' AND 维修员 ='''+edit9.Text+'''');
if( Edit9.text<>'' )and (checkbox9.Checked=false)then
begin
showmessage('请确认') ;
DBGrid1.datasource.enabled:=false;
end;
if ( length(Edit9.text)=0 )and (checkbox9.Checked=true) then
begin
showmessage('请输入维修员名字') ;
DBGrid1.datasource.enabled:=false;
end;
//------------------------------------------------//
if(Edit10.text<>'') and(checkbox10.Checked=true) then
query1.SQl.Add(' AND 检验员 ='''+edit10.Text+'''');
if( Edit10.text<>'' )and (checkbox10.Checked=false)then
begin
showmessage('请确认') ;
DBGrid1.datasource.enabled:=false;
end;
if ( length(Edit10.text)=0 )and (checkbox10.Checked=true) then
begin
showmessage('请输入检验员名字') ;
DBGrid1.datasource.enabled:=false;
end;
//------------------------------------------------//
try
query1.Prepare;{准备展开query1语句}
query1.Open;{展开}
except
showmessage('范围格式不对');{例外处理}
end;
end;
procedure Tfchaxun.Button2Click(Sender: TObject);
begin
frPrintTable1.ShowReport;
end;
procedure Tfchaxun.FormClose(Sender: TObject; var Action: TCloseAction);
begin
edit1.text:='';
edit2.text:='';
edit3.text:='';
edit4.text:='';
edit5.text:='';
edit6.text:='';
edit7.text:='';
edit8.text:='';
edit9.text:='';
edit10.text:='';
checkbox1.Checked:=false;
checkbox2.Checked:=false;
checkbox3.Checked:=false;
checkbox4.Checked:=false;
checkbox5.Checked:=false;
checkbox6.Checked:=false ;
checkbox7.Checked:=false;
checkbox8.Checked:=false ;
checkbox9.Checked:=false ;
checkbox10.Checked:=false ;
button2.Enabled:=false;
(DataSource1.DataSet).Active:=false;
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -