我正在创建一个反馈表单系统,用户可以在其中填写反馈表单,管理员用户可以根据答案运行报表。我正在尝试使用cfchart以易于阅读的方式为管理员显示结果。
这是我的代码:
<cfquery name="getFeedbackresults" datasource="#application.dsn#"> SELECT ff.feedbackFormId ,ff.feedbackFormName ,ff.feedbackFormDescription ,ff.activeFrom ,ff.activeTo ,ff.feedbackCountry ,ffq.question ,ffa.answer ,ffq.feedbackQuestionTypeId ,count(answer) AS distinctAnswer FROM feedbackForm ff ,feedbackFormQuestion ffq ,feedbackFormInstance ffi ,feedbackFormAnswer ffa WHERE ff.feedbackFormId = ffq.feedbackFormId AND ff.feedbackFormId = ffi.feedbackFormId AND ffi.feedbackFormInstanceId = ffa.feedbackFormInstanceId AND ffa.feedbackQuestionId = ffq.feedbackQuestionId AND ffq.feedbackQuestionTypeId not in (2,3) GROUP BY ff.feedbackFormId, ff.feedbackFormName, ff.feedbackFormDescription, ff.feedbackCountry, ffq.question, ff.activeFrom, ffq.feedbackQuestionTypeId, ff.activeTo, ffa.answer ORDER BY question </cfquery> <cfoutput> <h2>#getFeedbackresults.feedbackFormName# Results</h2> <h3>Description: <p>#getFeedbackresults.feedbackFormDescription#</p> <ul> <li><strong>Active From: </strong>#getFeedbackresults.activeFrom#</li> <li><strong>Active To: </strong>#getFeedbackresults.activeTo#</li> <li><strong>Country: </strong>#getFeedbackresults.feedbackCountry#</li> </ul> </cfoutput> <cfdump var="#getFeedbackresults#"> <cfchart format="flash" xaxistitle="Questions" yaxistitle="Answers" show3d="yes" chartheight="400" chartwidth="400"> <cfoutput query="getFeedbackresults" group="answer"> <cfchartseries type="bar" serieslabel="#answer#"> <cfchartdata item="#question#" value="#distinctAnswer#"> </cfchartseries> </cfoutput> </cfchart>
我遇到的问题是图表显示了每个系列中的每个答案列表。我试图上传图片,但由于我是新用户,我不被允许。如果有人想要这张图片,我可以发给他们。
非常感谢任何帮助。
答案 0 :(得分:0)
您需要按答案列对查询进行排序,如果这是您要分组的内容。您当前的ORDER BY是“问题”。在对cfoutput
上的组属性使用的相同值进行排序后,您应该很高兴。