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


PHP EntityManager::fetchResult方法代码示例

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


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

示例1: listAction

 /**
  * Genera array con los clientes del la ruta para el
  * comercial y dia indicado
  *
  * @param integer $idComercial
  * @param integer $dia
  * @return <type>
  */
 public function listAction($idComercial = '', $dia = '')
 {
     if ($idComercial == '') {
         $idComercial = $this->request[2];
     }
     if ($dia == '') {
         $dia = $this->request[3];
     }
     $this->values['listado']['dia'] = $dia;
     // Busco los clientes del comercial indicado y sucursal actual
     // que aun no estén asignados al día solicitado
     $cliente = new Clientes();
     $rutasVentas = new RutasVentas();
     $filtro = "IDComercial='{$idComercial}'\n                        AND IDSucursal='{$_SESSION['suc']}'\n                        AND IDCliente NOT IN\n                            (SELECT IDCliente FROM {$rutasVentas->getDataBaseName()}.{$rutasVentas->getTableName()}\n                            WHERE IDComercial='{$idComercial}' AND Dia='{$dia}')";
     $clientes = $cliente->cargaCondicion("IDCliente as Id, RazonSocial as Value", $filtro, "RazonSocial ASC");
     $this->values['listado']['clientes'] = $clientes;
     array_unshift($this->values['listado']['clientes'], array('Id' => '', 'Value' => ':: Indique un cliente'));
     // Busco las zonas de los clientes del comercial indicado y sucursal actual
     // que aun no estén asignados al día solicitado
     $zona = new Zonas();
     $em = new EntityManager($cliente->getConectionName());
     if ($em->getDbLink()) {
         $query = "SELECT DISTINCT t1.IDZona as Id, t2.Zona as Value \n                        FROM \n                            {$cliente->getDataBaseName()}.{$cliente->getTableName()} as t1, \n                            {$zona->getDataBaseName()}.{$zona->getTableName()} as t2\n                        WHERE t1.IDZona=t2.IDZona\n                        AND t1.IDComercial='{$idComercial}'\n                        AND t1.IDSucursal='{$_SESSION['suc']}'\n                        AND t1.IDCliente NOT IN\n                            (SELECT IDCliente FROM {$rutasVentas->getDataBaseName()}.{$rutasVentas->getTableName()}\n                            WHERE IDComercial='{$idComercial}' AND Dia='{$dia}')\n                        ORDER BY t2.Zona ASC";
         $em->query($query);
         $rows = $em->fetchResult();
         $em->desConecta();
     }
     $this->values['listado']['zonas'] = $rows;
     array_unshift($this->values['listado']['zonas'], array('Id' => '', 'Value' => ':: Indique una Zona'));
     //-----------------------------------------------
     // Lleno los clientes asignados al comercial y día
     // ordenados por Zona
     // -----------------------------------------------
     $em = new EntityManager($cliente->getConectionName());
     if ($em->getDbLink()) {
         $query = "SELECT t1.Id \n                        FROM \n                            {$rutasVentas->getDataBaseName()}.{$rutasVentas->getTableName()} as t1,\n                            {$cliente->getDataBaseName()}.{$cliente->getTableName()} as t2\n                        WHERE t1.IDCliente=t2.IDCliente\n                        AND t2.IDSucursal='{$_SESSION['suc']}'\n                        AND t1.IDComercial='{$idComercial}'\n                        AND t1.Dia='{$dia}'\n                        ORDER BY t1.OrdenCliente,t1.IDZona";
         $em->query($query);
         $rows = $em->fetchResult();
         $em->desConecta();
     }
     unset($em);
     unset($em);
     unset($cliente);
     unset($zona);
     unset($rutasVentas);
     foreach ($rows as $row) {
         $lineas[] = new $this->parentEntity($row['Id']);
     }
     //-----------------------------------------------
     $template = $this->entity . '/list.html.twig';
     $this->values['linkBy']['value'] = $idComercial;
     $this->values['listado']['data'] = $lineas;
     $this->values['listado']['nClientes'] = count($lineas);
     unset($lis);
     unset($lineas);
     return array('template' => $template, 'values' => $this->values);
 }
