Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Переключение формы с одной таблици на другую, (грабли) / 5 сообщений из 5, страница 1 из 1
18.01.2005, 17:56:17
    #32870846
Badim
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Переключение формы с одной таблици на другую, (грабли)
Прошу хелпа.
Есть сводная форма (показывает данные из несклольких таблиц). При нажатии на кнопку, соответствующую запись можно поправить, то есть открывается вторая форма с подробностями этой записи и вносится правка. Вторая форма одна универсальная на все таблицы, у нее только меняется источник записей. Это теория, практика:

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, правильно?

Не работает, подскажите где ошибка?
...
Рейтинг: 0 / 0
18.01.2005, 19:02:48
    #32871014
Roma R
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Переключение формы с одной таблици на другую, (грабли)
Сделай так
Замени
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

Может заработает
...
Рейтинг: 0 / 0
19.01.2005, 14:55:09
    #32872521
Badim
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Переключение формы с одной таблици на другую, (грабли)
Если передавать через Me.OpenArgs источник данных для формы, то не передается условие отбора (какую конкретно запись редактировать) stLinkCriteria. Форма forNabor открывает первую запись.
Я проблему решил в обход: через Me.OpenArgs передал в редактирующую форму название таблицы исходника, фильтр отбора записи тогда заработало.
Но это получилась заплатка.
В хелпе ведь написано:
FilterName Optional Variant. A string expression that's the valid name of a query in the current database. Я так понимаю - имя запроса на основании которого открывается форма, или не так?
...
Рейтинг: 0 / 0
19.01.2005, 15:22:03
    #32872623
Roma R
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Переключение формы с одной таблици на другую, (грабли)
Включи фильтр
Private Sub Form_Open(Cancel As Integer)
Me.RecordSource = Me.OpenArgs
Me.Requery
Me.FilterOn = True
End Sub
...
Рейтинг: 0 / 0
20.01.2005, 07:46:36
    #32873640
Badim
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Переключение формы с одной таблици на другую, (грабли)
Я так понимаю (или чего то непонимаю) примого пути решения проблемы нет
через docmd.OpenForm непередать свободной форме источник данных и фильтр отбора. Проблема решилась в обход через передаваемый аргумент. Т. е. руками пришлось передать и название источник и фильтр.
Все, большое всем спасибо
...
Рейтинг: 0 / 0
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Переключение формы с одной таблици на другую, (грабли) / 5 сообщений из 5, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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