Когда учитель добавляет задание, появляются все имена учеников. Как это сделать?

ERD

У меня есть задача создать базу данных для отслеживания результатов учащихся в школе. Я вышел с набором отношений между таблицами в соответствии с 3 формами нормализации (надеюсь, я понял это правильно. Если нет, пожалуйста, просветите меня).

Одна из особенностей, которую я хочу добавить в приложение Filemaker, заключается в том, что когда учитель хочет ввести несколько отметок о назначении, ему просто нужно создать новую запись о сдаче, и появятся все имена учеников в классе.

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

Может кто-нибудь помочь? Я учитель, а не разработчик Filemaker, поэтому, пожалуйста, исправьте меня, если мои таблицы базы данных сделаны неправильно.

Обновление: я хотел бы, чтобы вывод был таким выход

Электронная таблица не подходит, потому что ее нельзя легко использовать для поиска / сортировки.

1 ответ

У меня есть быстрый образец файла здесь. Это старый образец, и он использует другую (но похожую) модель. По сути, идея такова: у вас есть вычисляемое поле (я использую повторяющееся поле) для отображения данных. У вас также есть глобальное повторяющееся поле, которое служит виджетом редактирования. Каждый раз, когда вы переходите к записи, вы заполняете повторы этого поля данными из связанных записей (используя триггер OnRecordLoad). Это не означает, что поле отображает одни и те же данные для всех записей, потому что его правила условного форматирования настроены так, чтобы скрывать все данные; поэтому он показывает только часть данных, когда вы на самом деле вводите одно из его повторений. Это данные, которые можно редактировать. И, наконец, есть триггер, который срабатывает каждый раз, когда вы выходите из поля и публикует свои изменения в связанной таблице (добавляет, обновляет или удаляет).

Образец не совсем полный, потому что если столбцов данных меньше, чем повторений, вы, вероятно, захотите как-то заблокировать оставшиеся повторения; эта часть не сделана. В противном случае это работает довольно хорошо. В FM 12, однако, это приводит к зависанию приложения; Я сообщил об этом в FMI, они признали это, но я не думаю, что это уже исправлено.

Другие вопросы по тегам