万份紧急啊,各位救救我吧(0分)

  • 主题发起人 topdelphi
  • 开始时间
不好意思,是我加掉了一个空格,在网页上没看出来
procedure TForm1.BitBtn1Click(Sender: TObject);//这是查询代码
VAR
i,j,k:INTEGER;
s:tstringlist;
sql,t:string;
begin
s:=tstringlist.Create ;
for i:=0 to list1.Items.Count -1 do
if list1.Checked then
s.Add(list1.Items);
if s.Count =0 then
begin
s.Free;
exit;
end;
DBGrid1.DataSource:=DataSource1;
DataSource1.DataSet:=Query2;
sql:=s[0];
for i:=1 to s.Count -1 do
sql:=sql+','+s;
sql:='select'+SQL+' from JOBS';
t:=s[0];
s.clear;
for i:=0 to list2.Items.Count -1 do
if list2.Checked then
s.Add(list2.Items);
if s.Count>0 then
begin
sql:=sql+' where cast('+t+' as CHAR(30)) in ('''+s[0]+'''';
// ^这里有一个空格
for i:=1 to s.Count -1 do
sql:=sql+','''+s+'''';
sql:=sql+')';
end;
query2.SQL.Text :=sql;
query2.Active :=true;
s.Free;
end;
end.
 
成功了先生,真的很感谢你,我还有一小处问题想请教,那如果我想把这个功能的查询
出来的记录输出到报表里,如何设置呢,我已经将QuickRep1报表的DATASET设成我这个
QUERY2,但是输出的时候,只会是一条记录,没有显示我所查询出来的记录,
请教如何用啊。
 
你在应该是直接把控件放到QuickRep1上了吧,
应该是现在QuickRep1上放一个SubDetail,再在SubDetail上添加DBText之类的控件,

至于QuickRep怎么用在论坛上搜索一下,有很多的
 
顶部