Показать сообщение отдельно
  #5  
Старый 05.12.2011, 15:46
Аватар для Ildar-tsr
Ildar-tsr Ildar-tsr вне форума
Местный
 
Регистрация: 09.08.2011
Адрес: г.Сургут, ХМАО
Сообщения: 453
Репутация: 7402
По умолчанию

Первое поле в таблице имя запроса, второе сам запрос (хотя я предпочитаю обращаться не по имени, а по индексу).
Тебе понадобиться такая функция:
Код:
function Tdm.Selects(s: string): string;
var QSel: TADOQuery;
begin
  QSel:= TADOQuery.Create(nil);
  QSel.Connection:= ADOConnection1;
  QSel.SQL.Text:= 'select {поле_где_хранится_текст_запроса} from {имя_таблицы} where {поле_имени_запроса} = '+QuotedStr('тут_имя_твоего_запроса');
  QSel.Open;

  Result:= qSel.FieldByName('{поле_где_хранится_текст_запроса}').AsString;

  qSel.Close;
  qSel.Free;
end;
Вызов в программе непосредственно:
Код:
...
ADOQuery1.SQL.Text:= Selects('TEST_SELECT'); //Вернет текст запроса с именем TEST_SELECT
...
Теперь ты можешь корректировать текст запроса "влет", без перекомпиляции.
__________________
Google в помощь
Ответить с цитированием