Логика поля формы доступа - PullRequest
1 голос
/ 05 июля 2011

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

Я создал форму доступа и связал ее спроверить БД на моей машине.Конкретная таблица, которая меня интересует, содержит следующие (важные) строки:

ID, Office, Name, SecurityNumber

Дело в том, что ID не уникален.Существует два местоположения Office, и каждый Office имеет свой собственный набор уникальных идентификационных номеров.Это означает, что ID 10 здесь и там может быть или не быть одним и тем же лицом.(эти данные получены из устаревшей системы безопасности, которую мы пока не собираемся менять, поэтому я не могу ее изменить)

Но идентификатор - уникальный для каждого Office.

ТАК!Я создал форму доступа с помощью TABS!Две вкладки, по одной для каждого офиса.Сейчас я пытаюсь добиться:

Заполнить поля ID / Имя / SecurityNumber для каждой вкладки только теми строками, которые соответствуют определенному значению «Office».

Спасибо за чтение иСпасибо за помощь!: D

1 Ответ

0 голосов
/ 05 июля 2011

Если вы хотите, чтобы данные о расположениях офисов были представлены в отдельных элементах управления вкладками, вы можете использовать подчиненные формы на страницах, которые отличаются только предложением WHERE запросов, используемых в качестве источников записей.Таким образом, для подчиненной формы Office1 запрос может быть:

SELECT ID, Office, [Name], SecurityNumber
FROM YourTable
WHERE Office = 'Office1'
ORDER BY [Name];

Тогда для Office2 запрос будет таким же, за исключением предложения WHERE:

WHERE Office = 'Office2'

Как я понимаю ваш вопросэтот подход будет делать то, что вы просите.

Однако это не совсем простой способ доступа.Вместо этого рассмотрите элемент управления со списком, чтобы позволить вашим пользователям выбирать, какой офис они хотят просмотреть.В коде для события комбо после обновления либо измените оператор SELECT, используемый в качестве источника записи формы, либо создайте выражение фильтра и примените его.

Кроме того, поскольку вы извлекаете данные формы из SQL Server, подумайте, хотите ли вы, чтобы ваша форма загружала каждую запись для выбранного местоположения офиса.Это может не сильно беспокоить, если у вас есть только несколько или несколько строк для каждого местоположения, но если вы будете иметь дело с несколькими тысячами строк, это может быть.В общем, вы должны стараться избегать передачи большого количества данных по проводам;вместо этого потяните осторожно ... только то, что вам нужно для выполнения текущей задачи.

...