Пример #1
0
 public function PedidosCab()
 {
     $nItems = 0;
     $nErrores = 0;
     $dbLink = mysql_connect("localhost", "root", "albatronic");
     $query = "TRUNCATE {$this->dbDestino}.ErpPedidosCab";
     mysql_query($query);
     $query = "select distinct IDPedido,IDFactura from {$this->dbOrigen}.frecibidas_lineas";
     $result = mysql_query($query, $dbLink);
     while ($row1 = mysql_fetch_array($result, MYSQL_ASSOC)) {
         $correspondencia[$row1['IDPedido']] = $row1['IDFactura'];
     }
     $query = "select * from {$this->dbOrigen}.pedidos_cab";
     $result = mysql_query($query, $dbLink);
     while ($row = mysql_fetch_array($result, MYSQL_ASSOC)) {
         $c = new PedidosCab();
         $c->setIDPedido($row['IDPedido']);
         $c->setIDSucursal(1);
         $c->setIDAlmacen(1);
         $c->setIDAgente(2);
         $c->setSuPedido($row['SuPedido']);
         $c->setFecha($row['Fecha']);
         $c->setFechaEntrega($row['FechaEntrega']);
         $c->setFechaEntrada($row['FechaEntrada']);
         $c->setIDProveedor($row['IDProveedor']);
         $c->setImporte($row['Importe']);
         $c->setDescuento($row['Descuento']);
         $c->setBaseImponible1($row['BaseImponible1']);
         $c->setIva1($row['Iva1']);
         $c->setCuotaIva1($row['CuotaIva1']);
         $c->setRecargo1($row['Recargo1']);
         $c->setCuotaRecargo1($row['CuotaRecargo1']);
         $c->setBaseImponible2($row['BaseImponible2']);
         $c->setIva2($row['Iva2']);
         $c->setCuotaIva2($row['CuotaIva2']);
         $c->setRecargo2($row['Recargo2']);
         $c->setCuotaRecargo2($row['CuotaRecargo2']);
         $c->setBaseImponible3($row['BaseImponible3']);
         $c->setIva3($row['Iva3']);
         $c->setCuotaIva3($row['CuotaIva3']);
         $c->setRecargo3($row['Recargo3']);
         $c->setCuotaRecargo3($row['CuotaRecargo3']);
         $c->setTotalBases($row['TotalBases']);
         $c->setTotalIva($row['TotalIva']);
         $c->setTotalRecargo($row['TotalRecargo']);
         $c->setTotal($row['Total']);
         $c->setObservaciones($row['Observaciones']);
         $c->setIDFP($row['IDFP']);
         $c->setIDAgencia(1);
         if ($row['Recepcionado'] == 'S') {
             $c->setIDEstado(2);
             $c->setIDFactura(isset($correspondencia[$row['IDPedido']]) ? $correspondencia[$row['IDPedido']] : 0);
         } else {
             $c->setIDEstado(0);
             $c->setIDFactura(0);
         }
         $c->setPrimaryKeyMD5(md5($row['IDPedido']));
         if (!$c->create()) {
             $errores[] = $c->getErrores();
             $nErrores++;
         } else {
             $nItems++;
         }
     }
     //mysql_close($dbLink);
     echo "Pedidos creados {$nItems}<br/>";
     if (count($errores)) {
         echo "<pre>";
         print_r($errores);
         echo "</pre>";
     }
 }
 /**
  * Crea un registro nuevo en la entidad correspondiente
  * y su correspondiente registro en las líneas de recepción
  * 
  * @return array con el template y valores a renderizar
  */
 public function newAction()
 {
     switch ($this->request["entidad"]) {
         //CREAR UNA LINEA DE PEDIDO NUEVA Y SU CORRESPONDIENTE LINEA DE RECEPCION
         case 'PedidosCab':
             $pedido = new PedidosCab($this->request['idEntidad']);
             $lineaPedido = new PedidosLineas();
             $lineaPedido->setIDPedido($this->request['idEntidad']);
             $lineaPedido->setIDArticulo($this->request['idArticulo']);
             $lineaPedido->setDescripcion($this->request['Descripcion']);
             $lineaPedido->setUnidades(0);
             $lineaPedido->setIDEstado(1);
             $lineaPedido->setIDAgente($_SESSION['usuarioPortal']['Id']);
             $lineaPedido->setIDAlmacen($pedido->getIDAlmacen()->getIDAlmacen());
             if ($lineaPedido->valida()) {
                 if ($lineaPedido->create()) {
                     $this->creaLineaRecepcion($this->request['entidad'], $this->request['idEntidad'], $lineaPedido);
                     $pedido->setIDAlmacen($pedido->getIDAlmacen()->getIDAlmacen());
                     $pedido->setIncidencias($pedido->getIncidencias() . "\nFuera de pedido: " . $lineaPedido->getDescripcion());
                     $pedido->save();
                 }
             }
             $this->values['errores'] = $lineaPedido->getErrores();
             unset($pedido);
             unset($lineaPedido);
             break;
             //CREAR UNA LINEA DE PEDIDO NUEVA Y SU CORRESPONDIENTE LINEA DE RECEPCION
         //CREAR UNA LINEA DE PEDIDO NUEVA Y SU CORRESPONDIENTE LINEA DE RECEPCION
         case 'ManufacCab':
             $manufac = new ManufacCab($this->request['idEntidad']);
             $lineaManufac = new ManufacLineas();
             $lineaManufac->setIDManufac($this->request['idEntidad']);
             $lineaManufac->setTipo(1);
             $lineaManufac->setIDArticulo($this->request['idArticulo']);
             $lineaManufac->setDescripcion($this->request['Descripcion']);
             $lineaManufac->setUnidades(1);
             $lineaManufac->setIDEstado(0);
             $lineaManufac->setIDAlmacen($manufac->getIDAlmacenDestino()->getIDAlmacen());
             if ($lineaManufac->valida()) {
                 if ($lineaManufac->create()) {
                     $this->creaLineaRecepcion($this->request['entidad'], $this->request['idEntidad'], $lineaManufac);
                     $manufac->setIDAlmacenDestino($manufac->getIDAlmacenDestino()->getIDAlmacen());
                     $manufac->setIncidencias($manufac->getIncidencias() . "\nFuera de pedido: " . $lineaManufac->getDescripcion());
                     $manufac->save();
                 }
             }
             $this->values['errores'] = $lineaManufac->getErrores();
             unset($manufac);
             unset($lineaManufac);
             break;
             //CREAR UNA LINEA DE TRASPASO NUEVA Y SU CORRESPONDIENTE LINEA DE RECEPCION
         //CREAR UNA LINEA DE TRASPASO NUEVA Y SU CORRESPONDIENTE LINEA DE RECEPCION
         case 'TraspasosCab':
             $traspaso = new TraspasosCab($this->request['idEntidad']);
             $lineaTraspaso = new TraspasosLineas();
             $lineaTraspaso->setIDTraspaso($this->request['idEntidad']);
             $lineaTraspaso->setTipo(1);
             $lineaTraspaso->setIDArticulo($this->request['idArticulo']);
             $lineaTraspaso->setDescripcion($this->request['Descripcion']);
             $lineaTraspaso->setUnidades(1);
             $lineaTraspaso->setIDEstado(0);
             $lineaTraspaso->setIDAlmacen($traspaso->getIDAlmacenDestino()->getIDAlmacen());
             if ($lineaTraspaso->valida()) {
                 if ($lineaTraspaso->create()) {
                     $this->creaLineaRecepcion($this->request['entidad'], $this->request['idEntidad'], $lineaTraspaso);
                     $traspaso->setIDAlmacenDestino($traspaso->getIDAlmacenDestino()->getIDAlmacen());
                     $traspaso->setIncidencias($traspaso->getIncidencias() . "\nFuera de traspaso: " . $lineaTraspaso->getDescripcion());
                     $traspaso->save();
                 }
             }
             $this->values['errores'] = $lineaTraspaso->getErrores();
             unset($traspaso);
             unset($lineaTraspaso);
             break;
     }
     return $this->listAction($this->request['entidad'], $this->request['idEntidad']);
 }