Форма MS-многие-ко-многим с флажками для всех параметров - PullRequest
5 голосов
/ 23 июня 2009

Я работаю над приложением Microsoft Access для летнего лагеря, чтобы отслеживать, какие организации подписались на какие-либо действия. Есть форма для редактирования информации об объекте. Я хотел бы добавить к этой форме список всех вариантов деятельности. По каждому варианту должен быть флажок. Если флажок установлен, опция должна существовать в таблице соединений «многие ко многим», связывающей объект с действием.

Google предложил несколько примеров построения форм "многие ко многим", но ни одна (по крайней мере, я не нашел), показывающая, как предоставить полный список параметров с флажками.

Как бы я это сделал?

Расположение таблицы базы данных: Entity (EntityID, имя, фамилия и т. Д.) Активность (ActivityID, название активности) Entity_Activity (EntityID, ActivityID)

Ответы [ 2 ]

2 голосов
/ 02 июля 2009

Один из способов сделать это:

  • Создать новую запись в деятельности Таблица.
  • Вставить вручную один флажок за деятельность в форме.
  • Регистрация обработчик onClick для каждого флажка который добавляет соответствующую строку в таблица соединений, когда флажок tje установлен проверил и удаляет соответствующие строка, когда флажок снят.

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

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

Вместо флажков, более естественный способ сделать это с MS Access - это иметь список действий (в форме), на которые подписан каждый объект. Действия будут добавляться из выпадающего списка (и, возможно, кнопки «Добавить») и удаляться с помощью кнопки «Удалить». С умным запросом вы ограничиваете этот список только теми действиями, которых у организации еще нет.

С другой стороны, вы можете использовать флажки, но вам придется немного изменить макет таблицы. Entity_Activity потребуется третье поле (SignedUp, да / нет). Затем вам нужно будет заполнить каждую комбинацию Entity_Activity при создании новой сущности. Однако, если вам случится добавить еще одно действие позже, вам придется пройти через некоторые обручи, чтобы обновить все существующие записи сущности.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...