简体   繁体   English

在SSRS报告中重复计算组数

[英]Counts repeating for groups in ssrs report

I need to calculate count of Pass, Fail or Non-attended - for 3 groups in my report as below. 我需要计算以下报告中3组的通过,失败或无人参与的次数。

Please look here: 请看这里:

Report -> 报告-> Result_Groups

Query: 查询:

CASE WHEN Description = 'FUNCTIONAL SKILLS - ENGLISH (LEVEL 1 & LEVEL  2)' THEN 'Overall' 
WHEN Description = 'ENGLISH (ENTRY LEVEL)' THEN 'Overall'
WHEN Description = 'FUNCTIONAL SKILLS ENGLISH' THEN 'Overall' 
WHEN Description = 'READING -ENGLISH LEVEL 2' THEN 'Reading' 
WHEN Description = 'READING- ENGLISH (LEVEL 1 )' THEN 'Reading' 
WHEN Description = 'E2  ENGLISH FUNTIONAL SKILLS READING' THEN 'Reading' 
WHEN Description ='E2 FUNCTIONAL SKILLS READING' THEN 'Reading' 
WHEN Description = 'E3 ENGLISH FUNTIONAL SKILLS READING' THEN 'Reading' 
WHEN Description= 'WRITING- ENGLISH (LEVEL 1 )' THEN 'Writing' 
WHEN Description = 'WRITING- ENGLISH LEVEL  2' THEN 'Writing' 
WHEN Description = 'E2 ENGLISH FUNCTIONAL SKILLS WRITING' THEN 'Writing' 
WHEN Description = 'E3 ENGLISH FUNCTIONAL SKILLS WRITING' THEN 'Writing' 
WHEN Description = 'SPEAKING & LISTENING- ENGLISH LEVEL 2' THEN 'Speaking & Listening' 
WHEN Description = 'SPEAKING & LISTENING- ENGLISH (LEVEL 1)' THEN 'Speaking & Listening' 
WHEN Description = 'E3 ENGLISH FUNCTIONAL SKILLS SPEAKING AND LISTENING' THEN 'Speaking & Listening' 
WHEN Description = 'E2 ENGLISH FUNCTIONAL SKILLS SPEAKING AND LISTENING' THEN 'Speaking & Listening' END AS CourseType,
CASE WHEN Grade = 'PA' THEN 'Pass' 
WHEN Grade = 'FL' THEN 'Fail' 
WHEN Grade = 'X' THEN 'Not Attended' END AS Grade

Dataset: 数据集:

SELECT DISTINCT 
STEN_Student_ID, STUD_Forename_1, STUD_Surname,  COUNT(Grade) AS Count_Grade, Course, Section, CourseType, Grade
FROM FS_Exams_English
GROUP BY  STEN_Student_ID, STUD_Forename_1, STUD_Surname,  Grade, Course,  Section, CourseType
ORDER BY STEN_Student_ID

Let me know how can I do this. 让我知道我该怎么做。

Right now you're displaying the same value in all 3 columns. 现在,您在所有3列中都显示相同的值。 In order to differentiate them you could use calculated fields in your dataset for each column. 为了区分它们,您可以在数据集中为每一列使用计算字段。

  1. Right-click on your dataset and select "Add Calculated Field..." 右键单击您的数据集,然后选择“添加计算字段...”
  2. Name the first one something like "Pass_Value" and use an expression like this: 将第一个命名为“ Pass_Value”,并使用如下表达式:

     =IIf(<pass expression>, 1, 0) 

Note: You will need to reference the column that identifies a passing grade here. 注意:您需要在此处引用标识及格分数的列。

  1. Repeat the last step for the "Fail" and "Non-Attended" values. 对“失败”和“不参加”值重复最后一步。
  2. In your table, refer to your 3 calculated fields to get the desired output. 在表中,参考3个计算字段以获取所需的输出。

EDIT: 编辑:

Thank you for posting the query. 感谢您发布查询。 The calculated field expressions would look like this: 计算出的字段表达式如下所示:

=IIf(Fields!Grade.Value = "Pass", 1, 0)

Then in the table, you can reference it like this: 然后在表格中,您可以像这样引用它:

=Sum(Fields!Pass_Calculated_Field.Value)

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM