Подчиненная форма запроса после обновления динамического SQL.
У меня есть небольшая база данных, она координирует инструменты в 6 отдельных магазинах. При выборе названия магазина, на который вы хотите посмотреть, обновляется SQL из qryInventory, поэтому он смотрит на правильную таблицу, но мне не удалось получить подчиненную форму для обновления.
Я просмотрел следующее и нашел несколько вариантов этого кода, но я не смог заставить их работать вообще.
Forms.Form_UpdateInventoryForm.Form_Inventory00.Requery
2 ответа
Синтаксис:
[NameOfMainForm].[NameOfSubformControl].Form.Requery
Если вы запускаете это из основной формы, вы можете использовать Me вместо [NameOfMainForm]. Будьте осторожны, используйте имя элемента управления подчиненной формы, а не содержащуюся форму. Форма и требования такие же, как они есть. Форма является свойством элемента управления подчиненной формы.
Дополнительная информация: http://www.mvps.org/access/forms/frm0031.htm
Я столкнулся с этой проблемой, в том числе с ошибкой Requery-подчиненной формы.
Похоже, что, по крайней мере, в моем случае, эта проблема решается, если очистить свойство SourceObject элемента управления подчиненной формы в родительской (основной) форме, а затем сбросить его. Это предполагает, что Form_Master установлен..
Form_Master.SubformQuery.SourceObject = "" 'this is the important part
Form_Master.SubformQuery.SourceObject = "Query.ListSearchQuery"
Обратите внимание, что я делаю непонятную вещь, которая использует запрос в качестве исходного объекта. Кажется, это заставляет Access взглянуть на новый sql, даже если он только что изменился в ссылочном запросе.
Надеюсь, это будет работать и в нормальной форме. Вы могли бы обобщить это примерно так
Dim sourceReset As String
Dim Form_Master As Form_Master
Set Form_Master = Forms!Master
sourceReset = Form_Master.SubformControl.SourceObject
Form_Master.SubformControl.SourceObject = "" 'force reset
Form_Master.SubformControl.SourceObject = sourceReset