2017-01-27 6 views
0

, что я пытаюсь сделать
Я хочу, чтобы иметь возможность соединить и разъединить мастер и дочерние поля в базе данных Access.Почему ты не моя форма Requery когда я разъединить Master и Поля для детей с использованием базы данных Access VBA

Форма установка
У меня есть мастер-форма, которая называется «frmQuote» и детские подчиненный под названием PartInformation. Partinsformation recordsource - это запрос.

подход

Private Sub Link_Click() 
    Me!PartInformation.LinkMasterFields = "PartID" 
    Me.PartInformation.LinkChildFields = "PartID" 
End Sub 


Private Sub Command645_Click() 
    Me!PartInformation.LinkMasterFields = "" 
    Me.PartInformation.LinkChildFields = "" 
    Me.PartInformation.Requery 
End Sub 

Проблема
Я могу связать и разъединить успешно, но запрос, который является источником записи для формы детского «PartInformation» не requerying или дает мне ожидаемый результат , Когда я отсоединяю формы, моя дочерняя форма застревает в новой записи, вместо того, чтобы показывать все записи. Также, прежде чем связывать поля «Мастер и ребенок», «PartInformation» работает как проверенный, только после того, как я свяжусь, а затем отсоединиться, я получаю проблемы.

+0

Имеет ли запрос 'PartInformation' какие-либо предложения 'WHERE' или подформация? – SunKnight0

+0

Да Критерии = [Формы]! [FrmQuote]! [FrmQuote_CustomerName] - это combobox, который я использую для фильтрации запроса для partinformation. – ZacAttack

+0

Возможно ли, что вы не получаете никаких записей в своей подформе, потому что ничего не соответствует '[Forms]! [FrmQuote ]! [frmQuote_CustomerName] 'или равно null? Открепление этих двух форм не снимает эти критерии. – SunKnight0

ответ

0

Он должен работать сразу - вы можете/должны даже пропустить:

Me.PartInformation.Requery 

, как будет происходить автоматически. Также, если вы должны установить поля обратно.

Так что происходит что-то еще.

+0

Что вы имеете в виду, задав поля назад? также удален .requery, но я все равно получаю одинаковые результаты. – ZacAttack

+0

Установите их обратно на старое значение: '' PartID "'. Это заставит требовать сразу. Если нет, изучите другой код или исходный запрос для подформы. – Gustav

+0

Я не могу вернуть его обратно, пока не смогу выполнить операции, необходимые, когда моя форма будет отключена, когда я отсоединяю формы, в которых я хочу, чтобы они работали так же, как и до того, как я их связал. – ZacAttack