Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Фильтрация формы / 25 сообщений из 51, страница 1 из 3
15.05.2003, 14:18
    #32160686
Ирча
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Фильтрация формы
Подскажите ПЛИИИЗ!!!!

В форме реализована фильтрация по образцу, который заводишь в свободное поле.
Но для того чтобы фильтр сработал, пришлось вешать процедуру на кнопку,
а так хочется, чтобы красивенько буковку ввел-фильтр раз,
вторую, третью -а он тебе список уменьшает.

Пыталась повесить процедуру на сомо поле на нажатие клавиши, она игнорируется, дайте совет, куда двигать дальше
...
Рейтинг: 0 / 0
15.05.2003, 14:33
    #32160708
incold
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Фильтрация формы
Совет: автоматическое применение фильтра в процессе ввода условия лучше ввобще не делать по причине значительных задержек при увеличении объемов данных.

Если же очень хочется, то в поле на событие OnChange
Ставить процедуру, но только фильтровать не по значению поля а по
Forms!Field.Text
...
Рейтинг: 0 / 0
15.05.2003, 14:43
    #32160731
Ирча
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Фильтрация формы
Private Sub Поле13_Change()
If Not IsNull(Поле13) Then
Poisk = Поле13.Text
Requery

Else
Poisk = ""
End If
End Sub

Ни фига не пашет

За совет спасибо, но поиск пойдет на небольшой перечень позиций 300,
я аналог сделала на этот же перечень на поле со списком и он прекрасно работает, а вот для формы. не соображу
...
Рейтинг: 0 / 0
15.05.2003, 14:49
    #32160748
Лох Позорный
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Фильтрация формы
В приведенном примере где собственно фильтрация-то?
Надо примерно так:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
Private Sub Поле13_Change() 
    If Not IsNull(Поле13) Then 
        Poisk = Поле13.Text 
        Me![SubFormName].Form.Filter =  "FieldName Like "  & Poisk &  "*" 
        Me![SubFormName].Requery 
    Else 
        Poisk = "" 
    End If 
End Sub 
...
Рейтинг: 0 / 0
15.05.2003, 14:52
    #32160756
Лох Позорный
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Фильтрация формы
Или вместо св-ва Filter менять RecordSource (что-то типа .RecordSource = "Select * From TableName Where FieldName Like и т.д.")
...
Рейтинг: 0 / 0
15.05.2003, 14:54
    #32160761
Ирча
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Фильтрация формы
Фильтрация в запросе для формы
Poisk
обрабатывается в отдельной функции psk и в Запрос идет
"*" & psk() & "*"
...
Рейтинг: 0 / 0
15.05.2003, 15:00
    #32160772
Лох Позорный
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Фильтрация формы
И функция psk использует глобальную переменную Poisk?
Не самое удачное решение, тем не менее поставь в этой функции точку останова, проверь попадает ли оно туда, и чему там эта переменная равна.
...
Рейтинг: 0 / 0
15.05.2003, 15:07
    #32160782
Ирча
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Фильтрация формы
Втом то и дело, что процедура игнорируется, соответственно и точка не срабатывает, если ввести запись, а но пустое значение идет "", как и прописано в процедуре
...
Рейтинг: 0 / 0
15.05.2003, 15:11
    #32160788
Лох Позорный
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Фильтрация формы
Процедура игнорируется? Поле13_Change? Это неправильно. Должно работать. У меня подобная фенька используется для поиска, все пашет как часы.
Может, ты контрол случаем переименовала?
...
Рейтинг: 0 / 0
15.05.2003, 15:12
    #32160792
Владимир Саныч
Модератор форума
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Фильтрация формы
А в списке свойств помечено, что существует OnChange?
...
Рейтинг: 0 / 0
15.05.2003, 15:15
    #32160797
Ирча
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Фильтрация формы
У меня рядом кнопочка, которая прекрастно запускает ту же процедуру на клик и все прекрасно работает,
просто поиск по перечню подрядных организаций и если каждвй раз кликать на какой нибуть газпром, то получаешь список позиций на 40, что не очень облегчает жизнь, хочется, чтобы критерий отбора был живым
...
Рейтинг: 0 / 0
15.05.2003, 15:19
    #32160806
