|
|
|
Включение фильтра в подчиненной таблице?
|
|||
|---|---|---|---|
|
#18+
Имеется свободная форма, в ней контрол с объектом источником - таблица. Вопрос 1: как применять фильтры к таблице по нажатию кнопки на форме? Кроме того эта таблица построена так, что связь определяется как 1 ко многим на саму себя Вопрос 2: как прменять к фильтры к дочерней таблице? пардон за возможные неясности объяснения ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.02.2004, 08:35 |
|
||
|
Включение фильтра в подчиненной таблице?
|
|||
|---|---|---|---|
|
#18+
Из-за неясности объяснения не совсем понял вопрос, но попробую ответить так. Это вариант, когда на форме есть подчиненная форма в таблчном виде, и на главной форме делаем Комбобоксы (напр. по типу Автофильтра в Excel'е), но можно и кнопки и чего угодно. Sub DoFilter() Application.Echo False, "Please wait..." MyStrType = 0 Me![Имя подчиненной формы].Form.Filter = "" Me![Имя подчиненной формы].Form.FilterOn = True If Not IsNull(Me![ИмяКонтролаНаОсновФорме]) Then MyFilter = "[ИмяПоляВПодчФорме] = " & Me![ИмяКонтролаНаОсновФорме] MyStrType = 1 End If If Len(MyFilter) > 0 Then Me![Имя подчиненной формы].Form.Filter = MyFilter Me![Имя подчиненной формы].Form.FilterOn = True End If Application.Echo True, "" End Sub Этих условий можно повторять очень много для всех контролов на основной форме. Переменная MyStrType следит за тем, что в каком-то контроле есть значение по которому надо фильтровать и тогда принимает значение 1, если нет, то 0. В случае если условий будет несколько, то начиная со 2-го и до последнего, условие преобразуется в: If Not IsNull(Me![ИмяКонтролаНаОсновФорме]) Then If MyStrType = 0 Then MyFilter = "[ИмяПоляВПодчФорме] = " & Me![ИмяКонтролаНаОсновФорме] MyStrType = 1 Else MyFilter = MyFilter & " and [ИмяПоляВПодчФорме] = " & Me![ИмяКонтролаНаОсновФорме] End If Best Regards ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.02.2004, 10:03 |
|
||
|
Включение фильтра в подчиненной таблице?
|
|||
|---|---|---|---|
|
#18+
В том то и штука, что не форма в табличном виде, а таблица А сделано так потому что, тблица является для себя же родительской. Поэтому для того чтобы количество уровней было произвольным приходится применять источником таблицу, а не форму. в противном случае количество уровней оганичено количеством созданных дочерних форм ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.02.2004, 10:09 |
|
||
|
|

start [/forum/topic.php?fid=45&msg=32406647&tid=1676698]: |
0ms |
get settings: |
5ms |
get forum list: |
12ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
138ms |
get topic data: |
6ms |
get forum data: |
1ms |
get page messages: |
22ms |
get tp. blocked users: |
1ms |
| others: | 220ms |
| total: | 409ms |

| 0 / 0 |
