MS Access: в поле со списком формы с количеством столбцов> 1, как отобразить столбец 2 в результирующей записи таблицы? - PullRequest
0 голосов
/ 23 февраля 2012

Я создал простую базу данных, размещенную здесь (формат Access 2007): http://www.derekbeck.com/Database1.accdb

У меня есть две таблицы:

  1. список задач
  2. список организаций

Я хочу, чтобы форма "назначить организации" имела рисунок в выпадающем списке из таблицы списка организаций, что я и сделал. У меня настроено показывать несколько вещей в выпадающем списке: имя организации и тип организации. Например, раскрывающийся список показывает эти два столбца:

airline   | American Airlines
airline   | United Airlines
eCommerce | ebay
eCommerce | Amazon

если вы посмотрите в таблицу «список организаций», вы увидите, что она настроена следующим образом:

ID   org type    org name             website
1    airline     American Airlines    www.aa.com
2    airline     United Airlines      www.ual.com

Причина, по которой я делаю эти два столбца данных, заключается в том, что список будет очень длинным, и сортировка их по типу org, а не по алфавиту, полезна для ввода данных. (База данных и таблицы, которые я использую для целей этого вопроса, являются гипотетическими.)

Так вот в чем проблема: когда в моей форме в раскрывающемся списке на моей форме выбирается «назначить организации», который в основном проходит по таблице «список задач» и позволяет вводить данные на основе «списка организаций», вы получаете, как я сказано выше, следующее:

airline   | American Airlines
airline   | United Airlines
eCommerce | ebay
eCommerce | Amazon

Если вы выберете, скажем, первую строку, результат в форме будет «авиакомпания».

* Мой первый вопрос: как сделать так, чтобы он отображал в заполненной форме показанный второй столбец (на самом деле третий столбец таблицы): то есть как я могу это сделать? Авиакомпания "?

Далее, если вы перейдете к необработанному табличному представлению «списка задач» и посмотрите на недавно заполненное поле «назначенный орган», вы не увидите ни «авиакомпания», ни «Американские авиалинии», но идентификационный номер, соответствующий это, скажем «1» в случае выше.

* Мой второй вопрос: как мне отобразить «American Airlines» в поле исходных данных таблицы, а не идентификационный номер?

Наконец, я немного прочитал об отношениях и связал поле «назначенный орган» в таблице «список задач» с полем «имя орг» в таблице «список орг», но я не уверен, если это правильно. На самом деле, я не уверен, что делать, если что-нибудь, о назначении отношений.

* Последний вопрос: как здесь работают отношения для этой проблемы? Они нужны мне? Как мне их настроить, если так?

PS: Точный порядок приведенных выше примеров таблиц не соответствует базе данных, которую я создал.

1 Ответ

0 голосов
/ 23 февраля 2012

Вопрос 1 и 2

источник строки должен включать как ID, так и имя orgName в качестве выходных данных

установить свойство Bound Column на 1 установите для свойства ширины столбца значение 0 см; 2,5 см

вопрос 3

таблица списка задач будет / должна иметь поле с именем OrgId, которое является внешним ключом таблицы организации. Так работают отношения: в форме TaskList должно быть поле со списком, которое привязано к полю OrgId, а источником строки является таблица Organizations со свойствами, указанными выше. Мастер поля со списком поможет вам настроить его, даже если у вас уже есть поле со списком, поместите еще одно, чтобы пройти через мастера, и посмотрите на свойства.

...