开发者ID:albatronic,项目名称:hermes,代码行数:65,代码来源:RutasVentasClientesController.class.php

示例2: getAgenciasOperadoras

 /**
  * Devuelve un array con las agencias de transporte que operan en
  * la zona de transporte en curso.
  *
  * Se entiende por 'operar', que tenga alguna tarifa en la
  * tabla de portes.
  *
  * @return array (Id,Value)
  */
 public function getAgenciasOperadoras()
 {
     $rows = array();
     $em = new EntityManager($this->getConectionName());
     if ($em->getDbLink()) {
         $query = "\n                SELECT DISTINCT tp.IDAgencia AS Id, ag.Agencia AS Value\n                FROM ErpTablaPortes as tp, ErpAgencias as ag\n                WHERE\n                  tp.IDZona='{$this->IDZona}' AND\n                  tp.IDAgencia=zt.IDAgencia\n                ORDER BY ag.Agencia ASC";
         $em->query($query);
         $rows = $em->fetchResult();
         $em->desConecta();
     }
     return $rows;
 }
开发者ID:albatronic,项目名称:hermes,代码行数:21,代码来源:ZonasTransporte.class.php

示例3: listAction

 /**
  * Genera una listado por pantalla en base al filtro.
  * Puede recibir un filtro adicional
  *
  * @param string $aditionalFilter
  * @return array con el template y valores a renderizar
  */
 public function listAction($aditionalFilter = '')
 {
     $clientes = new Clientes();
     $recibos = new RecibosClientes();
     $idComercial = $this->request['filter']['valuesSelected']['5'];
     if ($this->values['permisos']['permisosModulo']['CO']) {
         if ($idComercial) {
             $this->listado->makeQuery($aditionalFilter);
             $this->listado->arrayQuery['FROM'] = str_replace(", {$clientes->getDataBaseName()}.{$clientes->getTableName()}", "", $this->listado->arrayQuery['FROM']);
             $this->listado->arrayQuery['FROM'] .= ", {$clientes->getDataBaseName()}.{$clientes->getTableName()}";
             $this->listado->arrayQuery['WHERE'] .= " AND {$recibos->getDataBaseName()}.{$recibos->getTableName()}.IDCliente={$clientes->getDataBaseName()}.{$clientes->getTableName()}.IDCliente ";
             $this->listado->arrayQuery['WHERE'] .= "AND {$clientes->getDataBaseName()}.{$clientes->getTableName()}.IDComercial='{$idComercial}'";
             $this->listado->buildQuery();
         }
         $this->values['listado'] = $this->listado->getAll($aditionalFilter);
         $this->values['filtroRemesa'] = $this->values['listado']['filter']['valuesSelected'][11];
         // Obtener total recibos y total a remesar
         $em = new EntityManager($recibos->getConectionName());
         if ($em->getDbLink()) {
             $query = "select sum(Importe) as Importe from {$this->listado->arrayQuery['FROM']} where {$this->listado->arrayQuery['WHERE']}";
             $em->query($query);
             $total = $em->fetchResult();
             $query1 = "select sum(Importe) as Importe from {$this->listado->arrayQuery['FROM']} where {$this->listado->arrayQuery['WHERE']} and Remesar='1'";
             $em->query($query1);
             $remesa = $em->fetchResult();
             $em->desConecta();
         }
         unset($em);
         $this->values['listado']['importeRecibos'] = $total[0]['Importe'];
         $this->values['listado']['importeRemesa'] = $remesa[0]['Importe'];
         $template = $this->entity . '/list.html.twig';
     } else {
         $template = "_global/forbiden.html.twig";
     }
     unset($clientes);
     unset($recibos);
     return array('template' => $template, 'values' => $this->values);
 }
开发者ID:albatronic,项目名称:hermes,代码行数:45,代码来源:RecibosClientesController.class.php

