Форум программистов, компьютерный форум, киберфорум
Наши страницы
MS Access
Войти
Регистрация
Восстановить пароль
 
 
Рейтинг 4.53/15: Рейтинг темы: голосов - 15, средняя оценка - 4.53
Ol_Bak
0 / 0 / 0
Регистрация: 20.01.2010
Сообщений: 47
1

Фильтр для основной формы

27.01.2012, 14:02. Просмотров 2801. Ответов 20
Метки нет (Все метки)

Доброго времени суток.
Подскажите, как можно отфильтровать данные основной формы по полям подиненной формы

Есть таблица "Дежурство", подчиненная таблица "ЗаявкиРемонт", в подчиненной таблице поле "ВидСигнализация" имеет два значения "ОС, "ПС". В починенной таблице за сутки полей 30-40

Как по мне, есть встроенные фильтры, и можно запросы создать для вывода , но для начальства нужно в основной форме создать две кнопки "ОС" и "ПС", которые бы отбирали те дежурства, где есть или только "ОС" или "ПС"
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
27.01.2012, 14:02
Ответы с готовыми решениями:

Фильтр основной формы из подчиненной
Здравствуйте. Есть основная форма, которая отображается в режиме формы и...

Обновление основной формы данными из внедрённой формы, основанной на основной форме
Всем привет! Извиняюсь за тавтологию, но зато изложено кратко! В приложении...

Фильтр для формы
Подскажите пожалуйста, нельзя ли настроить форму в режиме конструктора так,...

Фильтр для ленточной формы
Access 2007. Как сделать фильтры для полей, аналогичные в табличной форме, для...

Фильтр для подчиненной формы
Всем доброго и удачного дня!!! У меня вскочил вопрос. Как в основной форме -...

20
alvk
Эксперт MS Access
5605 / 3500 / 169
Регистрация: 12.08.2011
Сообщений: 8,922
27.01.2012, 16:27 2
Я не вижу вашу схему данных. Как эти таблицы связаны? Какие поля в них есть? Также не понял вопроса, кнопки будут фильтровать главную форму? Ну тогда всё элементарно, если поле ВидСигнализация есть в источнике данных главной формы.
1
Ol_Bak
0 / 0 / 0
Регистрация: 20.01.2010
Сообщений: 47
27.01.2012, 17:47  [ТС] 3
Извините, но образец реальной базы скинуть не получится, там всего нагромождено, прикрепил кусочек, кнопки ОС и ПС поставил для примера


В основной таблице "Дежурство" - поля КодДата (ключ), Дата, .................
В подчиненной таблице "ЗаявкиРемонт" - поля КодЗаявка (ключ), КодДата, ВидСигнализация (комбобокс - поля "ОС", "ПС"), и еще десяток полей.
Связь таблиц "один - ко многому" по полю КодДата

Поля ВидСигнализация в в источнике данных главной формы нет.

Созданы формы по этим таблицам - основная "Дежурство". подчиненная "ЗаявкиРемонт"

Задача вся в чем - на основной форме в заголовке создать две кнопки "ОС" и "ПС", которые бы отобразили все дежурства (форма "Дежурство") и подчиненные формы (форма "ЗаявкиРемонт"), где есть только или "ОС" или "ПС".

Все это сделано запросами, но шеф - не надо других форм, таблиц, есть форма "Дежурство", пусть все в ней и отображается.
0
Вложения
Тип файла: zip bd5.zip (23.5 Кб, 41 просмотров)
ashagin
137 / 133 / 3
Регистрация: 27.07.2010
Сообщений: 294
27.01.2012, 21:33 4
Добрый день.
Наверное можно, но на это, по всей видимости ответят знатоки VBA.
Можно сделать проще - создать форму с тремя ВКЛАДКАМИ - Дежурство, ОС и ПС.
И просто - и как хотел начальник - все на одной форме.
1
alvk
Эксперт MS Access
5605 / 3500 / 169
Регистрация: 12.08.2011
Сообщений: 8,922
28.01.2012, 05:04 5
Ol_Bak, Акцесс 2010 не имею, выложите mdb, и почему вы всё время говорите "таблицы"? Интуитивно догадываюсь, что речь идёт о формах, но увидеть ваш монитор не могу на таком расстоянии.

