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']); }