|

楼主 |
发表于 2008-6-16 10:21:46
|
显示全部楼层
if tvwQJ.Selected.Level>1 then
begin
with query2 do
begin
close;
CommandText:='select ename,sorder from bd_p_fields where tabname='''+SysUtils.LowerCase(ordername)+''' and (fieldpage='''+sPageShowNum+''' or ename in (''sid'',''sfid'')) order by sorder';
query2.Filtered:=true;
open;
first;
while not eof do
begin
orderstr:=orderstr+','+FieldByName('ename').AsString;
next;
end;
end;
end;
if orderstr<>'' then
begin
pagesql:=ssql;
ssql:='select '+StringUtils.copy(orderstr,(StringUtils.Pos(',',orderstr)+1),9999)+' '+StringUtils.copy(pagesql,(StringUtils.Pos('*',pagesql)+1),999);
end;
//为数据集赋SQL,并显示某一具体记录
with TSQLDataSet(DataSetBroker1.DataSet) do
begin
DataGrid1.DataSource:=nil;
Close;
sql.Clear;
SQL.Text:=ssql;
DataSetBroker1.DataSet.Filtered:=true;
DataGrid1.DataSource:=DataSetBroker1;
open;
end; |
|