当前位置: 首页>>代码示例>>PHP>>正文


PHP EntityManager::numRows方法代码示例

本文整理汇总了PHP中EntityManager::numRows方法的典型用法代码示例。如果您正苦于以下问题:PHP EntityManager::numRows方法的具体用法?PHP EntityManager::numRows怎么用?PHP EntityManager::numRows使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在EntityManager的用法示例。


在下文中一共展示了EntityManager::numRows方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。

示例1: getGrafico

 public function getGrafico()
 {
     $em = new EntityManager($_SESSION['project']['conection']);
     $em->query($this->query);
     $rows = $em->fetchResult();
     $nRegistros = $em->numRows();
     $em->desConecta();
     unset($em);
     foreach ($rows as $value) {
         $this->datosY[] = $value[$this->columnaY];
         $this->titulosX[] = $value[$this->columnaX];
     }
     $grafico = new Graph($this->ancho, $this->alto);
     $grafico->SetScale('textlin');
     // Ajustamos los margenes del grafico-----    (left,right,top,bottom)
     $grafico->SetMargin(40, 30, 30, 40);
     // Creamos barras de datos a partir del array de datos
     $bplot = new BarPlot($this->datosY);
     // Configuramos color de las barras
     $bplot->SetFillColor('#479CC9');
     //Añadimos barra de datos al grafico
     $grafico->Add($bplot);
     // Queremos mostrar el valor numerico de la barra
     $bplot->value->Show();
     // Configuracion de los titulos
     $grafico->title->Set($this->titulo);
     $grafico->xaxis->title->Set($this->tituloX);
     $grafico->yaxis->title->Set($this->tituloY);
     $grafico->title->SetFont(FF_FONT1, FS_BOLD);
     $grafico->yaxis->title->SetFont(FF_FONT1, FS_BOLD);
     $grafico->xaxis->title->SetFont(FF_FONT1, FS_BOLD);
     $grafico->xaxis->SetTickLabels($this->titulosX);
     // Se generada el archivo con el gráfico
     $archivo = "docs/docs" . $_SESSION['emp'] . "/tmp/" . md5(date('d-m-Y H:i:s')) . ".png";
     $grafico->Stroke($archivo);
     return $archivo;
 }
开发者ID:albatronic,项目名称:hermes,代码行数:37,代码来源:Grafico.class.php

