
Новые сообщения [новые:0]
Дайджест
Горячие темы
Избранное [новые:0]
Форумы
Пользователи
Статистика
Статистика нагрузки
Мод. лог
Поиск
|
|
18.01.2005, 17:56:17
|
|||
|---|---|---|---|
|
|||
Переключение формы с одной таблици на другую, (грабли) |
|||
|
#18+
Прошу хелпа. Есть сводная форма (показывает данные из несклольких таблиц). При нажатии на кнопку, соответствующую запись можно поправить, то есть открывается вторая форма с подробностями этой записи и вносится правка. Вторая форма одна универсальная на все таблицы, у нее только меняется источник записей. Это теория, практика: stDocName = "forNabor" Select Case Me![rem] Case "1" filterName = "tab1" Case "2" filterName = "tab2" Case "3" filterName = "tab3" End Select stLinkCriteria = "[kodCheta]=" & Me![kodCheta] DoCmd.OpenForm stDocName, , filterName, stLinkCriteria, , acDialog Me.Requery в поле rem содержится метка из какой таблицы взяли данные и на основе какой таблицы открывать редактирующую форму (выбираем источник данных) Должна же форма stDocName открыться на основе записей filterName и использовать фильтр stLinkCriteria, правильно? Не работает, подскажите где ошибка? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
18.01.2005, 19:02:48
|
|||
|---|---|---|---|
Переключение формы с одной таблици на другую, (грабли) |
|||
|
#18+
Сделай так Замени DoCmd.OpenForm stDocName, , filterName, stLinkCriteria, , acDialog на DoCmd.OpenForm stDocName, , , stLinkCriteria, , acDialog,filterName В форме forNabor в событии открытия добавь Private Sub Form_Open(Cancel As Integer) Me.RecordSource = Me.OpenArgs Me.Requery End Sub Может заработает ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
19.01.2005, 14:55:09
|
|||
|---|---|---|---|
|
|||
Переключение формы с одной таблици на другую, (грабли) |
|||
|
#18+
Если передавать через Me.OpenArgs источник данных для формы, то не передается условие отбора (какую конкретно запись редактировать) stLinkCriteria. Форма forNabor открывает первую запись. Я проблему решил в обход: через Me.OpenArgs передал в редактирующую форму название таблицы исходника, фильтр отбора записи тогда заработало. Но это получилась заплатка. В хелпе ведь написано: FilterName Optional Variant. A string expression that's the valid name of a query in the current database. Я так понимаю - имя запроса на основании которого открывается форма, или не так? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
19.01.2005, 15:22:03
|
|||
|---|---|---|---|
Переключение формы с одной таблици на другую, (грабли) |
|||
|
#18+
Включи фильтр Private Sub Form_Open(Cancel As Integer) Me.RecordSource = Me.OpenArgs Me.Requery Me.FilterOn = True End Sub ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
20.01.2005, 07:46:36
|
|||
|---|---|---|---|
|
|||
Переключение формы с одной таблици на другую, (грабли) |
|||
|
#18+
Я так понимаю (или чего то непонимаю) примого пути решения проблемы нет через docmd.OpenForm непередать свободной форме источник данных и фильтр отбора. Проблема решилась в обход через передаваемый аргумент. Т. е. руками пришлось передать и название источник и фильтр. Все, большое всем спасибо ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|

start [/forum/topic.php?fid=45&mobile=1&tid=1669184]: |
0ms |
get settings: |
6ms |
get forum list: |
15ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
38ms |
get topic data: |
10ms |
get forum data: |
2ms |
get page messages: |
38ms |
get tp. blocked users: |
1ms |
| others: | 226ms |
| total: | 342ms |

| 0 / 0 |
