如果记录存在于另一个表中,则条件格式详细信息行

时间:2014-03-10 19:16:06

标签: sql-server crystal-reports

我正在尝试使用2个数据库表在Crystal Reports中创建报表。第一个表包括员工信息(EmployeeID,FirstName,LastName等),第二个表包含培训信息(TrainingID,DateOfTraining,EmployeeID)。

培训中的EmployeeID字段包含员工的值。

我想要做的是显示员工列表。如果employeeID出现在培训中(TrainingID作为变量传递给报告。),请突出显示该行(例如 - 该行将为粗体。)

换句话说,如果表A和表B中都存在记录,请将记录设为粗体。否则保留纯文本。我不确定如何有条件地格式化这个。

1 个答案:

答案 0 :(得分:1)

假设您有一个从{Employee.EmployeeID}到{Training.EmployeeID}的左外连接,那么您只需检查{Training.EmployeeID}是否为空:

找到要加粗的字段→右键单击并选择“格式化文本”→转到“字体”选项卡→通过单击“X-2”按钮输入“样式”的公式右边→输入公式if isnull({Train.EmployeeID}) then crRegular else crBold

如果Train表中没有该特定员工的相应条目,则该字体将是常规字符,否则将为粗体。