|
|
|
Запросы... динамические
|
|||
|---|---|---|---|
|
#18+
Каким образом сформировать запрос на выборку, в котором бы указывался критерий отбора, находящийся в переменной, значение которой заполняется только после нажатия на кнопку определенной формы? Заранее благодарен за ответ. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.01.2004, 20:53 |
|
||
|
Запросы... динамические
|
|||
|---|---|---|---|
|
#18+
currentdb.querydefs!myquery.sql=mystring ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.01.2004, 20:54 |
|
||
|
Запросы... динамические
|
|||
|---|---|---|---|
|
#18+
Можно конкретный пример? Ситуация такая: есть таблица. Есть запрос, который возвращает определенные поля этой таблицы, суммированные. Как в таблице, так и в запросе есть поле "дата". Требуется по нажатию кнопки вывести InputBox, вводя в который дату, получаем результат этого запроса, отфильтрованный по введенной дате. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.01.2004, 20:59 |
|
||
|
Запросы... динамические
|
|||
|---|---|---|---|
|
#18+
Тогда все гораздо проще. В запросе делаем параметр. В кнопке ставим запуск запроса. Запрос запускается, запрашивает значение параметра через InputBox и работает дальше. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.01.2004, 21:06 |
|
||
|
Запросы... динамические
|
|||
|---|---|---|---|
|
#18+
А если требуется, скажем, после ввода даты через InputBox отправить результат запроса, отфильтрованный по этой дате, по электронной почте? При этом запрос не один, а дату надо ввести только один раз для удобства пользования. Как я понимаю, надо сделать по одному и тому же параметру в каждом запросе (..."WHERE Дата = variable_with_date"...), а при нажатии на кнопку заполнить переменную variable_with_date нужной датой, после чего отправить результаты всех запросов по почте... Но у меня почему-то не получается. Вроде и переменная глобальная, а Access все равно спрашивает через InputBox значение параметра. Может, можно вручную сформировать запрос? То есть поместить его в переменную типа string и выполнить ее. Если да, то как? Так не получается: ---- SQL_str = "SQL-запрос;" DoCmd.RunSQL(SQL_str) ---- ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.01.2004, 22:19 |
|
||
|
Запросы... динамические
|
|||
|---|---|---|---|
|
#18+
Можно занести в переменную. Тогда в запросе надо обращаться к функции, которая будет возвращать значение этой переменной. Переменных напрямую запросы не видят. Можно составлять запрос вручную, тогда его можно запускать в зависимости от того, что это за запрос: если исполняемый (инсерт, апдейт, дилит) - то currentdb.execute; если нет - то currentdb.openrecordset и дальше что нужно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.01.2004, 22:28 |
|
||
|
Запросы... динамические
|
|||
|---|---|---|---|
|
#18+
Создать временный запрос через CreateQueryDef, отослать его и потом удалить. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.01.2004, 01:18 |
|
||
|
Запросы... динамические
|
|||
|---|---|---|---|
|
#18+
временный запрос через CreateQueryDef - плохо в мультиюзерном энвайронменте. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.01.2004, 11:39 |
|
||
|
Запросы... динамические
|
|||
|---|---|---|---|
|
#18+
Если интерфейс держать на сервере - конечно. Сам недолюбливаю временные запросы и таблицы. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.01.2004, 13:20 |
|
||
|
Запросы... динамические
|
|||
|---|---|---|---|
|
#18+
автор Владими Саныч: Можно занести в переменную. Тогда в запросе надо обращаться к функции, которая будет возвращать значение этой переменной. Переменных напрямую запросы не видят. Без функции: занести в переменную, вызвать запрос из VBA и включить в него: "data In (" & переменная & ")" ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.01.2004, 15:00 |
|
||
|
|

start [/forum/topic.php?fid=45&msg=32379619&tid=1677141]: |
0ms |
get settings: |
4ms |
get forum list: |
10ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
153ms |
get topic data: |
7ms |
get forum data: |
1ms |
get page messages: |
41ms |
get tp. blocked users: |
1ms |
| others: | 198ms |
| total: | 419ms |

| 0 / 0 |