示例4: getOpciones

 public function getOpciones($de, $nivel)
 {
     $rows = array();
     $em = new EntityManager($this->getConectionName());
     if ($em->getDbLink()) {
         $query = "\n                select m.Id,m.CodigoApp,m.Titulo ,p.NombreModulo, p.Funcionalidades, m.Icon\n                from {$this->getDataBaseName()}.AgtPermisos as p, {$this->getDataBaseName()}.AgtModulos as m\n                where m.NombreModulo = p.NombreModulo and m.BelongsTo='{$de}' and m.Nivel='{$nivel}' and\n                p.IdPerfil = '{$this->getIdPerfil()->getId()}' AND\n                LOCATE('AC',p.Funcionalidades)\n                order by m.Id ASC";
         //echo $query,"<br/>";
         $em->query($query);
         $rows = $em->fetchResult();
     } else {
         echo "NO HAY CONEXION CON LA BASE DE DATOS";
     }
     unset($em);
     return $rows;
 }
开发者ID:albatronic,项目名称:agentescloud,代码行数:15,代码来源:Usuarios.class.php

示例5: fetchAll

 /**
  * Devuelve un array con los tpvs de la sucursal indicada
  * o en su defecto la sucursal en curso
  *
  * @param integer $idSucursal
  * @return array
  */
 public function fetchAll($idSucursal = '', $default = true)
 {
     if ($idSucursal == '') {
         $idSucursal = $_SESSION['suc'];
     }
     $em = new EntityManager($this->getConectionName());
     $link = $em->getDbLink();
     if (is_resource($link)) {
         $query = "select IDTpv as Id, Nombre as Value from {$this->getDataBaseName()}.{$this->getTableName()} where IDSucursal='" . $idSucursal . "'";
         $em->query($query);
         $tpvs = $em->fetchResult();
         $em->desConecta();
     }
     return $tpvs;
 }
开发者ID:albatronic,项目名称:hermes,代码行数:22,代码来源:Tpvs.class.php

示例6: getZonasOperacion

 /**
  * Devuelve un array con las Zonas de transporte donde opera la agencia
  * en curso.
  *
  * Se entiende por 'operar', que tenga alguna tarifa en la
  * tabla de portes.
  *
  * @return array (Id,Value)
  */
 public function getZonasOperacion()
 {
     $rows = array();
     $zonas = new ZonasTransporte();
     $tablaZonas = $zonas->getDataBaseName() . "." . $zonas->getTableName();
     $portes = new TablaPortes();
     $tablaPortes = $portes->getDataBaseName() . "." . $portes->getTableName();
     $em = new EntityManager($zonas->getConectionName());
     if ($em->getDbLink()) {
         $query = "\n                SELECT DISTINCT tp.IDZona AS Id, zt.Zona AS Value\n                FROM \n                  {$tablaPortes} as tp, \n                  {$tablaZonas} as zt\n                WHERE\n                  tp.IDAgencia='{$this->IDAgencia}' AND\n                  tp.IDZona=zt.IDZona\n                ORDER BY zt.Zona ASC";
         $em->query($query);
         $rows = $em->fetchResult();
         $em->desConecta();
     }
     return $rows;
 }
开发者ID:albatronic,项目名称:hermes,代码行数:25,代码来源:Agencias.class.php

