Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > БД в Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 20.04.2011, 11:26   #1
-Apostol-
 
Аватар для -Apostol-
 
Регистрация: 20.04.2011
Сообщений: 7
Печаль запрос на выручку

Приветствую вас! Очень нужна помощь На форме находится компоненты DBGrid1,ADOTable1, ADOConnection1, DataSource1, ADOQuery1 также 2 компонента DateTimePicker.
Необходимо организовать подсчет выручки за определённое время. Пользователь должен с помощью компонентов DateTimePicker вводит дату начальную и конечную при нажатии кнопки должны остаться только те записи которые входят в диапазон между 2 датами.Я зашел в тупик
-Apostol- вне форума Ответить с цитированием
Старый 20.04.2011, 11:51   #2
SERG1980
Участник клуба
 
Аватар для SERG1980
 
Регистрация: 28.03.2007
Сообщений: 1,814
По умолчанию

Код:
 with ADOQuery1 do
  begin
   Close;
   SQL.Clear;
   Parameters.Clear;
   Parameters.AddParameter.Name:='Date1';
   Parameters.AddParameter.Name:='Date2';
   Parameters.ParamByName('Date1').DataType:=ftDateTime;
   Parameters.ParamByName('Date2').DataType:=ftDateTime;
   Parameters.ParamByName('Date1').Value:=DateTimePicker1.Date;
   Parameters.ParamByName('Date2').Value:=DateTimePicker2.Date;
   SQL.Add('SELECT * FROM Таблица WHERE DateField BETWEEN :Date1 AND :Date2 ORDER BY DateField ASC');
   Open;
  end;
где DateField поле с датами по которому идёт отбор
SERG1980 вне форума Ответить с цитированием
Старый 20.04.2011, 12:08   #3
-Apostol-
 
Аватар для -Apostol-
 
Регистрация: 20.04.2011
Сообщений: 7
По умолчанию попробовал чето не очень получается

Если не сложно посмотри пожалуйста и укажи недочеты по возможности если не затруднит исправьте
Вложения
Тип файла: rar Программа.rar (580.3 Кб, 13 просмотров)
-Apostol- вне форума Ответить с цитированием
Старый 20.04.2011, 12:41   #4
-Apostol-
 
Аватар для -Apostol-
 
Регистрация: 20.04.2011
Сообщений: 7
По умолчанию

Как описать дата 1 дата 2 или их вообще не нужно описывать?????
-Apostol- вне форума Ответить с цитированием
Старый 20.04.2011, 13:12   #5
SERG1980
Участник клуба
 
Аватар для SERG1980
 
Регистрация: 28.03.2007
Сообщений: 1,814
По умолчанию

Не могу откомпилировать ваш проект так как нет TRvdataSetConnection
А так я вам же всё порлностью описал поместите этот код для ккакой нибудь кнопки подставьте имя вашей таблицы и поля по которому идёт запрос
PS имя таблицы не путайте с именем DBGrid
SERG1980 вне форума Ответить с цитированием
Старый 20.04.2011, 16:47   #6
-Apostol-
 
Аватар для -Apostol-
 
Регистрация: 20.04.2011
Сообщений: 7
По умолчанию

А если у меня база в Acces сделана и привязана???
-Apostol- вне форума Ответить с цитированием
Старый 20.04.2011, 17:01   #7
-Apostol-
 
Аватар для -Apostol-
 
Регистрация: 20.04.2011
Сообщений: 7
По умолчанию Может вот это хотя бы запустится

Просто мне нужно привязать к программе бд сделанную в Accees я это сделал а теперь мучаюсь куда не зайду спросить совет по выручке от продаж или ещё что то постоянно проблемы
Вложения
Тип файла: rar Программа.rar (595.9 Кб, 10 просмотров)
-Apostol- вне форума Ответить с цитированием
Старый 20.04.2011, 17:26   #8
-Apostol-
 
Аватар для -Apostol-
 
Регистрация: 20.04.2011
Сообщений: 7
По умолчанию

Изменил в базе имя таблицы написал англ буквами везде все поменял пишет "отсутствует значение одного или нескольких требуемых параметров"
-Apostol- вне форума Ответить с цитированием
Старый 21.04.2011, 08:43   #9
SERG1980
Участник клуба
 
Аватар для SERG1980
 
Регистрация: 28.03.2007
Сообщений: 1,814
По умолчанию

Цитата:
Сообщение от -Apostol- Посмотреть сообщение
Изменил в базе имя таблицы написал англ буквами везде все поменял пишет "отсутствует значение одного или нескольких требуемых параметров"
Ну как я понял этот кусок кода отвечал у вас за запрос
Код:
procedure TForm4.Button1Click(Sender: TObject);
begin
  // выполнить   
{try
          ADOQuery1.Active:=false;
          ADOQuery1.Parameters('first_date').AsDate:=DateTimePicker1.Date;
          ADOQuery1.Param('last_date').AsDate:=DateTimePicker2.Date;
          ADOQuery1.Active:=true;
     except
        on error: EDatabaseError do begin
           MessageDlg('При выполнении запроса произошла ошибка:'+#13+#13+
           error.Message ,mtError,[mbOK],0);
        end;
end;}
end;
А теперь посмотрите в пост где я вам описывал создание запроса. Где сам SQL запрос, где создание параметров (если конечно вы их не создали в дизайн тайм).
Перед тем как активировать квери надо написать sql запрос хоть какой нибудь
PS советую почитать вам книгу Флёнова "библия программиста", скачать можно на данном сайте в разделе книги

Последний раз редактировалось SERG1980; 21.04.2011 в 08:45.
SERG1980 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Запрос с CASE переделать в запрос с PIVOT (MS SQL Server 2005) Машуля SQL, базы данных 4 06.05.2010 21:09
запрос reBOOK SQL, базы данных 27 11.11.2009 10:07
запрос ссылается на несвязанный с ним запрос kolebatel SQL, базы данных 0 11.06.2008 12:50
Запрос wolfik0 БД в Delphi 1 23.04.2008 21:55