Example #1
3
 /**
  * @return \PHPExcel
  */
 protected function mockWorkbook()
 {
     $workbook = new \PHPExcel();
     $workbook->disconnectWorksheets();
     $workbook->getProperties()->setTitle('mocked');
     $sheet = new \PHPExcel_Worksheet($workbook);
     $sheet->fromArray([['test', 'test', 'test'], ['test', 'test', 'test'], ['test', 'test', 'test'], ['test', 'test', 'test']]);
     $workbook->addSheet($sheet);
     $sheet = new \PHPExcel_Worksheet($workbook);
     $sheet->fromArray([['test', 'test', 'test'], ['test', 'test', 'test'], ['test', 'test', 'test'], ['test', 'test', 'test']]);
     $workbook->addSheet($sheet);
     $workbook->setActiveSheetIndex(0);
     return $workbook;
 }
Example #2
1
 /**
  * @return \PHPExcel
  */
 protected function mockRow()
 {
     $workbook = new \PHPExcel();
     $workbook->disconnectWorksheets();
     $sheet = new \PHPExcel_Worksheet($workbook);
     $sheet->fromArray([['a1', 'b1', 'c1']]);
     $row = new \PHPExcel_Worksheet_Row($sheet, 1);
     return $row;
 }
Example #3
1
 /**
  * @return \PHPExcel_Worksheet
  */
 protected function mockSheet()
 {
     $workbook = new \PHPExcel();
     $workbook->disconnectWorksheets();
     $sheet = new \PHPExcel_Worksheet($workbook);
     $sheet->setTitle('mocked');
     $sheet->fromArray([['a1', 'b1'], ['a2', 'b2']]);
     return $sheet;
 }
Example #4
0
 /**
  * Fill worksheet from values in array
  *
  * @param array $source Source array
  * @param mixed $nullValue Value in source array that stands for blank cell
  * @param string $startCell Insert array starting from this cell address as the top left coordinate
  * @param bool $strictNullComparison Apply strict comparison when testing for null values in the array
  * @throws PhpExcelException
  * @return Worksheet
  */
 public function fromArray(array $source = null, $nullValue = null, $startCell = 'A1', $strictNullComparison = false)
 {
     foreach ($source as &$row) {
         if (is_array($row)) {
             foreach ($row as $key => $value) {
                 if ($value instanceof DateTime) {
                     $row[$key] = PhpOffice_PHPExcel_Shared_Date::PHPToExcel($value);
                 }
             }
         }
     }
     try {
         $this->sheet->fromArray($source, $nullValue, $startCell, $strictNullComparison);
     } catch (PhpOffice_PHPExcel_Exception $ex) {
         throw new PhpExcelException('Unable to paste the array to worksheet', $ex->getCode(), $ex);
     }
     return $this;
 }
                    ];

                if(!isset($recap[$elm->id_produit]))
                {
                    $recap[$elm->id_produit]=[$elm->id_produit,$elm->categorie,$elm->produit,0.0];
                }
                if($elm->quantite_reel===null)
                {
                    $recap[$elm->id_produit][3] += $elm->quantite_commande;
                }
            }
            
            $sheet = new PHPExcel_Worksheet($xls,"commande ".$commande->id_commande);
            $sheet->fromArray(
                $grid2,       // The data to set
                NULL,        // Array values with this value will not be set
                'A1'         // Top left coordinate of the worksheet range where we want to set these values (default is A1)
            );
            $sheet->fromArray(
                $grid,       // The data to set
                NULL,        // Array values with this value will not be set
                'A4'         // Top left coordinate of the worksheet range where we want to set these values (default is A1)
            );
            $xls->addSheet($sheet);
            $nbre_commandes = $nbre_commandes+1;
        }
        $recapsheet->SetCellValue('F1', $nbre_commandes);
        $recapsheet->fromArray(
            $recap,       // The data to set
            NULL,        // Array values with this value will not be set
            'A1'         // Top left coordinate of the worksheet range where we want to set these values (default is A1)
/**
 * Write the content of the "DC Inventory" worksheet
 *
 * @param PHPExcel_Worksheet $worksheet
 * @param array $sheetProps properties of the worksheet
 * @param array $invData array with the inventory data
 */
function writeDCInvContent($worksheet, $sheetProps, $invData)
{
    $colIdx = $sheetProps['ColIdx'];
    // first line is the header for the worksheet
    $worksheet->fromArray($invData, null, 'A2');
    ReportStats::get()->report('Info', 'Number of Inventory entries ' . count($invData));
    $highestRow = count($invData);
    foreach ($sheetProps['ExpStr'] as $colName) {
        $colLetter = $colIdx[$colName][1];
        for ($row = 0; $row < $highestRow; $row++) {
            $worksheet->setCellValueExplicit($colLetter . ($row + 2), $invData[$row][$colName], PHPExcel_Cell_DataType::TYPE_STRING);
        }
    }
    // unset($invData);
}
 /**
  * creates another worksheet
  *
  * @return PHPExcel_Worksheet objWorksheet
  */
 public function createProductArray(&$objPHPExcel)
 {
     $produkteAufgaben = new PHPExcel_Worksheet($objPHPExcel);
     $produkteAufgaben->setTitle('Aufgaben Produkte');
     $firstSheet = $objPHPExcel->getSheet(0);
     $anzahlTeilnehmer = $firstSheet->getCell('C4')->getValue();
     $endzeile = $anzahlTeilnehmer + 6;
     $lastColumnRawData = $firstSheet->getHighestColumn();
     $aufgabenwerte = $firstSheet->rangeToArray('G7:' . $lastColumnRawData . $endzeile, 0, true, false);
     //$produkteAufgaben->fromArray($aufgabenwerte, NULL, 'A1', true);
     $transponierteAufgabenwerte = PHPExcel_Calculation_LookupRef::TRANSPOSE($aufgabenwerte);
     //$produkteAufgaben->fromArray($transponierteAufgabenwerte, NULL, 'A150', true);
     $endmatrix = PHPExcel_Calculation_MathTrig::MMULT($transponierteAufgabenwerte, $aufgabenwerte);
     $produkteAufgaben->fromArray($endmatrix, NULL, 'A1', true);
     $lastColumnMMULTData = $produkteAufgaben->getHighestColumn();
     $lastRowMMULTData = $produkteAufgaben->getHighestRow();
     $maxColumn = $lastColumnMMULTData;
     $maxColumn++;
     $writeRow = $lastRowMMULTData + 2;
     for ($column = 'A'; $column != $maxColumn; $column++) {
         $cell = $produkteAufgaben->getCell($column . $writeRow);
         $cell->setValue('=SUM(' . $column . '1:' . $column . $lastRowMMULTData . ')');
     }
     $objPHPExcel->addSheet($produkteAufgaben);
 }
Example #8
0
 public function export_Uncomplete($file_name, $test = false)
 {
     error_reporting(E_ALL);
     ini_set("display_errors", 1);
     ini_set('max_execution_time', 60);
     ini_set('memory_limit', '256M');
     $cacheMethod = PHPExcel_CachedObjectStorageFactory::cache_in_memory_gzip;
     $cacheSettings = array('memoryCacheSize ' => '256MB');
     PHPExcel_Settings::setCacheStorageMethod($cacheMethod, $cacheSettings);
     $this->excel = new PHPExcel();
     $registrant_data = $this->getArrayData();
     $worksheet = new PHPExcel_Worksheet();
     $worksheet->setTitle('Data');
     $worksheet->setCellValue('A1', 'Nomor Pendaftaran');
     $worksheet->getColumnDimension('A')->setAutoSize(true);
     $worksheet->setCellValue('B1', 'Nama');
     $worksheet->getColumnDimension('B')->setAutoSize(true);
     $worksheet->setCellValue('C1', 'I/A');
     $worksheet->getColumnDimension('C')->setAutoSize(true);
     $worksheet->setCellValue('D1', 'Asal Sekolah');
     $worksheet->getColumnDimension('D')->setAutoSize(true);
     $worksheet->setCellValue('E1', 'Contact');
     $worksheet->getColumnDimension('E')->setAutoSize(true);
     $worksheet->setCellValue('F1', 'Status Kekurangan');
     $worksheet->getColumnDimension('F')->setAutoSize(true);
     $row_iterate = 2;
     foreach ($registrant_data as $registrant) {
         if (!$registrant['completed']) {
             $row = [];
             $row[] = $registrant['id'];
             $row[] = strtoupper($registrant['name']);
             $row[] = $registrant['gender'] == 'L' ? 'Ikhwan' : 'Akhwat';
             $row[] = strtoupper($registrant['previousSchool']);
             $row[] = $registrant['cp'];
             $row[] = $registrant['status'];
             $worksheet->fromArray($row, '', 'A' . $row_iterate);
             $row_iterate++;
         }
     }
     $this->excel->removeSheetByIndex(0);
     $this->excel->addSheet($worksheet);
     if ($test) {
         return true;
     } else {
         header('Content-Type: application/vnd.ms-excel');
         header('Content-Disposition: attachment;filename="' . $file_name . '.xls"');
         header('Cache-Control: max-age=0');
         $objWriter = new PHPExcel_Writer_Excel5($this->excel);
         $objWriter->save('php://output');
         exit;
     }
 }
Example #9
-2
 /**
  * Default callback worksheet which simply exports raw data without any formatting.
  *
  * @param PHPExcel_Worksheet $worksheet
  * @param array|IDataProvider $dataProvider
  *
  * @return PHPExcel_Worksheet
  * @throws PHPExcel_Exception
  */
 protected function defaultCallback(\PHPExcel_Worksheet $worksheet, $dataProvider)
 {
     $_data = [];
     if ($dataProvider instanceof \CActiveDataProvider) {
         foreach ($dataProvider->getData() as $model) {
             if ($model instanceof \CActiveRecord) {
                 $_data[] = $model->getAttributes(null);
             }
         }
         if (!empty($_data)) {
             $_keys = array_keys($_data[0]);
             $_data = array_merge([$_keys], $_data);
         }
         return $worksheet->fromArray($_data);
     }
     if ($dataProvider instanceof \IDataProvider) {
         $_data =& $dataProvider->getData();
     } elseif (is_array($dataProvider)) {
         $_data = $dataProvider;
     } else {
         $_data = [$dataProvider];
     }
     foreach ($_data as $index => $value) {
         if ($value instanceof \CActiveRecord) {
             $_data[$index] = $value->getAttributes(null);
         } elseif (!is_array($value) && !is_scalar($value) && !is_null($value)) {
             unset($_data[$index]);
         }
     }
     return $worksheet->fromArray($_data);
 }