|
|
|
Параметрические запросы
|
|||
|---|---|---|---|
|
#18+
У меня источником формы запросик построенный с использованием под запросов, подзапросы формируют "цепочку". Пусть подзапрос 1го уровня имеет порядковый номер - 1, а конечный запрос имеет порядковый номер - 4. Дело в том что запросы 1 и 4 имеют изменяющуюся часть, т.е. параметр причём одинаковый. 1) Можно ли сделать 1 запросик параметрическим и как то передать ему нужный параметр при открытии формы? 2) Да ещё, простите моё невежество, как правильно открыть форму у которой в сурсе есть параметрический запрос, если можно ввиде кода По первому создавать/удалять запросы умею, меня интересует именно передача параметра ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.06.2003, 13:23 |
|
||
|
Параметрические запросы
|
|||
|---|---|---|---|
|
#18+
А откуда параметры-то беруться? Если из другой формы - просто делаешь параметр как Forms![ФормасПараметрами]![КонтролСоЗначениемПараметра] - в таком виде акес сам подцепит значения. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.06.2003, 13:36 |
|
||
|
Параметрические запросы
|
|||
|---|---|---|---|
|
#18+
передавать праметры можно просто как forms![ИмяФОрмы]![ИмяКонтрола] а можно своей функцией Function GetNacenkaA() As Double GetNacenkaA = [Forms]![Планирование]![txtNacenkaA] / 100 End Function Функции юзера из запроса работают так же, как системные, главное не забывать после них скобки: GetNacenkaA() Удобно по двум причинам: а) не лезут ненормальные ошибки при запуске перекрестных запросов и диаграмм б) можно сделать сложный расчет прямо в функции, в) можно ту же функцию вызвать и в отчете, чтобы юзер увидел параметры фильтрации ПУсть господа гуру выскажут что-нибудь за или против такого метода - будет интересно ;) на впрос 2: нужно источнику данных формы присвоить имя этого запроса: в конструкторе (св-ва) или в коде (для крутых ВБшников ;) на вопрос1: т.е. запрос 2 основан на запросе 1, запрос 3 - на 2-ом и т.д.? Тогда по идее если у тебя параметр фильтрует что-то в первом, в остальных условия уже не нужны. Опять телепатируем... Там группировка или что, в 4-х последовательных? Классификация по "справочнику статей"? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.06.2003, 13:41 |
|
||
|
Параметрические запросы
|
|||
|---|---|---|---|
|
#18+
Senin Viktor писал:А откуда параметры-то беруться? Если из другой формы - просто делаешь параметр как Forms![ФормасПараметрами]![КонтролСоЗначениемПараметра] - в таком виде акес сам подцепит значения. Как взять откуда то данные я в курсе - куда их поставить вот в чём вопрос:) Alexus12 писал:на вопрос1: т.е. запрос 2 основан на запросе 1, запрос 3 - на 2-ом и т.д.? Тогда по идее если у тебя параметр фильтрует что-то в первом, в остальных условия уже не нужны. в последнем запросе привязываються ещё данные... долго объяснять но это действительно надо Alexus12 писал:Опять телепатируем... Там группировка или что, в 4-х последовательных? Классификация по "справочнику статей"? Гребанутая выборка принципиально "слабо" связанных данных + избавление от лишних записей + добавление записей которые должны быть но их нет Alexus12 писал:Функции юзера из запроса работают так же, как системные, главное не забывать после них скобки: GetNacenkaA() И куда её вписать в любое место или в модуль ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.06.2003, 13:59 |
|
||
|
Параметрические запросы
|
|||
|---|---|---|---|
|
#18+
2Sfagnum >Как взять откуда то данные я в курсе - куда их поставить вот в чём вопрос:) Ну я же написал - акес сам подцепит значения, если кончено форма будет октрыта. Никуда ничего вставлять не надо. Функции в запросе желательно не использовать, особенно. когда можно обойтись без них. 2Alexus12 >лезут ненормальные ошибки при запуске перекрестных запросов и диаграмм Ошибки не будут лезть, если явно прописать инструкции Parametrs в Select'e ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.06.2003, 14:45 |
|
||
|
Параметрические запросы
|
|||
|---|---|---|---|
|
#18+
Senin Viktor писал:Ну я же написал - акес сам подцепит значения, если кончено форма будет октрыта. Никуда ничего вставлять не надо. В том то и дело что я хочу шоб форма отрылась с по запросу с опредлённым параметром. Т.е. у меня есть форма на котрой есть значение которое я хочу использовать в качестве параметра, нажимаю на кнопочку выполняеться код Код: plaintext а как она узнает что я подразумеваю под параметром? спросит? - мне бы в тихоря ей сказать:) Senin Viktor писал:Функции в запросе желательно не использовать, особенно. когда можно обойтись без них. Не могли бы Вы объяснить почему? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.06.2003, 15:05 |
|
||
|
Параметрические запросы
|
|||
|---|---|---|---|
|
#18+
Не согласен с Виктором, хотя и могу быть не прав (относительно юзанья юзверьских функций) - но мне так удобнее и привычнее ;) Куда вставлять: а) в строку "условия отбора" конструктора С текстом эти радости выглядят так: Like GetArtikul() А GetArtikul() должен вернуть строку типа Артикул1 для выбора 1 арт или Артикул* для всех, начинающихся с "Артикул" С датами используй Between __ and ___ (см. справку ;) с числами = < > ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.06.2003, 15:54 |
|
||
|
Параметрические запросы
|
|||
|---|---|---|---|
|
#18+
То Alexus12 я про код(тело) функции GetArtikul() его рисавать в непосредственно под формой или в модуле? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.06.2003, 16:00 |
|
||
|
Параметрические запросы
|
|||
|---|---|---|---|
|
#18+
Тело процедур и функций - только в модулях! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.06.2003, 16:05 |
|
||
|
Параметрические запросы
|
|||
|---|---|---|---|
|
#18+
пасибки Может и на предидущий вопрос ответите? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.06.2003, 16:08 |
|
||
|
Параметрические запросы
|
|||
|---|---|---|---|
|
#18+
Честно говоря, не понял, на какой именно ;) Механизьм работы в обчем и целом таков: Открывается форма В ней задаются параметры Открывается отчет, основанный на запросе, в котором для фильтрации используются параметры формы. Если надо видеть результаты фильтрации на форме, можно основать форму на запросе с параметром в форме после изменения текст/комбобокса с параметром запускать Me.Requery Можно кнопочку для этого сделать, а можно по событию изменения данных контрола, по которому фильтрация ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.06.2003, 16:43 |
|
||
|
Параметрические запросы
|
|||
|---|---|---|---|
|
#18+
2Sfagnu >DoCmd.OpenForm "Colors_DeliveryLn" По мимо имени формы в DoCmd.OpenForm , есть еще FilterConditioanal, WhereConditional, а так же OpenArgs. Обычно с помощью этих условий с источником записей формы можно сделать все - что угодно. Данное решение подойдет, если ты хочешь передавать свой "параметр(ы)" чтобы ограничить число записей ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.06.2003, 16:48 |
|
||
|
Параметрические запросы
|
|||
|---|---|---|---|
|
#18+
По поводу параметров Вот к примеру у меня есть форма с сурсом - параметрический запрос Если я просто открываю форму, то появляеться окошечко - введите такой то параметр как програмно запустить форму чтоб этого окошечка не открывалось и куда положить нужный параметр ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.06.2003, 16:55 |
|
||
|
Параметрические запросы
|
|||
|---|---|---|---|
|
#18+
Ну и медленно я отвечаю же... То Senin Viktor А можно примерчик, а то пока в этом хелпе разберёшься.... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.06.2003, 16:58 |
|
||
|
Параметрические запросы
|
|||
|---|---|---|---|
|
#18+
Ура, мы подбираемся к решению проблемы. Ты где ставишь свой параметр в квадратных скобках, чтобы он у тебя при запуске спрашивался? ВОТ ВМЕСТО НЕГО и воткни [Forms]![форма]![контролнаформеСвведеннымвнегопараметром] и все будет замечательно! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.06.2003, 17:04 |
|
||
|
|

start [/forum/topic.php?fid=45&fpage=1794&tid=1681182]: |
0ms |
get settings: |
9ms |
get forum list: |
18ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
34ms |
get topic data: |
10ms |
get forum data: |
2ms |
get page messages: |
60ms |
get tp. blocked users: |
3ms |
| others: | 194ms |
| total: | 336ms |

| 0 / 0 |