示例7: listadoAction

 public function listadoAction($aditionalFilter = '')
 {
     $pdf = new PDF("P", 'mm', "A4");
     $pdf->SetTopMargin(15);
     $pdf->SetLeftMargin(10);
     $pdf->AliasNbPages();
     $pdf->SetFillColor(210);
     $per = new Permisos();
     $em = new EntityManager($per->getConectionName());
     $query = "select t1.IdPerfil,t1.Permisos,t4.Perfil,t2.Titulo as Opcion,t3.Titulo as SubOpcion\n                from AgtPermisos as t1,menu as t2, submenu as t3, perfiles as t4\n                where t1.IDOpcion=t2.IDOpcion\n                and t1.IDOpcion=t3.IDOpcion\n                and t3.Id=t1.IDSubOpcion\n                and t1.IdPerfil=t4.Id\n                order by t1.IdPerfil,t1.IDOpcion,t1.IDSubOpcion;";
     $em->query($query);
     $rows = $em->fetchResult();
     $em->desConecta();
     unset($per);
     $perant = "";
     $opcant = "";
     foreach ($rows as $row) {
         if ($perant != $row['IDPerfil']) {
             $pdf->AddPage();
             $pdf->Cell(40, 5, $row['Perfil'], 0, 0, "L", 1);
         } else {
             $pdf->Cell(40, 5, "", 0, 0, "L", 0);
         }
         $pdf->SetFillColor(240);
         if ($opcant != $row['Opcion']) {
             $pdf->Cell(30, 5, $row['Opcion'], 0, 0, "L", 1);
         } else {
             $pdf->Cell(30, 5, "", 0, 0, "L", 0);
         }
         $perant = $row['IDPerfil'];
         $opcant = $row['Opcion'];
         $pdf->Cell(40, 5, $row['SubOpcion'], 0, 0, "L", 0);
         $permisos = array('C' => substr($row['Permisos'], 0, 1), 'I' => substr($row['Permisos'], 1, 1), 'B' => substr($row['Permisos'], 2, 1), 'A' => substr($row['Permisos'], 3, 1), 'L' => substr($row['Permisos'], 4, 1), 'E' => substr($row['Permisos'], 5, 1));
         $pdf->Cell(13, 5, $permisos['C'], 0, 0, "C", 0);
         $pdf->Cell(13, 5, $permisos['I'], 0, 0, "C", 1);
         $pdf->Cell(13, 5, $permisos['B'], 0, 0, "C", 0);
         $pdf->Cell(13, 5, $permisos['A'], 0, 0, "C", 1);
         $pdf->Cell(13, 5, $permisos['L'], 0, 0, "C", 0);
         $pdf->Cell(13, 5, $permisos['E'], 0, 1, "C", 1);
         $pdf->SetFillColor(210);
     }
     $archivo = "docs/docs" . $_SESSION['emp'] . "/pdfs/" . md5(date('d-m-Y H:i:s')) . ".pdf";
     $pdf->Output($archivo, 'F');
     $this->values['archivo'] = $archivo;
     return array('template' => '_global/listadoPdf.html.twig', 'values' => $this->values);
 }
开发者ID:albatronic,项目名称:agentescloud,代码行数:46,代码来源:PerfilesController.class.php

示例8: validaBorrado

 /**
  * Valida antes del borrado
  * Devuelve TRUE o FALSE
  * Si hay errores carga el array $this->_errores
  * @return boolean
  */
 public function validaBorrado()
 {
     parent::validaBorrado();
     $em = new EntityManager("empresas");
     $link = $em->getDbLink();
     if (is_resource($link)) {
         //PERMISOS
         $query = "select count(Id) as N from permisos where IDOpcion='" . $this->IDOpcion . "' AND IDSubopcion='" . $this->getId() . "'";
         $row = $em->fetchResult();
         $n = $row[0]['N'];
         if ($n > 0) {
             $this->_errores[] = "Imposible eliminar. Hay " . $n . " permisos relacionados";
         }
         $em->desConecta();
     } else {
         $this->_errores[] = "Error conexión a la DB validando borrado de SubMenu";
     }
     return count($this->_errores) == 0;
 }
开发者ID:albatronic,项目名称:hermes,代码行数:25,代码来源:Submenu.class.php

