Current File : /home/inlingua/public_html/dwarka/icentex/admin_attendance/05featuredemo1.inc_reports.php |
<?php
/**
* PHPExcel
*
* Copyright (C) 2006 - 2010 PHPExcel
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*
* @category PHPExcel
* @package PHPExcel
* @copyright Copyright (c) 2006 - 2010 PHPExcel (http://www.codeplex.com/PHPExcel)
* @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL
* @version 1.7.3, 2010-05-17
*/
/** Error reporting */
//error_reporting(E_ALL);
/** PHPExcel */
//require_once dirname(__FILE__) . '/Classes/PHPExcel.php';
require_once '../Classes/PHPExcel.php';
//$num1=mysqli_fetch_array($result1);
// Create new PHPExcel object
//echo date('H:i:s') . " Create new PHPExcel object\n";
$objPHPExcel = new PHPExcel();
// Set properties
//echo date('H:i:s') . " Set properties\n";
$objPHPExcel->getProperties()->setCreator("Vikas Umrao")
->setLastModifiedBy("Vikas Umrao")
->setTitle("Office 2007 XLSX Test Document")
->setSubject("Office 2007 XLSX Test Document")
->setDescription("Test document for Office 2007 XLSX, generated using PHP classes.")
->setKeywords("office 2007 openxml php")
->setCategory("Reports Atendance");
//echo date('H:i:s') . " Add some data\n";
$objPHPExcel->setActiveSheetIndex(0);
//$sharedStyle1 = new PHPExcel_Style();
$objPHPExcel->getActiveSheet()->setCellValue('A1', 'Attendance Report');
$objPHPExcel->getActiveSheet()->setCellValue('A3', 'S.No.');
$objPHPExcel->getActiveSheet()->setCellValue('B3', 'Branch');
$objPHPExcel->getActiveSheet()->setCellValue('C3', 'Student');
$objPHPExcel->getActiveSheet()->setCellValue('D3', 'CourseId');
$objPHPExcel->getActiveSheet()->setCellValue('E3', 'Language');
$objPHPExcel->getActiveSheet()->setCellValue('F3', 'Level');
$objPHPExcel->getActiveSheet()->setCellValue('G3', 'Instructor');
$objPHPExcel->getActiveSheet()->setCellValue('H3', 'PiE');
$objPHPExcel->getActiveSheet()->setCellValue('I3', 'Start Date');
$objPHPExcel->getActiveSheet()->setCellValue('J3', 'End Date');
$objPHPExcel->getActiveSheet()->setCellValue('K3', 'Present');
$objPHPExcel->getActiveSheet()->setCellValue('L3', 'Late');
$objPHPExcel->getActiveSheet()->setCellValue('M3', 'Excused');
$objPHPExcel->getActiveSheet()->setCellValue('N3', 'Present%');
$objPHPExcel->getActiveSheet()->setCellValue('O3', 'Y/N');
$objPHPExcel->getActiveSheet()->setCellValue('P3', 'Comments');
//$objPHPExcel->getActiveSheet()->setCellValue('D1', PHPExcel_Shared_Date::PHPToExcel( gmmktime(0,0,0,date('m'),date('d'),date('Y')) ));
//$objPHPExcel->getActiveSheet()->getStyle('D1')->getNumberFormat()->setFormatCode(PHPExcel_Style_NumberFormat::FORMAT_DATE_XLSX15);
//$objPHPExcel->getActiveSheet()->setCellValue('E1', '#12566');
$td=date("Y-m-d");
$query_all="select a.*,count(b.recNo) as tot,c.name from ";
$query_all.=" (select * from ingl_course where 1=1 ";
if($_REQUEST['datepicker1']!="" && $_REQUEST['datepicker2']!="")
{
$query_all.=" && (startdate>='".$_REQUEST['datepicker1']."' && startdate<='".$_REQUEST['datepicker2']."') ";
}
if($_REQUEST['branch']!="")
{
$query_all.=" && branch='".$_REQUEST['branch']."' ";
}
if($_REQUEST['ctype']=="Current")
{
$query_all.=" && enddate>='".$td."' ";
}
else if($_REQUEST['ctype']=="Archive")
{
$query_all.=" && enddate<'".$td."' ";
}
if($_REQUEST['courseId']!="")
{
$query_all.=" && recNo='".$_REQUEST['courseId']."' ";
}
if($_REQUEST['instructor']!="")
{
$query_all.=" && instructor='".$_REQUEST['instructor']."' ";
}
$query_all.=") a left join ingl_student b on b.courseId=a.recNo left join timesheet_user c on a.instructor=c.recNo group by a.courseid ";
$query_all.=" having count(b.recNo)>0 order by a.branch,a.startdate,a.instructor,a.courseid";
$result_all=mysqli_query($conn,$query_all) or die(mysql_error($conn));
$i=1;
$ic=4;
while($num_all=mysqli_fetch_array($result_all)){
$SattenArray=array();
$query="select * from ingl_course where recNo='".$num_all['recNo']."'";
$result=mysqli_query($conn,$query);
$num=mysqli_fetch_array($result);
if($num['attendance_table']=="")
{
$num['attendance_table']='ingl_attendances_2011';
}
$queryM="select * from ".$num['attendance_table']." where courseIdrecNo='".$num_all['recNo']."' ";
$resultM=mysqli_query($conn,$queryM);
$StudentTotalEntered=@mysqli_num_rows($resultM);
while($numM=@mysqli_fetch_array($resultM))
{
$studentrecNo=$numM['studentrecNo'];
$SattenArray[$studentrecNo][] = $numM['attendance_status'];
}
//$atten=$numM['attendance_status'];
$sqlQuery = "SELECT s.*,s.recNo as Student_ID,c.courseid as course_name,c.recNo as courseRecNo, c.* FROM ingl_student s left join ingl_course c on c.recNo = s.courseId where s.courseId='".$num_all['recNo']."' order by s.studentName Asc";
// Select records from table
//$selectedRecords = $dbObject->Select($sqlQuery);
$resultLWC=mysqli_query($conn,$sqlQuery);
$selectedRecords=mysqli_num_rows($resultLWC);
//$numLWC=mysqli_fetch_array($resultLWC);
$max_tot=array();
// If no records selected, print message
if (!$selectedRecords)
{ //echo "<tr><td colspan='5'>There are no student added in this course</td></tr>";
}
else{
if (!$StudentTotalEntered)
{ //echo "<tr><td colspan='5'>There are no entered attendance</td></tr>";
}
else{
$counter=0;
while($objectData=@mysqli_fetch_array($resultLWC))
{
if($num_all['language']=='English' )
{
if($num_all['level']=='1A' || $num_all['level']=='1B' || $num_all['level']=='1B+') $table="level_1";
elseif($num_all['level']=='2A' || $num_all['level']=='2A+' || $num_all['level']=='2B' ) $table="level_2";
elseif($num_all['level']=='3A' || $num_all['level']=='3B' ) $table="level_3";
elseif($num_all['level']=='4' ) $table="level_4";
elseif($num_all['level']=='5' ) $table="level_5";
elseif($num_all['level']=='Private' ) $table="level_private";
}
else if($_REQUEST['language']=='Hindi')
{
if($num_all['level']=='Private' ) $table="level_private";
}
elseif($_REQUEST['language']=='German') $table="level_private";
elseif($_REQUEST['language']=='Spanish') $table="level_private";
$student=$objectData[Student_ID];
$queryC="select eligibility,othereligibility from ".$table." where student_recNo='".$objectData[Student_ID]."'";
$resultC=mysqli_query($conn,$queryC);
$numC=mysqli_fetch_array($resultC);
$objPHPExcel->getActiveSheet()->setCellValue('A'.$ic.'', ''. $i.'');
$objPHPExcel->getActiveSheet()->setCellValue('B'.$ic.'', ''.$num_all['branch'].'');
$objPHPExcel->getActiveSheet()->setCellValue('C'.$ic.'', ''.$objectData['studentName'].'');
$objPHPExcel->getActiveSheet()->setCellValue('D'.$ic.'', ''.$num_all['courseid'].'');
$objPHPExcel->getActiveSheet()->setCellValue('E'.$ic.'', ''.$num_all['language'].'');
$objPHPExcel->getActiveSheet()->setCellValue('F'.$ic.'', ''.$num_all['level'].'');
$objPHPExcel->getActiveSheet()->setCellValue('G'.$ic.'', ''.$num_all['name'].'');
$objPHPExcel->getActiveSheet()->setCellValue('H'.$ic.'', ''.$num_all['name_pie'].'');
$objPHPExcel->getActiveSheet()->setCellValue('I'.$ic.'', ''.$num_all['startdate'].'');
$objPHPExcel->getActiveSheet()->setCellValue('J'.$ic.'', ''.$num_all['enddate'].'');
$objPHPExcel->getActiveSheet()->setCellValue('K'.$ic.'', ''.getPresentBySymbol($SattenArray[$objectData[Student_ID]],'P').'');
$objPHPExcel->getActiveSheet()->setCellValue('L'.$ic.'', ''.getPresentBySymbol($SattenArray[$objectData[Student_ID]],'L').'');
$objPHPExcel->getActiveSheet()->setCellValue('M'.$ic.'', ''.getPresentBySymbol($SattenArray[$objectData[Student_ID]],'E').'');
$objPHPExcel->getActiveSheet()->setCellValue('N'.$ic.'', ''.getPercentage($SattenArray[$objectData[Student_ID]]).'');
$objPHPExcel->getActiveSheet()->setCellValue('O'.$ic.'', ''.$numC['eligibility'].'');
$objPHPExcel->getActiveSheet()->setCellValue('P'.$ic.'', ''.$numC['othereligibility'].'');
$TotalHours=getTotalHour($SattenArray[$student]);
array_push($max_tot,$TotalHours);
$ic++;
$i++;
}
//$TotalHours=getTotalHour($SattenArray[$student]);
}
}
}
$objPHPExcel->getActiveSheet()->mergeCells('A1:P1');
$objPHPExcel->getActiveSheet()->getStyle('A1:P1')->applyFromArray(
array(
'font' => array(
'bold' => true
),
'alignment' => array(
'horizontal' => PHPExcel_Style_Alignment::HORIZONTAL_LEFT,
),
'borders' => array(
'top' => array(
'style' => PHPExcel_Style_Border::BORDER_THIN
)
),
'fill' => array(
'type' => PHPExcel_Style_Fill::FILL_GRADIENT_LINEAR,
'rotation' => 90,
'startcolor' => array(
'argb' => '25525FFF'
),
'endcolor' => array(
'argb' => 'FFFFFFFF'
)
)
)
);
$objPHPExcel->getActiveSheet()->getStyle('A3')->getFont()->setName('Candara');
$objPHPExcel->getActiveSheet()->getStyle('A3')->getFont()->setSize(10);
$objPHPExcel->getActiveSheet()->getStyle('A3')->getFont()->setBold(true);
$objPHPExcel->getActiveSheet()->getStyle('B3')->getFont()->setName('Candara');
$objPHPExcel->getActiveSheet()->getStyle('B3')->getFont()->setSize(10);
$objPHPExcel->getActiveSheet()->getStyle('B3')->getFont()->setBold(true);
$objPHPExcel->getActiveSheet()->getStyle('C3')->getFont()->setName('Candara');
$objPHPExcel->getActiveSheet()->getStyle('C3')->getFont()->setSize(10);
$objPHPExcel->getActiveSheet()->getStyle('C3')->getFont()->setBold(true);
$objPHPExcel->getActiveSheet()->getStyle('D3')->getFont()->setName('Candara');
$objPHPExcel->getActiveSheet()->getStyle('D3')->getFont()->setSize(10);
$objPHPExcel->getActiveSheet()->getStyle('D3')->getFont()->setBold(true);
$objPHPExcel->getActiveSheet()->getStyle('E3')->getFont()->setName('Candara');
$objPHPExcel->getActiveSheet()->getStyle('E3')->getFont()->setSize(10);
$objPHPExcel->getActiveSheet()->getStyle('E3')->getFont()->setBold(true);
$objPHPExcel->getActiveSheet()->getStyle('F3')->getFont()->setName('Candara');
$objPHPExcel->getActiveSheet()->getStyle('F3')->getFont()->setSize(10);
$objPHPExcel->getActiveSheet()->getStyle('F3')->getFont()->setBold(true);
$objPHPExcel->getActiveSheet()->getStyle('G3')->getFont()->setName('Candara');
$objPHPExcel->getActiveSheet()->getStyle('G3')->getFont()->setSize(10);
$objPHPExcel->getActiveSheet()->getStyle('G3')->getFont()->setBold(true);
$objPHPExcel->getActiveSheet()->getStyle('H3')->getFont()->setName('Candara');
$objPHPExcel->getActiveSheet()->getStyle('H3')->getFont()->setSize(10);
$objPHPExcel->getActiveSheet()->getStyle('H3')->getFont()->setBold(true);
$objPHPExcel->getActiveSheet()->getStyle('I3')->getFont()->setName('Candara');
$objPHPExcel->getActiveSheet()->getStyle('I3')->getFont()->setSize(10);
$objPHPExcel->getActiveSheet()->getStyle('I3')->getFont()->setBold(true);
$objPHPExcel->getActiveSheet()->getStyle('J3')->getFont()->setName('Candara');
$objPHPExcel->getActiveSheet()->getStyle('J3')->getFont()->setSize(10);
$objPHPExcel->getActiveSheet()->getStyle('J3')->getFont()->setBold(true);
$objPHPExcel->getActiveSheet()->getStyle('K3')->getFont()->setName('Candara');
$objPHPExcel->getActiveSheet()->getStyle('K3')->getFont()->setSize(10);
$objPHPExcel->getActiveSheet()->getStyle('K3')->getFont()->setBold(true);
// Set header and footer. When no different headers for odd/even are used, odd header is assumed.
//echo date('H:i:s') . " Set header/footer\n";
$objPHPExcel->getActiveSheet()->getHeaderFooter()->setOddHeader('&L&BInvoice&RPrinted on &D');
$objPHPExcel->getActiveSheet()->getHeaderFooter()->setOddFooter('&L&B' . $objPHPExcel->getProperties()->getTitle() . '&RPage &P of &N');
// Set page orientation and size
//echo date('H:i:s') . " Set page orientation and size\n";
$objPHPExcel->getActiveSheet()->getPageSetup()->setOrientation(PHPExcel_Worksheet_PageSetup::ORIENTATION_PORTRAIT);
$objPHPExcel->getActiveSheet()->getPageSetup()->setPaperSize(PHPExcel_Worksheet_PageSetup::PAPERSIZE_A4);
// Rename sheet
//echo date('H:i:s') . " Rename sheet\n";