Лох Позорный
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Фильтрация формы
У тебя событие Change у Поля13 срабатывает или нет? Если нет - смотри пост Владимира Саныча.
...
Рейтинг: 0 / 0
15.05.2003, 15:38
    #32160835
Ирча
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Фильтрация формы
В случае, если значение пустое, в Глобальную функцию передается Poisk=""? значит срабатывает, кстати, если повесить процедурку на Кнопка Вниз, то все работает, но , естественно уже ничего не добавишь и не сотрешь

Может есть какой нибудь еще путь?
...
Рейтинг: 0 / 0
15.05.2003, 15:45
    #32160847
Лох Позорный
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Фильтрация формы
ААААААААААААААААААААААА
Ты точку останова можешь поставить в в Поле13_Click???? И сказать точно срабатывает событие или нет?
...
Рейтинг: 0 / 0
15.05.2003, 15:46
    #32160850
Лох Позорный
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Фильтрация формы
Вернее Поле13_Change
...
Рейтинг: 0 / 0
15.05.2003, 16:20
    #32160895
Ирча
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Фильтрация формы
К сожалению я уже убежала с работы. Завтра попробую и скажу...
Спасибо всем
...
Рейтинг: 0 / 0
15.05.2003, 16:30
    #32160909
Лох Позорный
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Фильтрация формы
Своим диким криком испугал девушку, да так, что она с работы убежала
Деушка, ти нас нэ бойся. Ми не страшный...
...
Рейтинг: 0 / 0
15.05.2003, 16:31
    #32160911
Владимир Саныч
Модератор форума
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Фильтрация формы
Этот девушка испугался не твой крика, а мой морда.
...
Рейтинг: 0 / 0
15.05.2003, 16:35
    #32160918
Лох Позорный
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Фильтрация формы
Вах дарагой зачем обманываешь? Твой морда в форуме нет, да?
...
Рейтинг: 0 / 0
15.05.2003, 16:37
    #32160921
Владимир Саныч
Модератор форума
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Фильтрация формы
Если я сейчас свой морда в форум засуну, твой крик цветочек покажется.
...
Рейтинг: 0 / 0
15.05.2003, 16:49
    #32160930
Лох Позорный
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Фильтрация формы
Вай генацвале иди в другой места морда паказывай, а то весь рыба распугаешь. Ти чем морда паказывать лучше крикни да? Вдруг деушка абратна прибежит - а ми тут форма фильтруем.
...
Рейтинг: 0 / 0
15.05.2003, 17:08
    #32160953
assa
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Фильтрация формы
<cit>Poisk
обрабатывается в отдельной функции psk и в Запрос идет
"*" & psk() & "*"</cit>

Господа, а этот писк (psk() или запрос, его передергивающий) не должен ли где-то возбуждаться? Requery, там какое, не требуется ли по сути решения?
...
Рейтинг: 0 / 0
15.05.2003, 17:10
    #32160958
Владимир Саныч
Модератор форума
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Фильтрация формы
Лоху: ЫЫЫЫЫЫЫЫЫ!
...
Рейтинг: 0 / 0
15.05.2003, 17:22
    #32160985
Лох Позорный
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Фильтрация формы
Асса!!
Писк возбуждаться должен? Вай дарагой ну ты бы постеснялся такой вапросы задавать в приличном обществе. Канешна писк должен возбуждаться. Ты даже нэ сомневайся. А то будеш самневатся деушка к тебе такому не придет.
И главное всякий запрос писк не передергивай. Атвалится что делать будешь?
...
Рейтинг: 0 / 0
15.05.2003, 18:39
    #32161116
assa
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Фильтрация формы
! If Not IsNull(Поле13) Then

Тут то собака и порылась. (*если при открытии пусто)
Вот так работает:

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
Private Sub sFormula_Change()
Poisk = Me.sFormula.Text & ""
Dim pos
    pos = Me.sFormula.SelStart
    Requery
    Me.sFormula.SetFocus
    Me.sFormula.SelStart = pos
End Sub

2 ЛП - звиняюсь, но Requery не приметил
...
Рейтинг: 0 / 0
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Фильтрация формы / 25 сообщений из 51, страница 1 из 3
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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