Rambler's Top100
Форум: MS ACCESSVBVBA MS OfficeMS SQL server
Новые сообщения: 0000

Форум: MS ACCESS

Вопросы связанные с MS ACCESS

Обновить визитку
Участники «Online»
Все участники

 
 

Доброго времени суток, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Поиск.
 
 автор: SuperSem   (12.08.2009 в 12:03)   личное сообщение
 
 

Привет всем. У меня такая есть такая не решенная задача. Есть таблица "Заказы" в ней есть поля "дата" и "время", я вешаю процедуру на он - тайм, на форме. То есть каждую секунду идет проверка на совпадения значений даты и времени текущей и из таблицы.

strSQl = "SELECT ([Vremja]), ([dat]) FROM [PRZAK] WHERE Vremja = #" & Format(Time, "HH:MM:SS") & "# And dat = #" & Format(Date, "mm\/dd\/yyyy") & "#"

Процедура работает, но не правильно. Допустим она в таблице "дата" нашла сегодняшнюю дату, а в таблице "время" нашла время только с другой строки, то есть это время не относится к сегодняшней дате. Подскажите что я делаю не так. Необходимо по строчная поверка..... тот же будильник.

  Ответить  
 
 автор: kot_k_k   (12.08.2009 в 12:46)   личное сообщение
 
 

Не знаю, проверил работает - как часы Дал три записи 12/8/9 - 11:45:00, 12/8/9 - 11:45:30, 12/07/9 - 11:45:15 - сработало только 2 раза в нужное время

  Ответить  
 
 автор: ShadowOfSun   (12.08.2009 в 12:47)   личное сообщение
 
 

Выбирай вначале по дате, а из оставшегося по времени

SELECT IIf(DateValue([OperationDate])=Date(),IIf(TimeValue(tblBase!OperationDate)=Time(),True,False),False) AS RunProg
FROM tblBase
WHERE (((IIf(DateValue([OperationDate])=Date(),IIf(TimeValue([tblBase]![OperationDate])=Time(),True,False),False))=True));

  Ответить  
 
 автор: Гоблин   (12.08.2009 в 14:17)   личное сообщение
 
 

То есть каждую секунду идет проверка на совпадения значений даты и времени текущей и из таблицы.

А комп при этом не сильно загружен получается? Может запускать процедуру при каких-то условиях или командах.
Ну и попробуй поиск по одному полю запроса типа [Дата]&" "&[Время].


А может и нет.

  Ответить  
 
 автор: SuperSem   (13.08.2009 в 17:31)   личное сообщение
 
 

Смысл заключается в том, что если в таблице есть записи "дата" и "время" допустим
1. 13.08.2009 и 17 00 00
@@@ 2. 14.08 2009 и 17 15:00 @@@@@
3 15.08.2009 и 17 10 15
если сегодня 13.08.2009 то прога будет реагировать все 3 раза, то есть она просматривает столбец с датой находит сегодняшнюю и потом начинает сравнивать время..... Необходимо сделать так чтобы она находило дату, и смотрела на этой же строчки на время.

  Ответить  
 
 автор: kot_k_k   (13.08.2009 в 17:38)   личное сообщение
13 Кб.
 
 

Вот прога - реагирует ровно столько сколько нужно, позадавай даты время и запусти форму и посмотри.

  Ответить  
 
 автор: SuperSem   (13.08.2009 в 17:55)   личное сообщение
 
 

Большое спасибо все работает. Скажи пожалуйста где можно взять хорошей литературы по базам?? Именно по запросам. И еще объясни что значит ""RQ(strsql) > -1"""

  Ответить  
 
 автор: kot_k_k   (14.08.2009 в 09:49)   личное сообщение
 
 

Не знаю почему у тебя не работало, я просто взял твой запрос и получилось
RQ(StrSQL) - это функция которая проверяет наличие в базе необходимого. Просто мне лень каждый раз октрывая Recordset искать есть записи и сколько их, если нет обрабатывать ошибку, а так возвращает количество Recordcount или -1, Она написана в Module1.
Литературы куча всегда искал поисковиком, у меня Кен Блюттман ""Access трюки" - там различного рода "изгибы" и более обширней в плане реализации.

  Ответить  
 
 автор: SuperSem   (14.08.2009 в 10:48)   личное сообщение
 
 

Спасибо тебе большое, что самое интересное, у меня прога ругалась на RQ, хотя я модуль добавил.... потом просто объявил strSQL стрингами и все стало на свои места. Есть еще одна проблема довольно серьезная, сейчас сам буду мучать если не получится буду ф1 жать :)

  Ответить  
HiProg.com - Технологии программирования
Rambler's Top100 TopList