示例9: create

 /**
  * Asigno permiso al usuario-proyecto-app
  * 
  * Y además creo el usuario en el cpanel del proyecto.
  * 
  * @return boolean
  */
 public function create()
 {
     $id = parent::create();
     if ($id) {
         // Para saber el perfil que tiene el usuario con la empresa.
         $usuario = new PcaeUsuarios($this->IdUsuario);
         $perfil = $usuario->getPerfilEmpresa($this->IdEmpresa);
         $idPerfil = $perfil->getId();
         unset($usuario);
         unset($perfil);
         $proyectoApp = new PcaeProyectosApps();
         $filtro = "IdProyecto='{$this->IdProyecto}' AND IdApp='{$this->IdApp}'";
         $rows = $proyectoApp->cargaCondicion("*", $filtro);
         unset($proyectoApp);
         $row = $rows[0];
         if ($row['Id']) {
             $connection = array('dbEngine' => $row['DbEngine'], 'host' => $row['Host'], 'user' => $row['User'], 'password' => $row['Password'], 'dataBase' => $row['Database']);
             $em = new EntityManager($connection);
             if ($em->getDbLink()) {
                 $query = "select Id from {$connection['dataBase']}.CpanUsuarios where IdUsuario='{$this->IdUsuario}'";
                 $em->query($query);
                 $rows = $em->fetchResult();
                 $id = $rows[0]['Id'];
                 if ($id) {
                     $query = "update {$connection['dataBase']}.CpanUsuarios set IdPerfil='{$idPerfil}' where Id='{$id}'";
                     $em->query($query);
                 } else {
                     $query = "insert into {$connection['dataBase']}.CpanUsuarios (IdUsuario,IdPerfil,IdRol,IdTipoUsuario) values ('{$this->IdUsuario}','{$idPerfil}','1','1');";
                     $em->query($query);
                     $lastId = $em->getInsertId();
                     $query = "update {$connection['dataBase']}.CpanUsuarios set SortOrder='{$lastId}', PrimaryKeyMD5='" . md5($lastId) . "' WHERE Id='{$lastId}'";
                     $em->query($query);
                 }
                 $em->desConecta();
             }
             unset($em);
         }
     }
     return $id;
 }
开发者ID:albatronic,项目名称:hermes,代码行数:47,代码来源:PcaePermisos.class.php

示例10: 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

示例11: getArticulos

 /**
  * Devuelve un array de objetos articulos que cumplen la
  * regla $idRegla, ordenados por SortOrder ASC
  * 
  * El array tendrá $nItems elementos.
  * 
  * @param int $idRegla El id de la regla
  * @param int $nItems El número máximo de elementos a devolver. Opcional, por defecto todos.
  * @return \Articulos array de objetos Articulos
  */
 public function getArticulos($idRegla, $nItems = 999999)
 {
     $array = array();
     if ($nItems <= 0) {
         $nItems = 999999;
     }
     $em = new EntityManager($this->getConectionName());
     if ($em->getDbLink()) {
         // Condición de vigencia
         $ahora = date("Y-m-d H:i:s");
         $filtro = "(a.Deleted='0') AND (a.Publish='1') AND (a.ActiveFrom<='{$ahora}') AND ( (a.ActiveTo>='{$ahora}') or (a.ActiveTo='0000-00-00 00:00:00') )";
         $query = "\n                SELECT a.IDArticulo as Id\n                FROM {$em->getDataBase()}.ErpOrdenesArticulos r, {$em->getDataBase()}.ErpArticulos a\n                WHERE r.IDRegla='{$idRegla}' AND r.IDArticulo=a.IDArticulo AND a.Vigente='1' AND {$filtro}\n                ORDER BY r.SortOrder ASC\n                LIMIT {$nItems}";
         $em->query($query);
         $rows = $em->fetchResult();
         $em->desConecta();
     }
     unset($em);
     if (is_array($rows)) {
         foreach ($rows as $row) {
             $array[$row['Id']] = new Articulos($row['Id']);
         }
     }
     return $array;
 }
开发者ID:albatronic,项目名称:hermes,代码行数:34,代码来源:OrdenesArticulos.class.php