Цитата Сообщение от alvk Посмотреть сообщение
Также не понял вопроса, кнопки будут фильтровать главную форму?
Цитата Сообщение от Ol_Bak Посмотреть сообщение
подчиненные формы (форма "ЗаявкиРемонт"), где есть только или "ОС" или "ПС".
Если это ответ, то значит фильтровать будем подчинённую?
0
Ameli
2059 / 1135 / 38
Регистрация: 05.11.2009
Сообщений: 1,604
28.01.2012, 13:26 6
Фильтровать действительно надо подчиненную, а не главную. Обращение к подчиненной форме из главной:
Visual Basic
1
Forms![Название главной]![Название подчиненной].Form
Для упрощения к текущему объекту можно обращаться Me, поэтому:
Visual Basic
1
Me![Название подчиненной].Form
Для фильтрации формы воспользуемся свойствами формы Filter и FilterOn. На событие Нажатие кнопки ОС:
Visual Basic
1
2
3
4
Private Sub ГЉГ*îïêГ*9_Click()
Me![Г‡Г*ÿâêèÐåìîГ*ГІ ïîä÷èГ*ГҐГ*Г*Г*Гї ôîðìГ*].Form.Filter = "ÂèäÑèãГ*Г*ëèçГ*öèÿ = 'ГЋГ‘'"
Me![Г‡Г*ÿâêèÐåìîГ*ГІ ïîä÷èГ*ГҐГ*Г*Г*Гї ôîðìГ*].Form.FilterOn = True
End Sub
Для ПС аналогично. На Нажатие кнопки Показать все уберем фильтр:
Visual Basic
1
2
3
Private Sub ГЉГ*îïêГ*12_Click()
Me![Г‡Г*ÿâêèÐåìîГ*ГІ ïîä÷èГ*ГҐГ*Г*Г*Гї ôîðìГ*].Form.FilterOn = False
End Sub
1
Вложения
Тип файла: rar bd5.rar (22.0 Кб, 74 просмотров)
Ol_Bak
0 / 0 / 0
Регистрация: 20.01.2010
Сообщений: 47
30.01.2012, 14:11  [ТС] 7
Спасибо за ответы

Возникли вопросы.

1. В подч.форме поле "Выполнено"

Добавил кнопки "ОС+" - выполненные заявки по ОС, "ОС-" - невыполненные заявки по ОС

Если нужно сделать фильтр нескольким полям в подчиненной таблице, то прописать в процедуре еще одну строчку?

Так сделал, но при нажатии "ОС+" выводятся поля, и "ОС" и "ПС" в подч.форме, где поле "Выполнено" не пустое.

2. Если в подч.форме поле "ВидСигнализация" только "ОС", то при нажатии кнопки "ПС" такой день дежурства не выводился, как это сделать
0
Вложения
Тип файла: zip bd5.zip (38.8 Кб, 48 просмотров)
Maxess
95 / 74 / 3
Регистрация: 28.12.2009
Сообщений: 164
30.01.2012, 17:50 8
Здравствуйте,
Попробуйте так:
Visual Basic
1
Me![ЗаявкиРемонт подчиненная форма].Form.Filter = "ВидСигнализация='ОС' And Выполнено > 0"
для остальных полей так же.
1
Ol_Bak
0 / 0 / 0
Регистрация: 20.01.2010
Сообщений: 47
30.01.2012, 18:45  [ТС] 9
Спасибо, все получилось