示例2: getXls

 /**
  * Genera un archivo XLSX con el listado
  * @param integer $idFormatoListado
  * @param string $aditionalFilter
  * @return string $archivo El nombre completo (con la ruta) del archivo xlsx generado
  */
 public function getXls($idFormatoListado, $aditionalFilter = '')
 {
     // CARGAR EL MOTOR PARA GENERAR ARCHIVOS EXCELS
     $config = sfYaml::load('config/config.yml');
     $config = $config['config'];
     if (file_exists($config['excel'])) {
         include_once $config['excel'];
     } else {
         die("NO SE PUEDE ENCONTRAR EL MOTOR EXCEL");
     }
     set_time_limit(0);
     // Lee la configuracion del listado $idFormatoListado y
     // la guarda en $parametros
     $formato = new Form($this->entity, 'listados.yml');
     $parametros = $formato->getFormatoListado($idFormatoListado);
     unset($formato);
     // CREAR EL DOCUMENTO
     $objPHPExcel = new PHPExcel();
     $objPHPExcel->getProperties()->setCreator("ERP Albatronic")->setTitle($parametros['title']);
     $objPHPExcel->getDefaultStyle()->getFont()->setName('Arial');
     $objPHPExcel->getDefaultStyle()->getFont()->setSize(14);
     $objPHPExcel->getActiveSheet()->setTitle($parametros['title']);
     $objPHPExcel->setActiveSheetIndex(0)->setCellValue('A1', $parametros['title'])->setCellValue('A3', 'Generado por ' . $_SESSION['usuarioPortal']['Nombre'])->setCellValue('A4', 'Fecha ' . date('d/m/Y H:i:s'));
     // Fila de titulos
     $columna = 'A';
     foreach ($parametros['columns'] as $column) {
         $objPHPExcel->setActiveSheetIndex(0)->setCellValue($columna . '6', $column['title']);
         $columna++;
     }
     // Construyo el array con los datos a listar.
     // Sustituyo el ORDERBY que hay en el filtro por pantalla
     // con el que viene de los parametros del listado
     if ($this->getQuery() == '') {
         $this->filter['orderBy'] = $parametros['order_by'];
         $this->makeQuery($aditionalFilter);
     }
     $em = new EntityManager($this->form->getConection());
     $em->query($this->getQuery());
     $rows = $em->fetchResult();
     $nRegistros = $em->numRows();
     $em->desConecta();
     unset($em);
     $breakField = trim((string) $parametros['break_field']);
     if ($breakField) {
         $breakField = explode(",", $breakField);
     } else {
         $breakField = array();
     }
     $valorAnterior = '';
     // Itero el array con los datos para generar cada renglón del listado
     $totales = array();
     $subTotales = array();
     $fila = 7;
     $objPHPExcel->getDefaultStyle()->getFont()->setSize(10);
     $objeto = new $this->entity();
     foreach ($rows as $row) {
         $columna = 'A';
         $objeto->bind($row);
         // Control (si se ha definido) del campo de ruptura
         if (count($breakField)) {
             // Instancio el objeto por el que se hace el break
             $objetoBreak = $objeto->{"get{$breakField['0']}"}();
             $valorActual = $objetoBreak->__toString();
             if ($valorAnterior != $valorActual) {
                 if ($valorAnterior != '') {
                     $this->pintaTotalesExcel($objPHPExcel, $fila, $parametros['columns'], $subTotales);
                     $fila++;
                     $columna = 'A';
                     $subTotales = array();
                 }
                 // Pinto el valor del campo de ruptura y los eventuales valores
                 // adicionales que se hayan indicado en el nodo xml <break_field>
                 $texto = $valorActual;
                 for ($i = 1; $i < count($breakField); $i++) {
                     $texto .= " " . $objetoBreak->{"get{$breakField[$i]}"}();
                 }
                 $fila++;
                 $objPHPExcel->setActiveSheetIndex(0)->setCellValue($columna . $fila, $texto);
             }
             $valorAnterior = $valorActual;
             unset($objetoBreak);
         }
         // Recorro las columnas que componen cada renglón
         $fila++;
         foreach ($parametros['columns'] as $value) {
             $formato = trim((string) $value['format']);
             $texto = trim($objeto->{"get{$value['field']}"}());
             if ($formato) {
                 $texto = sprintf($formato, $texto);
             }
             $objPHPExcel->setActiveSheetIndex(0)->setCellValue($columna . $fila, $texto);
             // Calcular Eventuales totales y subtotales de cada columna
             if (strtoupper($value['total']) == 'YES') {
                 $totales[(string) $value['field']] += (double) $texto;
//.........这里部分代码省略.........
开发者ID:albatronic,项目名称:hermes,代码行数:101,代码来源:Listado.class.php

示例3: getPdf

 /**
  * Genera un archivo pdf con el listado
  * @param array $parametros Array con los parámetros de configuración del listado
  * @param string $aditionalFilter
  * @return string $archivo El nombre completo (con la ruta) del archivo pdf generado
  */
 public function getPdf($parametros, $aditionalFilter = '')
 {
     set_time_limit(0);
     // Orientación de página, unidad de medida y tipo de papel
     $orientation = strtoupper(trim($parametros['orientation']));
     if ($orientation != 'P' and $orientation != 'L') {
         $orientation = 'P';
     }
     $unit = strtolower(trim($parametros['unit']));
     if ($unit != 'pt' and $unit != 'mm' and $unit != 'cm' and $unit != 'in') {
         $unit = 'mm';
     }
     $format = strtolower(trim($parametros['format']));
     if ($format != 'a4' and $format != 'a3' and $format != 'a5' and $format != 'letter' and $format != 'legal') {
         $format = 'A4';
     }
     // Márgenes: top,right,bottom,left
     $margenes = explode(',', trim($parametros['margins']));
     if (count($margenes) != 4) {
         $margenes = array('10', '10', '15', '10');
     }
     // Tipo y tamaño de letra para el cuerpo del listado
     $bodyFont = explode(',', trim($parametros['body_font']));
     if (count($bodyFont) != 3) {
         $bodyFont = array('Courier', '', '8');
     } else {
         $bodyFont[0] = trim($bodyFont[0]);
         $bodyFont[1] = trim($bodyFont[1]);
         $bodyFont[2] = trim($bodyFont[2]);
     }
     // Altura de la línea. Por defecto 4 mm.
     $lineHeight = trim($parametros['line_height']);
     if ($lineHeight <= 0) {
         $lineHeight = 4;
     }
     // Construir la leyenda del filtro
     $leyendaFiltro = array();
     if (is_array($this->filter['columnsSelected'])) {
         foreach ($this->filter['columnsSelected'] as $key => $column) {
             if ($this->filter['valuesSelected'][$key] != '') {
                 $entidad = $this->circulares[$this->idCircular]['filters'][$key]['entity'];
                 if ($entidad) {
                     $aux = explode(",", $entidad);
                     $entidad = $aux[0];
                     $idEntidad = $this->filter['valuesSelected'][$key];
                     $objeto = new $entidad($idEntidad);
                     $valor = $objeto->__toString();
                 } else {
                     $valor = $this->filter['valuesSelected'][$key];
                 }
                 $leyendaFiltro[] = array('Column' => $parametros['filters'][$key]['caption'], 'Value' => $valor);
             }
         }
     }
     // CREAR EL DOCUMENTO
     $pdf = new ListadoPDF($orientation, $unit, $format, array('title' => $parametros['title'], 'titleFont' => $bodyFont, 'columns' => $parametros['columns'], 'leyendaFiltro' => $leyendaFiltro));
     $pdf->SetTopMargin($margenes[0]);
     $pdf->SetRightMargin($margenes[1]);
     $pdf->SetLeftMargin($margenes[3]);
     $pdf->SetAuthor("Informatica ALBATRONIC, SL");
     $pdf->SetTitle($parametros['title']);
     $pdf->AliasNbPages();
     $pdf->SetFillColor(210);
     $pdf->AddPage();
     $pdf->SetAutoPageBreak(true, $margenes[2]);
     // CUERPO
     $pdf->SetFont($bodyFont[0], $bodyFont[1], $bodyFont[2]);
     $em = new EntityManager($_SESSION['project']['conection']);
     $em->query($this->query);
     $rows = $em->fetchResult();
     $nRegistros = $em->numRows();
     $em->desConecta();
     unset($em);
     $breakPage = strtoupper(trim((string) $parametros['break_page'])) == 'YES';
     // ----------------------------------------------
     // Cargo la configuración de la línea del listado
     // En el array $columnasMulticell guardo el nombre de los
     // campos que se imprimirán en Multicell y su anchura en la unidad de medida
     // establecida para calcular la altura máxima y controlar el salto de página
     // ----------------------------------------------
     $configLinea = array();
     $columnsMulticell = array();
     $caracteresLinea = 0;
     foreach ($parametros['columns'] as $key => $value) {
         $caracteres = (int) $value['length'];
         $anchoColumna = $pdf->getStringWidth(str_pad(" ", $caracteres)) + 1;
         //Le sumo 1 para que haya 1 mm de separación entre cada columna
         $caracteresLinea += $caracteres;
         $tipo = trim((string) $value['type']);
         $align = strtoupper(trim((string) $value['align']));
         if ($align != 'R' and $align != 'C' and $align != 'L' and $align != 'J') {
             $align = "L";
         }
         $formato = trim((string) $value['format']);
//.........这里部分代码省略.........
开发者ID:albatronic,项目名称:agentescloud,代码行数:101,代码来源:Circulares.class.php


注:本文中的EntityManager::numRows方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。