MS Access: как передать OpenArgs в субформу? - PullRequest
1 голос
/ 23 июня 2011

РЕДАКТИРОВАТЬ: не важно, я только что создал новую форму, она выглядит хуже, но это намного проще

У меня есть форма заказов и есть кнопки и подчиненная форма на нем.Форма имеет имя клиента, которое указывается в свойстве OpenArgs, когда я открываю его из главной формы.В подчиненной форме отображаются заказы, которые сделал пользователь (клиент, который видит страницу).Когда я ставлю условие, чтобы имя клиента в подчиненной форме совпадало с текстовым полем, содержащим имя клиента в форме заказов, доступ

Например, имя клиента - Мэтью Джонс (Me.OpenArgs = "Мэтью Джонс") http://imageshack.us/photo/my-images/832/accesshelp.jpg/

Спасибо и извините, если у меня были ошибки грамматики

Ответы [ 3 ]

2 голосов
/ 23 июня 2011

Я не уверен, понимаю ли я, каков ваш настоящий вопрос.
Это предложение выглядит так, как будто вы разместили вопрос без завершения предложения:

Когда я ставлю условие, что имя клиента в подчиненной форме равно текстовое поле, содержащее клиента имя в форме заказа, доступ

Если ваш вопрос заключается в том, как заставить это работать, решение состоит в том, чтобы написать запрос в подчиненной форме следующим образом:

select *
from orders
where customer=[Forms]![OrderForm]![TextboxWithCustomerName]
1 голос
/ 25 июня 2011

Вам не нужно передавать информацию в подчиненную форму через OpenArgs, потому что подчиненная форма знает о содержимом своей родительской формы. Вы можете получить доступ к любым данным в родительской форме подчиненной формы с помощью Me.Parent. Таким образом, в подчиненной форме, если вы хотите, чтобы CustomerName, отображаемое в родительской форме, использовалось в подчиненной форме, вы должны использовать:

  Me.Parent!CustomerName

Имейте в виду, что вы должны быть уверены, что если CustomerName является полем в источнике записей родительской формы, он будет надежно доступен, только если он используется в качестве ControlSource элемента управления в родительской форме.

0 голосов
/ 24 июня 2011

Вы можете использовать свойства LinkChildFields, LinkMasterFields элемента управления подчиненной формы

  • В LinkMasterFields вы должны написать
    имя элемента управления, содержащее, в данном случае имя клиента.
  • В LinkChildFields вы должны записать имя поля списка заказов, содержащего имя клиента.

Элемент управления подчиненной формы объединяет две формы (основную и дочернюю) и фильтрует подчиненную форму в соответствии с содержимымглавная форма.

Обратите внимание, что «подчиненный элемент управления» является контейнером дочерней формы.Дочерняя форма - это обычная форма, которая загружается специальным элементом управления: элементом управления подчиненной формы.

...