我正在尝试创建(我认为是)一个简单的水晶报表。本质上,我想生成一份报告,列出例如学生每次受到某种纪律处分的情况:
╔═══════════╦═════════════╦════════════╦══════════╗
║ StudentID ║ StudentName ║ Action ║ Date ║
╠═══════════╬═════════════╬════════════╬══════════╣
║ 1 ║ Smith, John ║ Suspension ║ 1/1/2012 ║
║ 2 ║ Q, Susie ║ Detention ║ 1/5/2012 ║
║ ... ║ ... ║ ... ║ ║
╚═══════════╩═════════════╩════════════╩══════════╝
但是,此信息作为三个单独的表存储在数据库中:
- 学生信息,例如他们的 ID 和姓名。
- 纪律处分,包括学生的 ID、日期和表明所采取措施的代码。
- 将每个代码与操作描述配对的表,因此 1 映射到“拘留”,2 映射到“暂停”,等等。
我不确定如何在 Crystal Reports 中链接这些列,特别是这样我就可以显示一个描述所采取的操作的列,而不仅仅是代码。我认为 SQL 表达式字段可以完成此操作,如下所示:
(
SELECT "ActionCodes"."ActionDesc"
WHERE "DisciplinaryActions"."ActionCode" = "ActionCodes"."ActionCode"
)
不幸的是,将此字段添加到我的报告中只会产生空白行。我是在正确的轨道上,只是在摸索我的查询,还是有更好的路线?