/**
  *
  * @param unknown $wardId        	
  * @param unknown $type        	
  * @param unknown $startDate        	
  * @param unknown $endDate        	
  * @return array
  */
 public static function getRaportBetweenDates($wardId, $type, $startDate, $endDate)
 {
     $em = DoctrineBootstrap::getEntityManager();
     $em->getConfiguration()->addCustomDatetimeFunction('DATE', 'Hospitalplugin\\DQLFunctions\\DateFunction');
     $dql = PatientRaport::getQuery($type);
     $allResults = array();
     foreach ($dql as $query) {
         $result = $em->createQuery($query)->setParameter(1, $startDate)->setParameter(2, $endDate)->setParameter(3, $wardId)->getResult();
         $allResults = array_merge($result, $allResults);
     }
     $table = array();
     foreach ($allResults as $row) {
         $table[$row['data']][$row['kategoria']] = $row['suma'];
     }
     return $table;
 }
 static function fillData($objPHPExcel)
 {
     // no time limit for this script
     set_time_limit(0);
     $time_start = microtime(true);
     // remove first default sheet
     $objPHPExcel->removeSheetByIndex(0);
     // get wards
     $wards = WardCRUD::getWardsArray();
     foreach ($wards as $ward) {
         ExcelExport::newSheet($objPHPExcel);
         $wardName = $ward->name . " (" . $ward->getTypOddzialu() . ")";
         ExcelExport::printTitle($objPHPExcel, $wardName);
         $data = ExcelExportPunction::getData($ward->id, $ward->getTypOddzialu());
         $cols = PatientRaport::getColumns($ward->getTypOddzialu());
         ExcelExportPunction::printHeaders($objPHPExcel, $cols);
         ExcelExportPunction::printData($objPHPExcel, $data, $ward->getTypOddzialu());
         ExcelExport::styleActiveSheet($objPHPExcel);
     }
     ExcelExportPunction::fillSummary($objPHPExcel);
     $objPHPExcel->getActiveSheet()->setCellValueByColumnAndRow(0, 100, "summary " . ($time_start - microtime(true)) . " s");
 }