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

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

помогите сделать запрос


licherep ©   (2003-11-05 10:11:00) 

У меня сформирован набор данных из нескольких таблиц
SELECT S.NP, S.DRP, S.AR, K.RJ, S.FACTSS, O.NOR
FROM SHET S, KRJ K, ORG O
WHERE (S.KR = K.KR) AND (S.KO = O.KO) AND (S.NP >= 2003050000) AND (S.NP <= 2003059999) AND (S.DRP IS NOT NULL)
ORDER BY S.DRP, S.NP

NP - номер счета
DRP - дата
AR - адрес
RJ - район
FACTSS - сума
NOR - название предприятия

мне надо чтобы в программе я мог выбрать нужный район из 14 DBLookupComboBox1 и месяц из 12 DBLookupComboBox2, а остальное отсеить при обработке OnClick, чтобы посмотреть какая фирма сколько денег заплатила интересующего меня района в определенном месяце

помогите плиз


bon   (2003-11-05 11:11:00) [1]

>DenK_vrtz © (05.11.03 10:47) [3]
>bon, вопросик можно?
>а mounth(S.DRP) что такое?

Прошу прощения ,month(S.DRP)


Bob   (2003-11-05 10:53:00) [2]

Создай запрос с параметрами, откомпилируй его (Query1.prepare), а потом присваивай значения параметрам и Query1.Open. С параметрами работать должно побыстрее.


DenK_vrtz   (2003-11-05 10:47:00) [3]

bon, вопросик можно?
а mounth (S.DRP) что такое?


bon   (2003-11-05 10:30:00) [4]

Для начала см.[1]

procedure TForm1.Button2Click(Sender: TObject);
var str:string;
begin
str:="";
Query1.close;
Query1.Sql.Clear;
Query1.Sql.Add("SELECT S.NP, S.DRP, S.AR, K.RJ, S.FACTSS, O.NOR");
Query1.Sql.Add("FROM SHET S, KRJ K, ORG O");
if DBLookupComboBox1.KeyValue<>null then str:=str+" and K.RJ="+DBLookupComboBox1.KeyValue;
if DBLookupComboBox2.KeyValue<>null then str:=str+" and mounth(S.DRP)="+DBLookupComboBox2.KeyValue;
Query1.Sql.Add("WHERE (S.KR = K.KR) AND (S.KO = O.KO) AND (S.NP >= 2003050000) AND (S.NP <= 2003059999) AND (S.DRP IS NOT NULL)"+str);
Query1.Sql.Add("ORDER BY S.DRP, S.NP");
Query1.Open;
end;


DenK_vrtz   (2003-11-05 10:21:00) [5]

исходя из http://www.delphimaster.ru/cgi-bin/forum.pl?id=1067953252&n=1для начала разобраться в ошибках!
Умение самому исправлять ошибки - первое дело!


Наверх

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