アンケート結果から満足度を算出し、ダッシュボードに表示する方法について

Tsukuru Yuasa
Tera Contributor

お世話になっております。
アンケート結果から満足度を算出し、ダッシュボードに表示する方法について伺いたく、投稿しました。

 

やりたい内容としては、ServiceNow画面の見やすさや使い勝手をユーザーたちにアンケート回答してもらい、
その結果を満足度(以下Aと記載)として%で表示させ、

 

さらにそのA(%)と、基準値B(%)を比較して、A=<Bであれば「達成」、A>Bであれば「未達」のように
ダッシュボードに表示したいです。どのようにすれば良いでしょうか?

 

よろしくお願いいたします。

2 REPLIES 2

iwai
Giga Sage

アンケート結果を集計するにはAssessment Instance Questions [asmt_assessment_instance_question] Tableを集計します。後は別の投稿で回答した通りWidget の Dynamic Content で実装すると良いかと思います。

<?xml version="1.0" encoding="utf-8" ?>
<j:jelly trim="false" xmlns:j="jelly:core" xmlns:g="glide" xmlns:j2="null" xmlns:g2="null">
	<g:evaluate var="jvar_result" object="true" >
		var result = {};
		var avgA;
		var valueB;
		var gr = new GlideAggregate('asmt_assessment_instance_question');
		gr.addQuery('source_id','502a2c44d7211100158ba6859e6103a3');// Survey Definitin
		gr.addQuery('metric','d02a2c44d7211100158ba6859e6103a4');// Survey Question
		gr.addAggregate('AVG', 'value'); // 満足度の平均
		gr.setGroup(false);
		gr.query();
		if (gr.next()) {
			avgA = parseFloat(gr.getAggregate('AVG', 'value'));
			valueB = parseFloat(5);
			if (avgA &lt;= valueB) {
				result = {
					"result":'達成 A '+avgA.toFixed(2)+', valueB ' + valueB.toFixed(2),
					"color":"green"
				};
			} else {
				result = {
					"result":'未達成 A '+avgA.toFixed(2)+', valueB ' + valueB.toFixed(2),
					"color":"red"
				};
			}
		}
		result;
	</g:evaluate>
	<p style="text-align:center; font-size: xx-large; color:${jvar_result.color};">${jvar_result.result}</p>
</j:jelly>

ありがとうございます。

確認させていただきます。