Гость
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Не работает фильтрация данных в форме, где источник записей запрос / 7 сообщений из 7, страница 1 из 1
15.06.2017, 11:58
    #39472110
serega1576
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Не работает фильтрация данных в форме, где источник записей запрос
Добрый день уважаемые программисты.
Делаю фильтр записей по фамилии. Необходимо чтобы отбирал любой введенный текст.
Данный код работает, если источник строк таблица, если источник строк - запрос, как у меня сейчас, при вводе НЕ существующей фамилии Access вылетает в ошибку - "невозможно обратиться к свойству или методу элемента управления". Выделяя строку:
Код: vbnet
1.
2.
Me.FIO.SelStart = Len(S0) + 1
End Sub


Сам код:
Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
Sub fpoisk()
Dim s1, s2
Me.Refresh
s1 = "true "
 
s2 = "" & Me.FIO
If Len(s2) > 0 Then
s1 = s1 & " and  ФИО like '*" & s2 & "*'"
End If
''
Me.Filter = s1
Me.FilterOn = True
End Sub
_____________________________
 
Private Sub FIO_Change()
S0 = "" & Me.FIO
Call fpoisk
Me.FIO.SelStart = Len(S0) + 1
End Sub


Возможно ли как то адаптировать данный код, чтобы не вылетала ошибка?
...
Рейтинг: 0 / 0
15.06.2017, 15:20
    #39472367
sdku
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Не работает фильтрация данных в форме, где источник записей запрос
serega1576,
источник таблица или запрос-абсолютно без разницы (форма "Заемщик")
...
Рейтинг: 0 / 0
15.06.2017, 16:55
    #39472489
ПЕНСИОНЕРКА
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Не работает фильтрация данных в форме, где источник записей запрос
sdkuисточник таблица или запрос-абсолютно без разницы (форма "Заемщик")

http://www.sql.ru/forum/actualfile.aspx?id=20567288] Приложенный файл (tmp.rar - 50Kb)
код не будет работать, если запрос необновляемый или allowAdding=false
...
Рейтинг: 0 / 0
15.06.2017, 17:38
    #39472547
guest_rusimport
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Не работает фильтрация данных в форме, где источник записей запрос
serega1576,
можно добавить в начало каждой процедуры строку
Код: vbnet
1.
On Error Resume Next
...
Рейтинг: 0 / 0
15.06.2017, 18:05
    #39472590
sdku
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Не работает фильтрация данных в форме, где источник записей запрос
ПЕНСИОНЕРКАкод не будет работать, если запрос необновляемый или allowAdding=false А как это не обновляемый запрос (грубо говоря с группировкой) может быть источником формы?
...
Рейтинг: 0 / 0
15.06.2017, 18:46
    #39472627
Tarasios
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Не работает фильтрация данных в форме, где источник записей запрос
serega1576,
если ваш код работает, и вылетает только на отсутствующее значение - то я бы шёл по простому пути:
организовал проверку введённой фамилии (в вашем случае) - на существование (в какой там она таблице хранится) через DLookup.
И всё в цикл замутил:
если введённое фамилие существует - выполняем фильтр по вашему коду, иначе - "фамилия не найдена". Конец цикла.
Таким образом избегаем критической ситуации.
...
Рейтинг: 0 / 0
16.06.2017, 11:22
    #39472986
serega1576
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Не работает фильтрация данных в форме, где источник записей запрос
Всем спасибо. Вот так все работает.
Код: vbnet
1.
2.
3.
4.
5.
6.
Private Sub FIO_Change()
On Error Resume Next
S0 = "" & Me.FIO
Call fpoisk
Me.FIO.SelStart = Len(S0) + 1
End Sub
...
Рейтинг: 0 / 0
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Не работает фильтрация данных в форме, где источник записей запрос / 7 сообщений из 7, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]