powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Переключение формы с одной таблици на другую, (грабли)
5 сообщений из 5, страница 1 из 1
Переключение формы с одной таблици на другую, (грабли)
    #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
Переключение формы с одной таблици на другую, (грабли)
    #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
Переключение формы с одной таблици на другую, (грабли)
    #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
Переключение формы с одной таблици на другую, (грабли)
    #32872623
Roma R
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Включи фильтр
Private Sub Form_Open(Cancel As Integer)
Me.RecordSource = Me.OpenArgs
Me.Requery
Me.FilterOn = True
End Sub
...
Рейтинг: 0 / 0
Переключение формы с одной таблици на другую, (грабли)
    #32873640
Badim
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Я так понимаю (или чего то непонимаю) примого пути решения проблемы нет
через docmd.OpenForm непередать свободной форме источник данных и фильтр отбора. Проблема решилась в обход через передаваемый аргумент. Т. е. руками пришлось передать и название источник и фильтр.
Все, большое всем спасибо
...
Рейтинг: 0 / 0
5 сообщений из 5, страница 1 из 1
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Переключение формы с одной таблици на другую, (грабли)
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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