Viewing file: reportDataRQCourseTep4_1_excel.php (20.22 KB) -rw-r--r-- Select action/file-type: (+) | (+) | (+) | Code (+) | Session (+) | (+) | SDB (+) | (+) | (+) | (+) | (+) | (+) |
<?
set_time_limit(0);
header('Content-type: application/xls');
header('Content-Disposition: attachment; filename="testing1.xls"');
include_once "../../class/clsDB.php";
include_once "../../class/clsConnection.php";
include_once "../global.php";
include_once "../link/function.php";
include_once "../class/clsReg_SysSemesterDes.php";
include_once "../class/clsReg_Program.php";
include_once "../class/clsRegistration.php";
include_once "../class/clsCourseAssess.php";
include_once "../class/clsHoldCourse.php";
include_once "../class/clsClassAssess.php";
include_once "../class/clsClassOpenForAssess.php";
include_once "../class/clsClassInStructorAssess.php";
include_once "../class/clsOfficerAssess.php";
include_once "../class/clsDefineAssessment.php";
include_once "../class/clsAssessForm.php";
include_once "../class/clsDoAssessment.php";
include_once "../class/clsResultRQ.php";
include_once "../class/clsSectionAll.php";
include_once "../class/clsSectionRQ.php";
include_once "../class/clsHeaderQuestion.php";
include_once "../class/clsHeaderScore.php";
include_once "../class/clsDetailScore.php";
include_once "../class/clsRadioQuestion.php";
include_once "../class/clsSectionAll.php";
$oCR = new clsConnection($GLOBALS['HOST'], $GLOBALS['DB_REG'], $GLOBALS['USER_REG'], $GLOBALS['PASSWORD_REG']);
$oCA = new clsConnection($GLOBALS['HOST'], $GLOBALS['DB_EASS'], $GLOBALS['USER_EASS'], $GLOBALS['PASSWORD_EASS']);
$oReg = new Registration($oCA);
$oCourse = new CourseAssess($oCA);
$oClass = new ClassAssess($oCA);
$oClass_In = new ClassAssess($oCA);
$oClsOpen = new ClassOpenForAssess($oCA);
$oCIS = new ClassInStructorAssess($oCA);
$oCIS_1 = new ClassInStructorAssess($oCA);
$oCIS_2 = new ClassInStructorAssess($oCA);
$oOFA = new OfficerAssess($oCA);
$oHC = new HoldCourse($oCA);
$oAF = new AssessForm($oCA);
$oDo = new DoAssessment($oCA);
$oCourse->SearchByKey($courseId);
$oCourse->GetRecord();
$oClass->SearchByKey($classId);
$oClass->GetRecord();
$oProg = new Program($oCR);
$oAF->RSAssessFormByAssid($assid);
$oAF->GetRecord();
$oHQ = new HeaderQuestion($oCA);
$oHS = new HeaderScore($oCA);
$oDS = new DetailScore($oCA);
$oSse = new SysSemesterDes($oCR);
$oSse->SearchByKey($semester);
$oSse->GetRecord();
$oDA = new DefineAssessment($oCA);
$oDA->SearchByDefineid($defineid);
$oDA->GetRecord();
//ค้นหาคำถามปลายเปิดในแบบประเมินนี้ sectionTQid = 1
$oSA = new SectionAll($oCA);
$CntSRQid = $oSA->RSCountSectionRQid($assid);
$oRRQ = new ResultRQ($oCA);
$full = $oDS->getMaxScoreByAssid($assid);
?>
<title>รายงานผลการประเิมินประสิทธิภาพการสอนของอาจารย์ภาพรวมในรายวิชาจำแนกตามอาจารย์ผู้สอน</title>
<meta http-equiv="Content-Type" content="text/html; charset=tis-620">
<div id="tabmargin">
<form name="pc" method="post" action="<?php echo $PHP_SELF;?>" enctype="multipart/form-data">
<div align="center">
</div><br>
<table width="95%" align="center" border="0" cellpadding="0" cellspacing="1">
<tr>
<td><table width="972" border="0">
<tr>
<td colspan="26"> </td>
</tr>
<tr>
<td colspan="26"><font size="2"><b>รายงานผลการประเมินประสิทธิภาพการสอนของอาจารย์ภาพรวมในรายวิชาจำแนกตามอาจารย์ผู้สอน</b></font></td>
</tr>
<tr>
<td> </td>
<td> </td>
<td> </td>
<td> </td>
<td> </td>
<td> </td>
<td> </td>
<td> </td>
<td> </td>
<td> </td>
<td> </td>
<td> </td>
<td> </td>
<td> </td>
<td> </td>
<td> </td>
<td> </td>
<td> </td>
<td> </td>
<td> </td>
<td> </td>
<td> </td>
<td> </td>
<td> </td>
<td> </td>
<td> </td>
</tr>
<tr>
<td width="876" colspan="26"><font size="2"><b> ชื่อทางการแบบประเมิน
</b></font><font size="2"><b>: </b></font><font size="2">
<? if($oAF->maintopic == ""){ echo "-"; }else{ echo $oAF->maintopic; } ?>
</font></td>
</tr>
<tr bgcolor="<?php echo $GLOBALS['COLOR_BG_TD_11'];?>">
<td colspan="26"><font size="2"><b> ชื่อทั่วไปแบบประเมิน
</b></font><font size="2"><b> : </b><? echo $oAF->nameAss ?></font></td>
</tr>
<tr>
<td height="21" colspan="26"><font size="2"><b> ปีการศึกษา
</b></font><font size="2"><b> :
</b></font><? echo $acadYear ?> / <? echo $oSse->semesterName;?></td>
</tr>
<tr bgcolor="<?php echo $GLOBALS['COLOR_BG_TD_11'];?>">
<td height="20" colspan="26" <? if(($oClass->programId == 0) || ($oClass->programId == "")){ echo "valign=\"baseline\""; } ?>><font size="2"><b>
หลักสูตร</b></font><font size="2"><b> :
</b></font><font size="2" color="<?php echo $GLOBALS['COLOR_FONT_4'];?>">
<? if(($oClass->programId == 0) || ($oClass->programId == "")){
$z = 0;
$oClsOpen->SearchByClassId($oClass->classId);
while($oClsOpen->GetRecord()){
$oProg->SearchByKey($oClsOpen->programId);
$oProg->GetRecord();
$arrCls[$z] = $oProg->programName;
$z++;
} // end while oClsOpen
for($a=0;$a<=$z;$a++){
echo $arrCls[$a];
if($a < $z-1) echo ",<br> ";
}
}else{
$oProg->SearchByKey($oClass->programId);
$oProg->GetRecord();
echo $oProg->programName;
}
?>
</font></td>
</tr>
<tr>
<td colspan="26"><font size="2"><b> รหัสรายวิชา</b></font><font size="2"><b> :
</b></font><font size="2" color="<?php echo $GLOBALS['COLOR_FONT_4'];?>"><?php echo $oCourse->courseCode?>
(<?php echo $oCourse->courseCodeEng?>)</font></td>
</tr>
<tr bgcolor="<?php echo $GLOBALS['COLOR_BG_TD_11'];?>">
<td height="22" colspan="26"><font size="2"><b> ชื่อรายวิชา</b></font><font size="2"><b> :
</b></font><font size="2" color="<?php echo $GLOBALS['COLOR_FONT_4'];?>"><?php echo $oCourse->courseName?></font><font size="2" color="<?php echo $GLOBALS['COLOR_FONT_4'];?>">
(<?php echo $oCourse->courseNameEng?>)</font></td>
</tr>
<tr>
<td height="22" colspan="26"><font size="2"><b> ช่วงเวลาประเมิน</b></font><font size="2"><b> :
</b></font><font size="2" color="<?php echo $GLOBALS['COLOR_FONT_4'];?>"><? echo abbreDate(splitDateDb2($oDA->startDate,'/')); ?>
- <? echo abbreDate(splitDateDb2($oDA->endDate,'/')); ?></font></td>
</tr>
</table>
<br>
<?
$oSA= new SectionAll($oCA);
$scoreV1 = 4; $scoreV2 = 5; //ค่าที่จะนำไปคิด
$sectionDisplat = 0;
$oSA->RSByKeyAss($assid);
while($oSA->GetRecord()){
/*---------------- กรณีที่เลือกเป็นคำถามชนิดปลายปิด------------------*/
if($oSA->sectionRQid != '0'){
$oHQ->RSHeaderAllBySection($assid,$oSA->sectionRQid);
$oHQ->GetRecord();
$oHS->RSHeadSAll($oHQ->HSid);
$oHS->GetRecord();
$numScoreVal = $oDS->CountDetailSAllBetween2ValueOrderScoreDESC($oHS->HSid,$scoreV1,$scoreV2);
if($numScoreVal > 0){ //กรณีกำหนดระดับการประเมินมีค่่าเท่ากับ scoreV1 และ/หรือ scoreV2 เท่านั้นที่จะแสดง
$sectionDisplay++;
}
}
}
if($CntSRQid > 0 && $sectionDisplay > 0){
?>
<table width="100%" border="1">
<tr bgcolor="#CFCFCF">
<td width="28%" rowspan="3" align="center"><font size="2"><b>อาจารย์ผู้สอน</b></font></td>
<?
$oSA= new SectionAll($oCA);
$i = 0; //$scoreV1 = 4; $scoreV2 = 5; //ค่าที่จะนำไปคิด
$indexSection_head = 1;
$oSA->RSByKeyAss($assid);
while($oSA->GetRecord()){
/*---------------- กรณีที่เลือกเป็นคำถามชนิดปลายปิด------------------*/
if($oSA->sectionRQid != '0'){
$oHQ->RSHeaderAllBySection($assid,$oSA->sectionRQid);
$oHQ->GetRecord();
$oHS->RSHeadSAll($oHQ->HSid);
$oHS->GetRecord();
//echo "<br> HSid = ".$oHS->HSid;
$numScoreVal = $oDS->CountDetailSAllBetween2ValueOrderScoreDESC($oHS->HSid,$scoreV1,$scoreV2);
//echo "<br> ด้าน $indexSection_head ".$numScoreVal;
if($numScoreVal > 0){ //กรณีกำหนดระดับการประเมินมีค่่าเท่ากับ scoreV1 และ/หรือ scoreV2 เท่านั้นที่จะแสดง
?>
<td height="23" colspan="5" align="center"><font size="2"><b>ส่วนที่
<? echo $indexSection_head; ?></b></font></td>
<? $i++;
} //end numScoreVal
} // end if oSA
$indexSection_head++;
} //end while oSA
?>
</tr>
<tr bgcolor="<?php echo $GLOBALS["COLOR_BG_TD_7"];?>">
<? for($j=1;$j<=$i;$j++){ ?>
<td height="7%" colspan="2" align="center" bgcolor="#CFCFCF"><font size="2"><b>คะแนน
5+4</b></font></td>
<td height="7%" colspan="2" align="center" bgcolor="#CFCFCF"><font size="2"><b>ค่าสถิติ</b></font></td>
<td width="3%" height="23" rowspan="2" align="center" bgcolor="#CFCFCF"><font size="2"><b>แปลผล</b></font></td>
<? } ?>
</tr>
<tr bgcolor="<?php echo $GLOBALS["COLOR_BG_TD_7"];?>">
<? for($j=1;$j<=$i;$j++){ ?>
<td width="3%" height="24" align="center" bgcolor="#CFCFCF"><font size="2"><b>จำนวน</b></font></td>
<td width="3%" height="24" align="center" bgcolor="#CFCFCF"><font size="2"><b>%</b>
</font></td>
<td width="3%" height="24" align="center" bgcolor="#CFCFCF"><font size="2"><b>ค่าเฉลี่ย</b></font></td>
<td width="3%" height="24" align="center" bgcolor="#CFCFCF"><font size="2"><b>S.D.</b>
</font></td>
<? } ?>
</tr>
<?
$x=0;
$oCIS->RSClassInStructorAssessGroupOfficerId();
while($oCIS->GetRecord()){
$flagX = 0; $sec = 0;
while(($sec<$sectionClass) && $flagX == 0){
$oCIS_1->SearchByClassIdOfficerId($classId+$sec,$oCIS->officerId);
if($oCIS_1->GetRecord()){?>
<tr bgcolor="<?php echo $GLOBALS["COLOR_BG_TD_11"];?>">
<? $oOFA->SearchByKey($oCIS_1->officerId);
$oOFA->GetRecord();
?>
<td><? echo " อ.".$oOFA->officerName." ".$oOFA->officerSurname; ?></td>
<?
$flagX = 1;
} // end while oCIS_1
if($flagX == 1){ // คำนวนค่าของแต่ละส่วน
//echo "<br> ++++++++ officerId = ".$oCIS_1->officerId;
$numSecAss = 0;
$SumNumCourseDoAss = 0;
for($s=0; $s<=$sectionClass-1; $s++){
$classIdSec = $classId+$s;
//echo "<br> classSec = ".$classIdSec." officerId = ".$oCIS_1->officerId;
$oCIS_2->SearchByClassIdOfficerId($classIdSec,$oCIS_1->officerId);
if($oCIS_2->GetRecord()){
$oClass_In->SearchByKey($classIdSec);
$oClass_In->GetRecord();
//echo "numAllCourseReg = ".$numAllCourseReg;
$numCourseDoAss = 0;
$oDo->SearchByDefineIdClassIdOfficeridSection($defineid,$classIdSec,$oCIS_1->officerId,$oClass_In->section);
$numCourseDoAss = $oDo->GetRowSelected();
$SumNumCourseDoAss += $numCourseDoAss;
//echo "numCourseDoAss = ".$numCourseDoAss;
$indexValue=1;
//$indexSection=1;
$oSA = new SectionAll($oCA);
$oSA->RSByKeyAss($assid);
while ($oSA->GetRecord()){
/*---------------- กรณีที่เลือกเป็นคำถามชนิดปลายปิด------------------*/
if($oSA->sectionRQid != '0'){
$oHQ->RSHeaderAllBySection($assid,$oSA->sectionRQid);
$oHQ->GetRecord();
$oHS->RSHeadSAll($oHQ->HSid);
$oHS->GetRecord();
$numScoreVal = $oDS->CountDetailSAllBetween2ValueOrderScoreDESC($oHS->HSid,$scoreV1,$scoreV2);
if($numScoreVal > 0){ //กรณีกำหนดระดับการประเมินมีค่่าเท่ากับ scoreV1 และ/หรือ scoreV2 เท่านั้นที่จะแสดง
//$oRRQ->SearchResultIXbarSDByAcadSemDefineidOfficerIdClassIdSectionRQid($acadYear,$semester,$defineid,$oCIS_1->officerId,$classIdSec,$oSA->sectionRQid);
$oRRQ->SearchResultIXbarSDByAcadSemDefineidOfficerIdClassIdSectionRQidCo($full,$acadYear,$semester,$defineid,$oCIS_1->officerId,$classIdSec,$oSA->sectionRQid,'%');
if($oRRQ->GetRecord()){
//echo "<br> xbar = ".$oRRQ->xbar." sd = ".$oRRQ->sd;
// บวกค่า x และ sd ตัวที่ i ในเกรณีที่รายวิชาที่สอนสอนมากกว่า 1 กลุ่ม
if($oClass_In->sectionClass > 1){
$sumRealX[$indexValue] += $oRRQ->xbar;
$sumRealSD[$indexValue] += $oRRQ->sd;
if(($oRRQ->xbar > 0) && ($indexValue == 1)){ // ถ้ากลุ่มใดมีการประเมินจะให้ค่าเป็น 1
$numSecAss++;
}
}else if($oClass_In->sectionClass == 1){ // บวกค่า x และ sd ตัวที่ i ในเกรณีที่รายวิชาที่สอนสอน 1 กลุ่ม
$sumRealX[$indexValue] = $oRRQ->xbar;
$sumRealSD[$indexValue] = $oRRQ->sd;
}
//หาจำนวนคะแนน scoreV1 และ scoreV2 (4 และ 5) แต่ละส่วนและแต่ละกลุ่ม (บวกทบในแต่ละกลุ่มในแต่ละส่วน)
$countPoint4_5 = $oRRQ->CountPoint2ValueByAcadSemDefineidOfficerIdClassIdSectionRQid($acadYear,$semester,$defineid,$oCIS_1->officerId,$classIdSec,$oSA->sectionRQid,$scoreV1,$scoreV2);
$SumCountPoint4_5[$indexValue] += $countPoint4_5;
// หาจำนวนคำถามแต่ละส่วนที่ให้เลือกตอบ (ข้อหลัก + ข้อย่อย (ถ้ามี))
$countQuestion = $oRRQ->CountQuestionByAcadSemDefineidOfficerIdClassIdSectionRQid($acadYear,$semester,$defineid,$oCIS_1->officerId,$classIdSec,$oSA->sectionRQid);
$numQuestion[$indexValue] = $countQuestion;
$countPoint = 0;
$indexValue++;
} // end if oRRQ
} // end if numScoreVal
} // end if oSA
//$indexSection++;
} //end while oSA
} // end if oCIS_2
} // end for s
$AvgSumCountPoint = 0;
for($j=1;$j<=$i;$j++){
// นำค่าผลลัพธ์ที่ได้จากการบวกด้านบน มาหารจำนวนกลุ่มที่เรียน เพื่อได้ค่าเฉลี่ยของผลลัพธ์แต่ละส่วนของการประเมิน
if($oClass_In->sectionClass == 1){
$sumRealXForSection = $sumRealX[$j];
$sumRealSDForSection = $sumRealSD[$j];
}else if($oClass_In->sectionClass > 1){
$sumRealXForSection = $sumRealX[$j] / $numSecAss;
$sumRealSDForSection = $sumRealSD[$j] / $numSecAss;
}
//echo "<br> SumNumCourseDoAss = ".$SumNumCourseDoAss;
//echo "<br> * numQuestion[$j] = ".$numQuestion[$j];
//echo "<br> SumCountPoint4_5 = ".$SumCountPoint4_5[$j];
// เปอร์เซนต์ของจำนวนคะแนน 5 และ 4 = (จำนวนคะแนน 5 และ 4 / (จำนวนผู้ประเมินทั้งหมด * จำนวนข้อของส่วนที่ต้องการคิด * 2[<- คะแนน 5 และ 4])
$AvgSumCountPoint = ($SumCountPoint4_5[$j] /($SumNumCourseDoAss*$numQuestion[$j]*2))*100;
?>
<td align="center"><? echo $SumCountPoint4_5[$j] ?></td>
<td align="center"><? printf("%.2f",$AvgSumCountPoint); ?></td>
<td align="center"><? printf("%.2f",$sumRealXForSection); ?></td>
<td align="center"><? printf("%.2f",$sumRealSDForSection); ?></td>
<td align="center">
<? if($sumRealXForSection >= 3.5) echo "ผ่าน"; else if($sumRealXForSection > 0 && $sumRealXForSection < 3.5) echo "ไม่ผ่าน"; else echo "-"; ?>
</td>
<? // หาผลรวมของผลลัพธ์แต่ละส่วน
$SumSectionX += $sumRealXForSection;
$SumSectionSD += $sumRealSDForSection;
// set ค่าเป็น 0 เพื่อรับค่าใหม่ในรายวิชาถัดไป
$sumRealX[$j] = 0;
$sumRealSD[$j] = 0;
$SumCountPoint4_5[$j] = 0;
$AvgSumCountPoint = 0;
$numQuestion[$j]= 0;
} //end for j ?>
<?
} //end if flagX == 1
$sec++; // เพิ่มค่ากลุ่มที่หา sectionClass ?>
</tr>
<? } // end while i < sectionClass
} // end while CIS ?>
</table>
<br>
<table width="100%" border="0" align="center">
<tr>
<td colspan="26"><font size="2" color="<?php echo $GLOBALS["COLOR_FONT_5"];?>"><b>หมายเหตุ
:</b></font><font size="2" color="<?php echo $GLOBALS["COLOR_FONT_5"];?>">
การแปลผล (ผ่านและไม่ผ่าน ) คิดจากค่าเฉลี่ยตั้งแต่
3.5 ขึ้นไป ถือว่าผ่าน (ค่าเฉลี่ย >= 3.5)</font></td>
</tr>
<tr>
<td colspan="26"><font size="2" color="<?php echo $GLOBALS["COLOR_FONT_5"];?>">
รายงานนี้จะแสดงในส่วนของแบบประเมินที่มีเกณฑ์ที่ในการพิจารณาที่มีค่าเป็น
<? echo $scoreV1." และ ".$scoreV2; ?></font></td>
</tr>
<tr>
<td width="11%"> </td>
<td width="11%"> </td>
<td width="7%"> </td>
<td width="3%"> </td>
<td width="3%"> </td>
<td width="3%"> </td>
<td width="3%"> </td>
<td width="3%"> </td>
<td width="3%"> </td>
<td width="3%"> </td>
<td width="3%"> </td>
<td width="3%"> </td>
<td width="3%"> </td>
<td width="3%"> </td>
<td width="3%"> </td>
<td width="3%"> </td>
<td width="3%"> </td>
<td width="3%"> </td>
<td width="3%"> </td>
<td width="3%"> </td>
<td width="3%"> </td>
<td width="3%"> </td>
<td width="3%"> </td>
<td width="3%"> </td>
<td width="3%"> </td>
<td width="5%"> </td>
</tr>
</table>
<? } else{ ?>
<table width="100%">
<tr bgcolor="<?php echo $GLOBALS['COLOR_BG_TD_5'];?>">
<td align="center"> <font size="2" color="<?php echo $GLOBALS["COLOR_FONT_3"];?>">**
<? if($CntSRQid == 0) echo"ไม่สามารถแสดงรายงานได้ เนื่องจากเนื่องจากแบบประเมินที่สร้างไม่มีส่วนของคำถามปลายปิด"; else if($sectionDisplay == 0) echo " ไม่สามารถแสดงรายงานได้ เนื่องจากแต่ละส่วนของแบบประเมินไม่ได้กำหนดเกณฑ์ที่ใช้ในการพิจารณาที่มีค่าเป็น". $scoreV1." และ ".$scoreV2; ?>
**</font></td>
</tr>
</table>
<? } // end if sectionDisplay > 0?>
<br>
</td>
</tr>
</table>
</form><br>
</div>
</body>
<?php set_time_limit(30); ?>
|