По вопросу № 2 - как исключить отображение дежурств после фильтрации, если в подч.форме есть только "ОС" а фильтруем по "ПС".
После применения фильтра дежурство остается, а подч.форма пустая
0
WickedLord
0 / 0 / 0
Регистрация: 30.07.2017
Сообщений: 4
23.03.2012, 07:14 10
А подскажите как должно быть написано, если форма не подчинённая, а разделенная ?
0
novus-
10 / 0 / 0
Регистрация: 02.12.2015
Сообщений: 18
02.12.2015, 15:40 11
Всем доброго времени суток! Есть такая проблема: есть основная форма с в которой вводятся данные о человеке (ФИО, и т.д) и в ней подчиненная форма со списком работ, выполненных этим человеком. Стоит задача, в этой форме создать фильтр, в котором будет выбираться конкретная работа и нужно, чтобы отображались люди, которые эти работы выполняли. Третий день грущу над этой задачей
0
VinniPuh
Эксперт MS Access
6265 / 3568 / 361
Регистрация: 27.03.2013
Сообщений: 13,065
02.12.2015, 15:47 12
Цитата Сообщение от novus- Посмотреть сообщение
...Третий день грущу над этой задачей...
Если бы 2 дня назад выложили пример того чего уже наработали, то скорее всего бы уже не грустили, а пиво пенное в пивбаре пили и радовались жизни.
А по существу, скорее всего промежуточная табличка наверное тут нужна.
0
novus-
10 / 0 / 0
Регистрация: 02.12.2015
Сообщений: 18
02.12.2015, 15:52 13
да наработок как бы и нет, пробовал стандартным фильтром, ничего не выходит, пробовал добавлять поле фильтрации в основную форму, но тогда блокируется ввод и изменение значений.
Во вложении скрин, нужно фильтровать людей по полю VESSELS NAME
0
Миниатюры
Фильтр для основной формы  
VinniPuh
Эксперт MS Access
6265 / 3568 / 361
Регистрация: 27.03.2013
Сообщений: 13,065
02.12.2015, 16:03 14
Цитата Сообщение от novus- Посмотреть сообщение
...Во вложении скрин...
По вложению вижу. что не мой форматик, но существуют и такие.
Однако по скрину наверное только Боги смогут решить вашу заковырку, а более менее знающим и умеющим желателен пример БД, хоть даде и урезаный (типа когда данные сверхсекретные)
Просто создавать то, что уже создано, мало кто захочет, а потом ещё столько же времени исправлять под вас, т. к. 1-2 буковки не так написали.
0
novus-
10 / 0 / 0
Регистрация: 02.12.2015
Сообщений: 18
02.12.2015, 16:19 15
я же не прошу создавать, уже все создал, вот только с фильтрами заковыра, а сама БД большая
0
Вложения
Тип файла: rar пример.rar (25.0 Кб, 14 просмотров)
Тип файла: zip пример2003a.zip (25.5 Кб, 5 просмотров)
VinniPuh
Эксперт MS Access
6265 / 3568 / 361
Регистрация: 27.03.2013
Сообщений: 13,065
02.12.2015, 16:29 16
Цитата Сообщение от novus- Посмотреть сообщение
я же не прошу создавать, уже все создал
Т. к. делать пока нечего, то рад бы помочь, НО Как уже выше писал, форматик не мой, а только для избраных.
Ожидайте.
1
alvk
Эксперт MS Access
5605 / 3500 / 169
Регистрация: 12.08.2011
Сообщений: 8,922
03.12.2015, 02:47 17
mdb выкладывайте с нужными таблицами и формой
0
novus-
10 / 0 / 0
Регистрация: 02.12.2015
Сообщений: 18
03.12.2015, 10:51 18
выложил выше, "пример". Нужную, если выкладывать, дольше рассказывать, там около 30 форм, 50 отчетов .....
0
alvk
Эксперт MS Access
5605 / 3500 / 169
Регистрация: 12.08.2011
Сообщений: 8,922
03.12.2015, 17:04 19
Мне кажется, что mobile или кто-то ещё только что это выкладывал, ну да ладно:
0
Вложения
Тип файла: rar пример2003a.rar (25.5 Кб, 15 просмотров)
novus-
10 / 0 / 0
Регистрация: 02.12.2015
Сообщений: 18
03.12.2015, 17:09 20
в form 1 в подчиненной форме нужно выбрать, например "белил", в основной форме должны остаться только те, кто белил, т.е. в основной форме было изначально 6 записей, а остаться должно 2-3.
0
03.12.2015, 17:09
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
03.12.2015, 17:09

Фильтр для подчиненной формы
Добрый день. Пытаюсь создать фильтр для суб формы. Не получается. (( в БД...

Фильтр по списку для подчиненной формы
Всем доброго времени суток! Очень нужна помощь. Есть форма "Оборудование"....

Фильтр для подчинённой формы из главной
Подскажите пожалуйста, как выбрать для применения фильтра подчиннённую форму?...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru