![]() |
|
Модераторы: Akina |
![]()
|
|
| troika |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 18 Регистрация: 12.4.2009 Репутация: нет Всего: нет |
Добрый день.
Есть запрос с 3 параметрами. Нужно сделать так, что если пользователь не ввел какой-либо параметр, то он бы не учитывался при отборе данных. Например, есть следующие параметры запроса: номер студенческого билета, факультет, ФИО. Если пользователь ввел только факультет, то нужно показать всех студентов факультета, не зависимо от ФИО и номера студенческого билета. Проблема в том, что если не введен хоть один параметр, то ничего не отображается. Можно ли как-то это исправить? Например, задать параметрам значение по умолчанию Like "*". Еще пробовал написать в условии отбора, например для поля Факультет, так: IIf(IsNull([Введите факультет]);Like "*";[Введите факультет]). Если что-то ввести, то работает, а если ничего не вводить - увы, нет. Это сообщение отредактировал(а) Akina - 25.6.2009, 19:45 |
|||
|
||||
| Akina |
|
|||
|
Советчик ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 20581 Регистрация: 8.4.2004 Где: Зеленоград Репутация: 30 Всего: 454 |
-------------------- О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума. |
|||
|
||||
| bopoha |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1283 Регистрация: 10.5.2006 Где: Беларусь, Минск Репутация: 21 Всего: 21 |
Или можно как-то так:
|
|||
|
||||
| Akina |
|
|||
|
Советчик ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 20581 Регистрация: 8.4.2004 Где: Зеленоград Репутация: 30 Всего: 454 |
Нельзя. Запрос параметра - обычный InputBox, и даже по Esc возвращает не Null, а пустую строку. -------------------- О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума. |
|||
|
||||
| bopoha |
|
||||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1283 Регистрация: 10.5.2006 Где: Беларусь, Минск Репутация: 21 Всего: 21 |
Это предположение, что InputBox, на самом деле если ничего не ввести, то параметр будет равен Null. И если бы возвращал пусто, то тоже можно обработать. Еще как можно (см. запрос во вложенной бд)! И вообще давать пользователю возможность выполнять напрямую запрос не хорошо. Так надежней:
Присоединённый файл ( Кол-во скачиваний: 2 )
test_prm.zip 9,76 Kb |
||||
|
|||||
| Akina |
|
|||
|
Советчик ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 20581 Регистрация: 8.4.2004 Где: Зеленоград Репутация: 30 Всего: 454 |
Да, ошибся... или перепутал, или так, как я написАл, было в очень давней версии. В нём лень копаться, я написАл такой:
что сути не меняет. Если же использовать IsEmpty или сравнение с пустой строкой - получим фигвам. Однако приведённый мной выше вариант тоже работает, хотя Null & "*" = Null. Так что не всё там просто, где-то логический косяк явно присутствует. Это сообщение отредактировал(а) Akina - 26.6.2009, 12:02 -------------------- О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума. |
|||
|
||||
| troika |
|
||||
|
Новичок Профиль Группа: Участник Сообщений: 18 Регистрация: 12.4.2009 Репутация: нет Всего: нет |
Спасибо. Все работает. |
||||
|
|||||
![]()
|
| Правила форума "MS Access" | |
|
|
Запрещается! 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Akina. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | MS Access | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |