/**
  * 
  * @param unknown_type $from
  * @param unknown_type $to
  */
 private function _exportBalancePerAct($from, $to)
 {
     $begin_row = $this->_row;
     /* ------------------- EXPORTATION OF THE BALANCE PER ACT --------------------------*/
     $active_sheet = $this->getDocument()->getActiveSheet();
     $act_values = Statistics::getValuesByAct($from, $to);
     /*------------------------------ TITLE -----------------------------*/
     $active_sheet->getCell('A' . $this->_row)->setValue($this->_translate('Balance per act'));
     $active_sheet->mergeCells('A' . $this->_row . ':D' . $this->_row);
     $active_sheet->getStyle('A' . $this->_row)->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_CENTER);
     $active_sheet->getStyle('A' . $this->_row)->getFont()->setBold(true);
     $active_sheet->getStyle('A' . $this->_row)->getFill()->applyFromArray(array('type' => PHPExcel_Style_Fill::FILL_SOLID, 'startcolor' => array('rgb' => '808080'), 'endcolor' => array('rgb' => '808080')));
     /*----------------------------- END TITLE ---------------------------*/
     $this->nextLine();
     /*------------------------------ HEADER -----------------------------*/
     $active_sheet->getCellByColumnAndRow(0, $this->_row)->setValue($this->_translate('Acts'));
     $active_sheet->getCellByColumnAndRow(1, $this->_row)->setValue($this->_translate('Value'));
     $active_sheet->getCellByColumnAndRow(2, $this->_row)->setValue($this->_translate('Percentage'));
     $active_sheet->getCellByColumnAndRow(3, $this->_row)->setValue($this->_translate('Time'));
     $active_sheet->getStyle('A' . $this->_row . ':D' . $this->_row)->getFont()->setBold(true);
     $active_sheet->getStyle('B' . $this->_row . ':D' . $this->_row)->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_CENTER);
     /*----------------------------- END HEADER ---------------------------*/
     $this->nextLine();
     /*------------------------------ BODY -----------------------------*/
     foreach ($act_values['act'] as $act_designation => $act_value_percentage) {
         $active_sheet->setCellValueByColumnAndRow(0, $this->_row, $act_designation);
         $active_sheet->setCellValueByColumnAndRow(1, $this->_row, $act_value_percentage['value']);
         $active_sheet->setCellValueByColumnAndRow(2, $this->_row, $act_value_percentage['percentage'] . '%');
         $active_sheet->setCellValueByColumnAndRow(3, $this->_row, gmdate('G', $act_value_percentage['time']) . 'h' . gmdate('i', $act_value_percentage['time']));
         $active_sheet->getStyle('B' . $this->_row . ':D' . $this->_row)->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_CENTER);
         $this->nextLine();
     }
     /*----------------------------- END BODY ---------------------------*/
     /*------------------------------ FOOTER -----------------------------*/
     $active_sheet->setCellValueByColumnAndRow(0, $this->_row, $this->_translate('Total'));
     $active_sheet->setCellValueByColumnAndRow(1, $this->_row, $act_values['total_value']);
     $active_sheet->setCellValueByColumnAndRow(2, $this->_row, '100%');
     $active_sheet->setCellValueByColumnAndRow(3, $this->_row, gmdate('G', $act_values['total_time']) . 'h' . gmdate('i', $act_values['total_time']));
     $active_sheet->getStyle('A' . $this->_row . ':D' . $this->_row)->getFont()->setBold(true);
     $active_sheet->getStyle('B' . $this->_row . ':D' . $this->_row)->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_CENTER);
     $active_sheet->getStyle('A' . $this->_row . ':D' . $this->_row)->getFill()->applyFromArray(array('type' => PHPExcel_Style_Fill::FILL_SOLID, 'startcolor' => array('rgb' => 'C0C0C0'), 'endcolor' => array('rgb' => 'C0C0C0')));
     /*----------------------------- END FOOTER ---------------------------*/
     $active_sheet->getStyle('A' . ($begin_row + 1) . ':D' . $this->_row)->applyFromArray(array('borders' => array('allborders' => array('style' => PHPExcel_Style_Border::BORDER_THIN, 'color' => array('argb' => PHPExcel_Style_Color::COLOR_BLACK)))));
 }
Example #2
0
 /**
  * 
  * @param sfWebRequest $request
  */
 public function executeBalance(sfWebRequest $request, $xhr = true)
 {
     $this->userCulture = $this->getUser()->getCulture();
     $from = $request->getParameter('from');
     $to = $request->getParameter('to');
     $this->from = $from;
     $this->to = $to;
     $this->xhr = $xhr;
     $this->currency_symbol = ImputationDefaultValues::getDefaultCurrencySymbol();
     $this->positive_accounts = Statistics::getPositiveAccounts();
     $this->negative_accounts = Statistics::getNegativeAccounts();
     $total_accounts['value'] = $this->positive_accounts['value'] + $this->negative_accounts['value'];
     $total_accounts['number'] = $this->positive_accounts['number'] + $this->negative_accounts['number'];
     $this->total_accounts = $total_accounts;
     $this->methods_of_payments_values = Statistics::getTotalValuesByMethodOfPayment($from, $to);
     $this->acts_values = Statistics::getValuesByAct($from, $to);
 }