仿效 Guy Stevens,群組裡面有朋友提到一個問題,我也來試著幫忙看看 🙂
欲製作學生成績報表。很明顯提問的朋友應該是一個老師,根據他所提供的敘述跟示意圖,猜測他應該需要的 Tables 跟 Layouts,利用 Join Table 的方式,試著達到需求。
把老師的需求整理如下:
我需要在一个布局里面显示多个信息。 比如,布局里面的上半部分的信息是学生个人信息, 我希望在这个布局的下半部分显示这个学生的选课信息。如果用入口的话,会显示表格数据, 我希望显示成普通布局那样的。 如果用popover,那么需要用户点击按钮才能显示。
课程名称和成绩评价,是和这个学生的id关联的。如果直接拉个Field,只能显示第一条记录, 我需要显示多条记录。
我手艺比较差。大概是这样的: 姓名: 张三;性别:男;班级:三年级2班;学号:00069 ================================== 课程:语文;成绩评价:优秀。作文能力比较好。 课程:数学;成绩评价:合格。基础解题能力较好。 …… =======================
利用剛學習到的技巧 [FileMaker] 用 Join Table 實現「多對多」
第一步:先設計兩個 Table 表單:「Students (學生)」和「Subjects (課程)」
設計「Students 表單」的「欄位」
- Id(不重複序號,要記得設置自動新增 Auto-enter Serial*)
- StudentName(學生姓名)
- SchoolNr(學號)
- Sex(性別)
- Class(班級)
設計「Subjects 表單」的「欄位」
- Id(不重複序號,要記得設置自動新增 Auto-enter Serial*)
- Subject(課程名稱)
第二步:新增 Join_Students_Subjects 表單,這個 Join Table 是用來連接上面的 Students 及 Subjects 表單。
設計「Join_Students_Subjects 表單」的「欄位」
- Id(不重複序號,要記得設置自動新增 Auto-enter Serial*)
- StudentsIdFk(StudentId 外部鍵,關連 Student 表單)
- SubjectsIdFk(SubjectId 外部鍵,關連 Subject 表單)
- Grade(成績)
- GradeReview(成績評語)
第三步:把「Students 表單」及「Subjects 表單」關連到 「Join_Students_Subjects 表單」
第四步:「Students 表單」與 「Join_Students_Subjects 表單」之間的「=」,點擊,編輯關連性,勾選右下前兩項。
- Allow creation of records in this table via this relationship
- Delete related records in this table when a record is deleted in the other table
由於第五步之後的步驟太繁瑣,所以決定錄一段影片來記錄詳細的操作過程。
(影片製作中。。。)