2010-06-14 3 views
0

У меня есть отчет Access 2007, в котором указывается диапазон дат. Он использует SQL-запрос:Параметры доступа к дате - Ошибка диапазона даты

SELECT Calls.CallID, Contacts.County, Calls.ContactID, Calls.Date, Calls.Subject, Calls.Notes, Calls.Time FROM Contacts INNER JOIN Calls ON Contacts.[ContactID] = Calls.[ContactID] WHERE (((Calls.Date) Between [From date: ] And [To date: ])); 

Это работает для большинства дат, но при использовании даты 07/01/2009 и 06/14/2010 я получаю сообщение об ошибке.

Это выражение напечатано неверно, или оно слишком сложно для оценки. Например, числовое выражение может содержать слишком много сложных элементов. Попробуйте упростить выражение, присвоив части выражения переменным. (Ошибка 3071)

Я подтвердил, что ни одно из значений Calls.Date не имеет значения. Есть ли лучший способ предложить пользователю диапазон дат?

ответ

1

Лучший способ получить параметры у пользователя - это форма. Вы можете обратиться к форме в запросе, например:

Between Forms!frmDates!FromDate And Forms!frmDates!ToDate 

Это сделает жизнь проще для вас, потому что вы можете оценить вклад перед выполнением запроса. Это также облегчит жизнь для пользователя, поскольку вы можете воспользоваться календарем, который прикрепляет к данным типы данных в Access 2007 & 2010.

Смежные вопросы