Example #1
0
function ListaFormaDeUnidades()
{
    //Se usa esto aqui?
    //FormaListaCompraCantidades
    global $action, $tamPagina;
    $oProducto = new producto();
    $ot = getTemplate("FormaListaCompraCantidades");
    if (!$ot) {
        error(__FILE__ . __LINE__, "Info: template no encontrado");
        return false;
    }
    $ot->resetSeries(array("IdProducto", "Referencia", "Nombre", "tBorrar", "tEditar", "tSeleccion", "vUnidades"));
    //$tamPagina      = $ot->getPagina();
    $detadoc = getSesionDato("detadoc");
    $documento = getNombreDocumentoCompra($detadoc);
    $indice = getSesionDato("PaginadorSeleccionCompras2");
    $carrito = getSesionDato("CarritoCompras");
    $costescarrito = getSesionDato("CarroCostesCompra");
    $DestinoAlmacen = getSesionDato("DestinoAlmacen");
    $descuentos = getSesionDato("descuentos");
    $Moneda = getSesionDato("Moneda");
    $quitar = _("Quitar");
    $DestinoAlmacen = !$DestinoAlmacen ? getParametro("AlmacenCentral") : $DestinoAlmacen;
    $salta = 0;
    $num = 0;
    $ot->fijar("tTitulo", _("Detalle de " . $documento . ": " . count($carrito) . " productos"));
    $ot->fijar("comboAlmacenes", genComboAlmacenes($DestinoAlmacen));
    if ($carrito) {
        foreach ($carrito as $key => $value) {
            if ($num <= $tamPagina) {
                $num++;
                $cb = $oProducto->Load($key) ? $oProducto->getCB() : "";
                $nombre = $oProducto->Load($key) ? $oProducto->getDescripcion() . " " . getIdMarca2Texto($oProducto->get("IdMarca")) . " " . $oProducto->getColorTexto() . " " . $oProducto->getTallaTexto() . " " . getNombreLaboratorio($oProducto->get("IdLabHab")) : "";
                $vdescuento = isset($descuentos[$key][0]) ? $descuentos[$key][0] / $value : 0;
                $vcoste = round($costescarrito[$key] - $vdescuento, 2);
                $item = $num;
                //if($indice==10||$indice==20) $item--;
                $ot->fijarSerie("vItem", $item . ".");
                $ot->fijarSerie("vReferencia", $cb);
                $ot->fijarSerie("vNombre", $nombre);
                $ot->fijarSerie("tBorrar", $quitar);
                $ot->fijarSerie("vUnidades", $value . " " . $oProducto->getUnidadMedida());
                $ot->fijarSerie("vPrecio", $vcoste);
                $ot->fijarSerie("IdProducto", $oProducto->getId());
            }
        }
    }
    $tpfecha = 'Fecha Emisión : ';
    $tipodoc = $detadoc[0];
    $aCredito = getSesionDato("aCredito") != 'true' ? 'hidden' : '';
    $nrodoc = $detadoc[3];
    $anrodoc = explode("-", $nrodoc);
    $sdoc = $anrodoc[0];
    $ndoc = isset($anrodoc[1]) ? $anrodoc[1] : '';
    $tnrodoc = $nrodoc ? 'Nro ' . $nrodoc : '';
    $titulo = $documento . ' ' . $tnrodoc;
    $tpfecha = $detadoc[0] == 'O' ? 'Fecha Entrega : ' : $tpfecha;
    $idprov = $detadoc[1];
    $nomprov = $detadoc[2];
    $nrodoc = $detadoc[3];
    $fecdoc = $detadoc[4];
    $tipomoneda = $detadoc[5];
    $checked = $tipomoneda == 1 ? $Moneda[1]['T'] : $Moneda[2]['T'];
    $tipocambio = $detadoc[6];
    $fechacambio = $detadoc[7];
    $fechapago = $detadoc[8];
    $idsubsid = $detadoc[9];
    $nombresubsid = $detadoc[10];
    $tcp = getSesionDato("incImpuestoDet") == 'true' ? 'Precio/Unid.' : 'Costo/Unid.';
    $ot->fijar("vTDoc", $tipodoc);
    $ot->fijar("vTipoDoc", $titulo);
    $ot->fijar("vIdProvHab", $idprov);
    $ot->fijar("vProveedorHab", $nomprov);
    $ot->fijar("vNDoc", $nrodoc);
    $ot->fijar("vCP", $tcp);
    $ot->fijar("vFechaDoc", $fecdoc);
    $ot->fijar("vFechaTxDoc", $tpfecha);
    $ot->fijar("vTipoMoneda", $tipomoneda);
    $ot->fijar("vTipoMoneda2", $checked);
    $ot->fijar("vTipoCambio", $tipocambio);
    $ot->fijar("vFechaCambio", $fechacambio);
    $ot->fijar("vFechaPago", $fechapago);
    $ot->fijar("vFletadorHab", $nombresubsid);
    $ot->fijar("aCredito", $aCredito);
    $ot->paginador($indice, false, $num);
    $ot->fijar("action", $action);
    $ot->terminaSerie();
    echo $ot->Output();
}
Example #2
0
 function Alta()
 {
     global $UltimaInsercion;
     $data = $this->export();
     $evitar = array("FechaPeticion");
     $coma = false;
     $listaKeys = "";
     $listaValues = "";
     $listaocKeys = "";
     $listaocValues = "";
     $listacpKeys = "";
     $listacpValues = "";
     $listatKeys = "";
     $listatValues = "";
     foreach ($data as $key => $value) {
         if (!in_array($key, $evitar)) {
             if ($coma) {
                 $listaKeys .= ", ";
                 $listaValues .= ", ";
             }
             $listaKeys .= " {$key}";
             $value_s = CleanRealMysql($value);
             $listaValues .= " '{$value_s}'";
             $coma = true;
         }
     }
     $detadoc = getSesionDato("detadoc");
     $IGV = getSesionDato("IGV");
     $IPC = getSesionDato("IPC");
     $IdProveedor = $detadoc[1];
     $IdUsuario = getSesionDato("IdUsuario");
     $IdLocal = getSesionDato("DestinoAlmacen");
     $Moneda = getSesionDato("Moneda");
     $FechaEntrega = $detadoc[4];
     $Codigo = $detadoc[3];
     $FechaPago = $detadoc[8];
     $IdMoneda = $detadoc[5];
     $TCambio = $detadoc[6] != 0 || $detadoc[6] != '' ? $detadoc[6] : 1;
     $FTCambio = $detadoc[7];
     $Obs = $detadoc[12];
     $IdOrdenCompra = $detadoc[11];
     $ModoPago = getSesionDato("aCredito") == 'true' ? "Credito" : "Contado";
     $InclImpuesto = getSesionDato("incImpuestoDet") ? 1 : 0;
     $incIGV = getSesionDato("incImpuestoDet");
     $Comprobante = getNombreDocumentoCompra($detadoc);
     $seldoc = $detadoc[0] == "O" ? "O" : "C";
     $this->IdPedido = false;
     switch ($seldoc) {
         case "O":
             //Orden Compra
             $listaocKeys .= "  IdLocal";
             $listaocValues .= "  '" . $IdLocal . "'";
             $listaocKeys .= ",  IdMoneda";
             $listaocValues .= ",  '" . $IdMoneda . "'";
             $listaocKeys .= ", IdUsuario";
             $listaocValues .= ", '" . $IdUsuario . "'";
             $listaocKeys .= ", IdProveedor";
             $listaocValues .= ", '" . $IdProveedor . "'";
             $listaocKeys .= ", Impuesto";
             $listaocValues .= ", '" . $IGV . "'";
             $listaocKeys .= ", FechaPrevista";
             $listaocValues .= ", '" . explota($FechaEntrega) . "'";
             $listaocKeys .= ", FechaPago";
             $listaocValues .= ", '" . explota($FechaPago) . "'";
             $listaocKeys .= ", CambioMoneda";
             $listaocValues .= ", '" . $TCambio . "'";
             $listaocKeys .= ", Observaciones";
             $listaocValues .= ", '" . $Obs . "'";
             $listaocKeys .= ", FechaCambioMoneda";
             $listaocValues .= ", '" . explota($FTCambio) . "'";
             $listaocKeys .= ", ModoPago";
             $listaocValues .= ", '" . $ModoPago . "'";
             $sql = "INSERT INTO ges_ordencompra ( {$listaocKeys} ) " . "VALUES ( {$listaocValues} )";
             $res = query($sql);
             if (!$res) {
                 $this->Error(__FILE__ . __LINE__, "E: no pudo guardar pedido");
                 return false;
             }
             break;
         case "C":
             //Pedido
             $listaKeys .= ", FechaRecepcion";
             $listaValues .= ", '" . explota($FechaEntrega) . "'";
             $listaKeys .= ", FechaPeticion";
             $listaValues .= ", NOW()";
             $listaKeys .= ", IdMoneda";
             $listaValues .= ", '" . $IdMoneda . "'";
             $listaKeys .= ", IdLocal";
             $listaValues .= ", '" . $IdLocal . "'";
             $listaKeys .= ", IdOrdenCompra";
             $listaValues .= ", '" . $IdOrdenCompra . "'";
             $listaKeys .= ", CambioMoneda";
             $listaValues .= ", '" . $TCambio . "'";
             $listaKeys .= ", FechaCambioMoneda";
             $listaValues .= ", '" . explota($FTCambio) . "'";
             $listaKeys .= ", IdUsuario";
             $listaValues .= ", '" . $IdUsuario . "'";
             $listaKeys .= ", Impuesto";
             $listaValues .= ", '" . $IGV . "'";
             $listaKeys .= ", Percepcion";
             $listaValues .= ", '" . $IPC . "'";
             $listaKeys .= ", IncluyeImpuesto";
             $listaValues .= ", '" . $InclImpuesto . "'";
             $sql = "INSERT INTO ges_pedidos ( {$listaKeys} ) " . "VALUES ( {$listaValues} )";
             $res = query($sql);
             if (!$res) {
                 $this->Error(__FILE__ . __LINE__, "E: no pudo guardar pedido");
                 return false;
             }
             break;
     }
     $this->IdPedido = $UltimaInsercion;
     $IdPedido = $this->IdPedido;
     $Importe = 0;
     //Comprobante
     if ($detadoc[0] != "O") {
         $codigodoc = $detadoc[0] == 'SD' ? $IdLocal . '-' . $UltimaInsercion : $detadoc[3];
         $listacpKeys .= " IdUsuario";
         $listacpValues .= "'" . $IdUsuario . "'";
         $listacpKeys .= ",IdProveedor";
         $listacpValues .= ",'" . $IdProveedor . "'";
         $listacpKeys .= ",ModoPago";
         $listacpValues .= ",'" . $ModoPago . "'";
         $listacpKeys .= ",TipoComprobante";
         $listacpValues .= ",'" . $Comprobante . "'";
         $listacpKeys .= ",Codigo";
         $listacpValues .= ",'" . $codigodoc . "'";
         $listacpKeys .= ",FechaRegistro";
         $listacpValues .= ", NOW()";
         $listacpKeys .= ",FechaFacturacion";
         $listacpValues .= ",'" . explota($FechaEntrega) . "'";
         $listacpKeys .= ",FechaPago";
         $listacpValues .= ",'" . explota($FechaPago) . "'";
         $listacpKeys .= ",IdPedido";
         $listacpValues .= ",'" . $IdPedido . "'";
         $listacpKeys .= ",IdPedidosDetalle";
         $listacpValues .= ",'" . $IdPedido . "'";
         $sql = "insert into " . "ges_comprobantesprov ( " . $listacpKeys . " ) " . "values ( " . $listacpValues . " )";
         $res = query($sql);
         if (!$res) {
             $this->Error(__FILE__ . __LINE__, "E: no pudo guardar pedido");
             return false;
         }
     }
     //Detalle
     foreach ($this->filas as $id => $unidades) {
         $preciounidad = $this->filascoste[$id];
         $Importe += $unidades * $preciounidad;
         $this->AltaFilaPedido($id, $unidades, $this->IdPedido, $preciounidad);
     }
     //Orden Compra Importes
     if ($detadoc[0] == "O") {
         //Importe Total
         $Importe = round($Importe * 100) / 100;
         //Elimina una vercion anterior, si existe?
         $esCodOC = $IdOrdenCompra ? query("update ges_ordencompra " . "set Eliminado=1 " . "where IdOrdenCompra =" . $IdOrdenCompra) : false;
         //Codigo Orden Compra
         $CodOC = $esCodOC ? $detadoc[3] : $IdLocal . $IdPedido;
         //Actualiza Importe
         $aset = "update ges_ordencompra ";
         $setval = "set Importe='" . $Importe . "', CodOrdenCompra=" . $CodOC . " ";
         $where = "where  IdOrdenCompra ='" . $IdPedido . "'";
         query($aset . $setval . $where);
     }
     //Orden Compra Estado "Recibido"
     if ($IdOrdenCompra && $detadoc[0] != "O") {
         query("update ges_ordencompra " . "set Estado='Recibido', " . "FechaRecibido = NOW() " . "where IdOrdenCompra =" . $IdOrdenCompra);
     }
     //Termina proceso
     return $this->IdPedido;
 }