You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在FMP视图中为学生仅显示含值的测试成绩字段列表?

在FileMaker Pro中实现仅显示学生非空测试成绩的列表视图

在FileMaker里搞定这个需求有两种实用思路,根据你想要的展示风格选就行:

方法1:布局对象条件隐藏(保留独立字段结构)

如果你希望每个测试成绩还是以单独字段的形式展示,只是空字段自动隐藏,用这个方法:

  • 打开你的列表视图布局,切换到布局模式(顶部菜单栏 → 布局 → 布局模式)
  • 选中Test1_Grade字段对象,打开检查器(顶部菜单栏 → 视图 → 检查器),切换到「数据」标签
  • 在「隐藏对象」的条件输入框里,写入公式:IsEmpty(Test1_Grade) —— 意思是当该字段为空时,自动隐藏这个字段对象
  • 对Test2_Grade到Test5_Grade重复上述操作,每个字段都设置对应的IsEmpty(TestX_Grade)隐藏条件
  • 切回浏览模式,就能看到每个学生只显示有成绩的测试字段了

小提示:为了避免字段隐藏后布局排版混乱,可以给这些测试字段设置锚定对齐(检查器的「位置」标签里设置),比如全部左对齐并锚定左侧,这样空字段隐藏后,后面的字段会自动向前补位,保持整齐。

方法2:计算字段整合非空成绩(紧凑列表展示)

如果想要更简洁的排版,把所有非空成绩整合到一个字段里展示,试试这个:

  • 打开管理数据库(顶部菜单栏 → 文件 → 管理 → 数据库),切换到「字段」标签
  • 新建一个计算字段,命名为Existing_Test_Grades,计算结果类型选文本
  • 在计算编辑框里输入以下公式:
Let(
    [
        t1 = If(Not IsEmpty(Test1_Grade), "Test1: " & Test1_Grade & " ; ", ""),
        t2 = If(Not IsEmpty(Test2_Grade), "Test2: " & Test2_Grade & " ; ", ""),
        t3 = If(Not IsEmpty(Test3_Grade), "Test3: " & Test3_Grade & " ; ", ""),
        t4 = If(Not IsEmpty(Test4_Grade), "Test4: " & Test4_Grade & " ; ", ""),
        t5 = If(Not IsEmpty(Test5_Grade), "Test5: " & Test5_Grade, "")
    ];
    Trim(Replace ( t1 & t2 & t3 & t4 & t5 ; Length(t1 & t2 & t3 & t4 & t5) - 2 ; 2 ; "" ))
)

这个公式会逐个检查每个测试字段,把非空的成绩拼接成「TestX: 成绩」的格式,最后自动去掉末尾多余的分号和空格。

  • 把这个计算字段添加到你的列表视图布局中,每个学生的行里就会直接显示所有有成绩的测试。比如学生A会显示Test1: A ; Test3: B ; Test5: B,学生B则显示对应他的测试成绩。
  • 要是想让每个测试成绩单独换行,把公式里的" ; "换成"¶"(FileMaker的换行符,按Option+Enter直接输入)就行。

内容的提问来源于stack exchange,提问作者dr.

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.25 08:31:31