示例12: getAgenciasZona

 /**
  * Devuelve un array con las TRES primeras agencias que tienen tarifa
  * para la zona y cantidad de kilos indicados.
  *
  * El orden es ascendente respecto a los kilos y el importe
  *
  * La estructura del array es
  *
  *      Id => El id de la agencia
  *      Value => El nombre de la agencia
  *      Kilos => Cantidad de kilos
  *      Importe => Precio para esos kilos
  *
  * @param integer $idZona
  * @param integer $kilos
  * @return array
  */
 public function getAgenciasZona($idZona, $kilos = '0')
 {
     $rows = array();
     $agencias = new Agencias();
     $tablaAgencias = $agencias->getTableName();
     unset($agencias);
     $em = new EntityManager($_SESSION['project']['conection']);
     if ($em->getDbLink()) {
         $query = "\n                SELECT tp.IDAgencia as Id,ag.Agencia as Value,tp.Kilos as Kilos,tp.Importe as Importe\n                FROM\n                    {$this->getDataBaseName()}.{$this->getTableName()} as tp, \n                    {$this->getDataBaseName()}.{$tablaAgencias} as ag\n                WHERE\n                  tp.IDZona='{$idZona}' AND\n                  tp.IDAgencia=ag.IDAgencia AND\n                  tp.Kilos>='{$kilos}'\n                ORDER BY tp.Kilos,tp.Importe ASC\n                LIMIT 3\n                ";
         $em->query($query);
         $rows = $em->fetchResult();
         $em->desConecta();
     }
     return $rows;
 }
开发者ID:albatronic,项目名称:hermes,代码行数:32,代码来源:TablaPortes.class.php

