|
15 Кб. |
|
| Доброго всем. Прошу помощи, ибо сам не могу разобраться. Вот файл. Таблица заказов и менеджеров. Хочу в форме показывать или все заказы, или по выбранному менеджеру. Подобное скачивал здесь, но к себе перенести не могу, пока чайник в этом. Подсобите, плиз... | |
|
| |
|
|
|
| зачем ссылаться a recordsourse само на себя
WHERE (Forms![Текущие заказы]!SelMen='0' Or Men=Forms![Текущие заказы]!SelMen
мы обращаемя к форме которая еще не загружена, т.к. это наша форма.
там нужно ссылаться либо на какую либо другую форму, либо просто ставить
Me.RecordSource = "SELECT IdZak, FIO, Adress, Men, SumZak, Dolg FROM Zakaz WHERE Men=" & me.SelMen
me.Requery
на событие поля SelMen После_обновления.
или включать просто фильтр по значению этого поля (на то же событие)
me.Filter="Men=SelMen"
me.FilterOn=True | |
|
| |
|
|
|
| посмотрев откуда растут ноги у поля SelMen
- можно вообще не возиться с этим полем при таком его значении - просто вышемной сказаное нужно повесить на событие даблклик по полю Men - например и тогда можно как написать
me.Filter="Men=" & me.Men
me.FilterOn=True
вот отфильтрует.
а на одинарный клик по томуже полю повесить уделение фильтра
me.FilterOn=False
п.с. условие Where .... - конечно нужно убрать | |
|
| |
|
15 Кб. |
|
| Спасибо, но почему-то выходит ошибка "пропущен оператор в выражении запроса Men= & me.SelMen". Если я условие Where убираю, прохожу дальше. Но пр выборе менеджера появляется окно "Введите значение параметра" с пустой строчкой. Если ввести имя - сортирует по нему. Но почему после выбора выходит окно? | |
|
| |
|
|
|
|
Private Sub ПолеСоСписком64_AfterUpdate()
If ПолеСоСписком64 = "Все менеджеры" Then
Me.FilterOn = False
Else
Me.Filter = "Men='" & ПолеСоСписком64 & "'"
Me.FilterOn = True
End If
End Sub
|
Одинарные кавычки важны. | |
|
| |
|
|
|
| Дядя прав, т.к. у вас поле ТЕКСТОВОЕ, а если бы там стоял нормальный ЧИСЛОВОЙ код ID - впросторечии было бы намного легче | |
|
| |
|
|
|
| Спасибо, по немного вхожу в тему... | |
|
| |