コード例 #1
0
 /**
  * Realiza el cambio de cliente en la factura, albaranes y recibos
  */
 private function cambiarCliente()
 {
     $ok = false;
     // Cambiar factura
     $femitidas = new FemitidasCab();
     $filtro = "NumeroFactura='{$this->request['numeroFactura']}' AND IDCliente='{$this->request['idClienteAnterior']}'";
     $okFactura = $femitidas->queryUpdate(array("IDCliente" => $this->request['idClienteNuevo']), $filtro);
     $this->values['errores'] = $femitidas->getErrores();
     if ($okFactura) {
         $this->values['mensaje'][] = "Se ha cambiado " . $okFactura . " factura.";
         // Cambiar albaran/es
         $albaranes = new AlbaranesCab();
         $filtro = "IDFactura='{$this->request['idFactura']}' AND IDCliente='{$this->request['idClienteAnterior']}'";
         $nAlbaranes = $albaranes->queryUpdate(array("IDCliente" => $this->request['idClienteNuevo']), $filtro);
         $this->values['errores'] = $albaranes->getErrores();
         $this->values['mensaje'][] = "Se han cambiado " . $nAlbaranes . " albaranes.";
         // Cambiar recibos
         $recibos = new RecibosClientes();
         $filtro = "IDFactura='{$this->request['idFactura']}' AND IDCliente='{$this->request['idClienteAnterior']}'";
         $nRecibos = $recibos->queryUpdate(array("IDCliente" => $this->request['idClienteNuevo']), $filtro);
         $this->values['errores'] = $recibos->getErrores();
         $this->values['mensaje'][] = "Se han cambiado " . $nRecibos . " recibos.";
     }
 }
コード例 #2
0
 public function RecibosAgrupados($filtro)
 {
     //$aux = substr(self::$parametros['fechaCobro'], 0, 4) . '20' . substr(self::$parametros['fechaCobro'], -2);
     $fecha = new Fecha(self::$parametros['fechaCobro']);
     $fCargo = $fecha->getaaaammdd();
     unset($fecha);
     $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) as Importe,r.Iban,c.RazonSocial from {$tablaRecibos} as r\n            left join {$tablaClientes} as c on r.IDCliente=c.IDCliente\n            where {$filtro}\n            group by r.IDCliente,r.Iban,c.RazonSocial \n            having sum(r.Importe)>0\n            order by c.RazonSocial,r.Vencimiento ASC";
         $em->query($query);
         $rows = $em->fetchResult();
         echo $query;
     }
     unset($em);
     unset($clientes);
     foreach ($rows as $recibo) {
         $codclie = self::Rellena($recibo['IDCliente'], 12);
         $titular = self::Rellena($recibo['RazonSocial'], 40);
         $importe = self::Ceros(str_replace(".", "", $recibo['Importe']), 10);
         $concepto = self::Rellena("Facturas", 40);
         $reg = "5680" . self::$ordenante['Cif'] . self::$ordenante['SufijoRemesas'] . $codclie . $titular . substr($recibo['Iban'], 4, strlen($recibo['Iban'])) . $importe . self::Vacio(16) . $concepto . self::Vacio(8);
         self::Escribe(self::$fp, $reg);
         self::$nRegistrosOrdenante += 1;
         self::$totalOrdenante += $recibo['Importe'];
         self::$nDomiciliacionesOrdenante += 1;
         //Marcar los recibos con el ID de la remesa
         $filtro = str_replace("r.", "", $filtro);
         $recibos->queryUpdate(array('IDRemesa' => self::$idRemesa, 'Vencimiento' => $fCargo, 'IDEstado' => self::$parametros['idEstado']), "IDCliente='{$recibo['IDCliente']}' and {$filtro}");
     }
 }