示例13: facturarAction

 /**
  * Proceso de facturacion.
  * Puede ser facturación separada: Una factura por cada albarán
  * o facturación agrupada: Una factura con todos los albaranes, con las siguientes salvedades:
  *
  * Se agrupan las facturas en base a la forma de pago, comercial y al flag "Facturación agrupada"
  * de la ficha del cliente.
  *
  * @return <type>
  */
 public function facturarAction()
 {
     $facturados = array();
     $filtro = $this->request['filtro'];
     $fecha = new Fecha($filtro['desdeFecha']);
     $desdeFecha = $fecha->getaaaammdd();
     $fecha = new Fecha($filtro['hastaFecha']);
     $hastaFecha = $fecha->getaaaammdd();
     unset($fecha);
     switch ($this->request['tipo']) {
         case '0':
             // Facturación individual. Se genera una factura por cada albarán
             $filter = "IDFactura='0' and IDEstado='2' and IDCliente='{$filtro['idCliente']}' and FechaEntrega>='{$desdeFecha}' and FechaEntrega<'{$hastaFecha}' and FlagFacturar='1'";
             $albaran = new AlbaranesCab();
             $rows = $albaran->cargaCondicion("IDAlbaran", $filter, "FechaEntrega ASC");
             foreach ($rows as $row) {
                 $albaran = new AlbaranesCab($row['IDAlbaran']);
                 $idFactura = $albaran->facturar(new Contadores($this->request['idContador']), $this->request['fecha']);
                 if (count($albaran->getErrores()) != 0) {
                     $this->values['errores'] = $albaran->getErrores();
                     break;
                 } else {
                     $facturados[] = $idFactura;
                 }
             }
             unset($albaran);
             break;
         case '1':
             // Agrupada. Se agrupan los albaranes por forma de pago, comercial
             $filter = "c.IDFactura='0' and c.IDEstado='2' and c.IDCliente='{$filtro['idCliente']}' and c.FechaEntrega>='{$desdeFecha}' and c.FechaEntrega<'{$hastaFecha}' and c.FlagFacturar='1'";
             //COMPRUEBO QUE NO HAYA MAS DE TRES TIPOS DE IVA ENTRE TODOS LOS ALBARANES A FACTURAR
             $albaran = new AlbaranesCab();
             $albaranTabla = $albaran->getDataBaseName() . "." . $albaran->getTableName();
             $lineas = new AlbaranesLineas();
             $lineasTabla = $lineas->getDataBaseName() . "." . $lineas->getTableName();
             $em = new EntityManager($albaran->getConectionName());
             if (!$em->getDbLink()) {
                 $this->values['errores'] = $em->getError();
                 return $this->listAction();
             }
             $query = "select l.Iva from {$lineasTabla} as l, {$albaranTabla} as c\n                        where {$filter} and c.IDAlbaran=l.IDAlbaran\n                        group by l.Iva";
             $em->query($query);
             $rows = $em->fetchResult();
             $em->desConecta();
             if (count($rows) > 3) {
                 $this->values['alertas'] = "Hay más de tres tipos de iva distintos. No se puede agrupar";
                 return $this->listAction();
             }
             $contador = new Contadores($this->request['idContador']);
             // Buscar la cuenta contable de ventas para la sucursal
             $sucursal = new Sucursales($filtro['idSucursal']);
             $ctaVentas = $sucursal->getCtaContableVentas();
             unset($sucursal);
             $cliente = new Clientes($filtro['idCliente']);
             $agruparDireccionEntrega = $cliente->getFacturacionAgrupada()->getIDTipo() == '1';
             unset($cliente);
             $query = $agruparDireccionEntrega ? "select c.IDFP,c.IDComercial, sum(c.Importe) as Importe, sum(Descuento) as Descuento from {$albaranTabla} c where {$filter} GROUP BY c.IDFP, c.IDComercial;" : "select c.IDFP,c.IDComercial, c.IDDirec, sum(c.Importe) as Importe, sum(Descuento) as Descuento from {$albaranTabla} c where {$filter} GROUP BY c.IDFP, c.IDComercial, c.IDDirec;";
             unset($cliente);
             //AGRUPO LOS ALBARANES POR FORMA DE PAGO, COMERCIAL Y (si procede) DIRECCION DE ENTREGA.
             $em = new EntityManager($albaran->getConectionName());
             $em->query($query);
             $rows = $em->fetchResult();
             $em->desConecta();
             foreach ($rows as $row) {
                 $numeroFactura = $contador->asignaContador();
                 $factura = new FemitidasCab();
                 $factura->setIDSucursal($filtro['idSucursal']);
                 $factura->setIDContador($this->request['idContador']);
                 $factura->setNumeroFactura($numeroFactura);
                 $factura->setIDAgente($_SESSION['usuarioPortal']['Id']);
                 $factura->setIDComercial($row['IDComercial']);
                 $factura->setFecha($this->request['fecha']);
                 $factura->setIDCliente($filtro['idCliente']);
                 $factura->setCuentaVentas($ctaVentas);
                 $factura->setDescuento($row['Descuento']);
                 $factura->setImporte($row['Importe']);
                 $factura->setIDFP($row['IDFP']);
                 $idFactura = $factura->create();
                 // Guardo en un array los id's de facturas generadas
                 $facturados[] = $idFactura;
                 if ($idFactura != 0) {
                     // Crear las lineas de factura
                     // No incluyo las lineas de albaran cuyas unidades sean 0
                     $em = new EntityManager($albaran->getConectionName());
                     $query = $agruparDireccionEntrega ? "select l.* from {$lineasTabla} l, {$albaranTabla} c where (c.IDAlbaran=l.IDAlbaran) and (c.IDFP='{$row['IDFP']}') and (l.Unidades<>0) and {$filter}" : "select l.* from {$lineasTabla} l, {$albaranTabla} c where (c.IDAlbaran=l.IDAlbaran) and (c.IDFP='{$row['IDFP']}') and (c.IDDirec='{$row['IDDirec']}') and (l.Unidades<>0) and {$filter}";
                     $em->query($query);
                     $lineas = $em->fetchResult();
                     $em->desConecta();
                     foreach ($lineas as $linea) {
                         $linFactura = new FemitidasLineas();
//.........这里部分代码省略.........
开发者ID:albatronic,项目名称:hermes,代码行数:101,代码来源:FacturacionController.class.php

示例14: getUbicacionesLibres

 /**
  * !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
  * OJO!!! ESTE METODO NO SE USA EN PRINCIPIO. HAY QUE REVISAR EL QUERY
  * YA QUE SE USAN TABLAS DE DIFERENTES BASES DE DATOS Y PARACE QUE NO ESTA BIEN
  * !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
  *
  * Devuelve un array con las ubicaciones disponibles en el almacén
  * Se entiende por ubicacion libre aquella que no tiene existencias
  * El array es del tipo array('Id' => , 'Value' => )
  * @return array Con las ubicaciones libres
  */
 public function getUbicacionesLibres()
 {
     $huecos = array();
     // LLamo al procedimiento almacenado 'UbicacionesLibres'
     $em = new EntityManager($this->getConectionName());
     if ($em->getDbLink()) {
         //$query = "Call UbicacionesLibres('{$this->IDAlmacen}');";
         $query = "SELECT IDUbicacion as Id, Ubicacion as Value\n                        FROM {$this->_dataBaseName}.ErpAlmacenesMapas\n                        WHERE\n                            IDAlmacen = '{$this->IDAlmacen}' AND\n                            IDUbicacion NOT IN (\n                                SELECT t1.IDUbicacion\n                                FROM ErpExistencias as t1\n                                GROUP BY t1.IDAlmacen, t1.IDUbicacion\n                                HAVING t1.IDAlmacen =  '{$this->IDAlmacen}'\n                                AND SUM( t1.Reales ) > 0\n                            )\n                        ORDER BY Ubicacion";
         $em->query($query);
         $huecos = $em->fetchResult();
         $em->desConecta();
     }
     unset($em);
     return $huecos;
 }
开发者ID:albatronic,项目名称:hermes,代码行数:26,代码来源:Almacenes.class.php

示例15: RecibosAgrupados

 static function RecibosAgrupados($filtro)
 {
     $recibos = new RecibosClientes();
     $clientes = new Clientes();
     $tablaRecibos = $recibos->getDataBaseName() . "." . $recibos->getTableName();
     $tablaClientes = $clientes->getDataBaseName() . "." . $clientes->getTableName();
     $em = new EntityManager($recibos->getConectionName());
     if ($em->getDbLink()) {
         $filtro .= " and (Remesar='1') and (CHAR_LENGTH(r.Iban)>23) and (r.Iban<>'ES8200000000000000000000')";
         $query = "select r.IDCliente," . "sum(r.Importe) importe," . "r.Iban iban, " . "r.Bic bic, " . "r.Mandato idMandato, " . "r.FechaMandato fechaMandato " . "from {$tablaRecibos} as r " . "left join {$tablaClientes} as c on r.IDCliente=c.IDCliente " . "where {$filtro} " . "group by r.IDCliente,r.Iban " . "having sum(r.Importe)>0 " . "order by c.RazonSocial,r.Vencimiento ASC";
         $em->query($query);
         $rows = $em->fetchResult();
     }
     unset($em);
     unset($recibos);
     unset($clientes);
     $total = 0;
     foreach ($rows as $row) {
         $cliente = new Clientes($row['IDCliente']);
         $total += $row['importe'];
         $recibos[] = array('numeroFactura' => 'Varias', 'importe' => $row['importe'], 'idMandato' => $row['idMandato'], 'fechaMandato' => $row['fechaMandato'], 'bic' => $row['bic'] == '' ? "BBBBESPP" : $row['bic'], 'iban' => $row['iban'], 'razonSocial' => $cliente->getRazonSocial(), 'direccion1' => $cliente->getDireccion(), 'direccion2' => $cliente->getIDPoblacion()->getMunicipio() . " " . $cliente->getCodigoPostal() . " " . $cliente->getIDProvincia()->getProvincia(), 'pais' => $cliente->getIDPais()->getCodigo(), 'texto' => "Varias Facturas");
     }
     unset($cliente);
     return array('nRecibos' => count($rows), 'importeTotal' => $total, 'recibos' => $recibos);
 }
开发者ID:albatronic,项目名称:hermes,代码行数:25,代码来源:Cuaderno19SepaXml.class.php


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