Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

отобразить результат запроса [D6, Paradox]


Страницы:   1 2

gaval ©   (2005-06-22 13:03:00) 

Такой вопрос есть запрос select sum(field) from table как результат отобразить скажем в Label1.Caption


evvcom   (2005-06-22 15:43:00) [1]


> q.Active:=true;
> q.Close;

Тоже интересное решение. Работать-то будет (если, конечно, учесть [14] и [20]), но мое имхо или используй Active:=True;/Active:=False; или Open/Close, а то глаза режет...


gaval   (2005-06-22 15:38:00) [2]

заработало q.Close; (всему виной)


Sergey13   (2005-06-22 15:35:00) [3]

2[12] gaval   (22.06.05 14:50)
Не дурно бы посмотреть результаты работы раскоментированой строчки
         //ShowMessage(text);
и структуру таблицы.
И, повторюсь, не надо закрывать кверик перед чтением результата запроса.


gaval   (2005-06-22 15:34:00) [4]

FileName = table.TableName
Field = 'field'
q = Query


Val   (2005-06-22 15:32:00) [5]

gaval сначала посмотри [14] Sergey13 ©   (22.06.05 14:53)


Rule   (2005-06-22 15:30:00) [6]

gaval   (22.06.05 15:24) [16]
смотри
Rule ©   (22.06.05 15:01) [15]


gaval   (2005-06-22 15:24:00) [7]

Это БДЕ запросы через квери а просмотр и обработка в табле


Rule   (2005-06-22 15:01:00) [8]

gaval   (22.06.05 14:50) [12]
а аргументы функции какие передаешь ?


Sergey13   (2005-06-22 14:53:00) [9]

2[12] gaval   (22.06.05 14:50)
q.Close;
Не рановато вызываешь?


Rule   (2005-06-22 14:51:00) [10]

gaval   (22.06.05 14:46) [7]
очень интересн, помоему проблемма прячется ещё глубже ... аразве может поле называться field, а таблица тєйбл ? єто раз, а во вторых квери что у тебя есть такое ? это БДЕ или что ?


gaval   (2005-06-22 14:50:00) [11]

пытаюсь делать так - выдает ошибку field f not found
function TDM.SumField(FileName:String;Field:String;q:TQuery):String;
var
 text:String;
begin
    text:='select sum('+Field+') as f from '''+FileName+'''';
          //ShowMessage(text);
    q.SQL.Clear;
    q.sql.Add(text);
    q.Active:=true;
    q.Close;
    result:= q.FieldByName('f').AsString;
end;


gaval   (2005-06-22 14:50:00) [12]

пытаюсь делать так - выдает ошибку field f not found
function TDM.SumField(FileName:String;Field:String;q:TQuery):String;
var
 text:String;
begin
    text:='select sum('+Field+') as f from '''+FileName+'''';
          //ShowMessage(text);
    q.SQL.Clear;
    q.sql.Add(text);
    q.Active:=true;
    q.Close;
    result:= q.FieldByName('f').AsString;
end;


evvcom   (2005-06-22 14:50:00) [13]

судя по sum(field) as fэто поле называется просто "f"


Sergey13   (2005-06-22 14:50:00) [14]

2[7] gaval   (22.06.05 14:46)
А это рабочий запрос? Прям с field и table?


Digitman   (2005-06-22 14:49:00) [15]


> пытаюсь реалезовать в afterOpen


если приспичило, можно и в afterOpen

а если без выкрутасов с afterOpen'ами, то просто как 2х2=4=True :

query.Open; //открыли НД
Label1.Caption := IntToStr(query.Fields[0].AsInteger); //вот ЭТО (*) можно всандалить и в обработчик afterOpen'а, если тебе так удобней

если неуверен, что НД будет не пуст, можно сделать перед (*) проверку а-ля
if query.RecordCount = 0 then ..


gaval   (2005-06-22 14:46:00) [16]

есть кое - что так у меня постоянно ошибку выдает что поле field не найдено  
пробовал также query.sql.Add('select sum(field)as f from table')


Johnmen   (2005-06-22 14:43:00) [17]

По форуму не пробовал искать ?


gaval   (2005-06-22 14:42:00) [18]

Запрос написан в query.sql.Add('select sum(field) from table')
пытаюсь реалезовать в afterOpen


Johnmen   (2005-06-22 14:41:00) [19]

Я бы сказал, вопрос стоит ещё глубже - а есть ли запрос :)


Sergey13   (2005-06-22 14:38:00) [20]

2[2] Rule ©   (22.06.05 14:34)
Тут вопрос стоит - выполняется ли он вообще. 8-)


Страницы:   1 2

Наверх

Титульная страница Поиск, карта сайта Написать письмо