Esempio n. 1
0
function ListaFormaDeUnidades()
{
    //FormaListaCompraCantidades
    global $action;
    $oProducto = new producto();
    $ot = getTemplate("PopupCarritoCompra");
    if (!$ot) {
        error(__FILE__ . __LINE__, "Info: template no encontrado");
        return false;
    }
    $ot->resetSeries(array("IdProducto", "Referencia", "Nombre", "tBorrar", "tEditar", "tSeleccion", "vUnidades"));
    $tamPagina = $ot->getPagina();
    $indice = getSesionDato("PaginadorSeleccionCompras2");
    $carrito = getSesionDato("CarritoMover");
    //echo q($carrito,"Carrito Cantidades");
    $costescarrito = getSesionDato("CarroCostesMover");
    $quitar = _("Quitar");
    $ot->fijar("tTitulo", _("Carrito para Traslado"));
    //$ot->fijar("comboAlmacenes",getSesionDato("ComboAlmacenes"));
    $ot->fijar("comboAlmacenes", genComboAlmacenes(getParametro("AlmacenCentral")));
    $salta = 0;
    $num = 0;
    foreach ($carrito as $key => $value) {
        $salta++;
        if ($num <= $tamPagina and $salta >= $indice) {
            $num++;
            if ($oProducto->Load($key)) {
                $referencia = $oProducto->getReferencia();
                $nombre = $oProducto->getNombre();
            } else {
                $referencia = "";
                $nombre = "";
            }
            $ot->fijarSerie("vReferencia", $referencia);
            $ot->fijarSerie("vNombre", $nombre);
            $ot->fijarSerie("tBorrar", $quitar);
            $ot->fijarSerie("vUnidades", $value);
            $ot->fijarSerie("vPrecio", $costescarrito[$key]);
            $ot->fijarSerie("IdProducto", $oProducto->getId());
        }
    }
    if (!$salta) {
        $ot->fijar("aviso", gas("aviso", _("Carrito vacío")));
        $ot->eliminaSeccion("haydatos");
    } else {
        $ot->fijar("aviso");
        $ot->confirmaSeccion("haydatos");
    }
    $ot->paginador($indice, false, $num);
    $ot->fijar("action", $action);
    $ot->terminaSerie();
    echo $ot->Output();
}
Esempio n. 2
0
function MostrarAlbaran($id)
{
    global $action;
    $id = CleanID($id);
    $albaran = new albaran();
    $albaran->Load($id);
    $ot = getTemplate("ModeloAlbaran");
    if (!$ot) {
        error(__FILE__ . __LINE__, "Info: template busqueda no encontrado");
        return false;
    }
    //<tr><td>G18196 - BERMDAS.F.SKATE.KAPPA;AC</td><td>1</td></tr>
    //$this->userLog .= "<tr><td>". $referencia . " - " . $nombre . "</td><td>". $unid . "</td></tr>";
    //	$sql = "INSERT INTO ges_albtraspaso_det (IdAlbaranTraspaso,IdProducto,Unidades)
    //			VALUES ('$IdAlbaran','$IdProducto','$Unidades')";
    $detallesString = "";
    $prod = new producto();
    $sql = "SELECT * FROM ges_albtraspaso_det WHERE IdAlbaranTraspaso={$id} ORDER BY IdDetalle ASC";
    $res = query($sql, "Listando detalles de un albaran");
    while ($row = Row($res)) {
        $IdProducto = $row["IdProducto"];
        $prod->Load($IdProducto);
        $nombre_s = CleanParaWeb($prod->getNombre());
        $referencia_s = CleanParaWeb($prod->get("Referencia"));
        $unid = $row["Unidades"];
        $detallesString .= "<tr><td>" . $referencia_s . " - " . $nombre_s . "</td><td>" . $unid . "</td></tr>";
    }
    $comercio = $_SESSION["GlobalNombreNegocio"];
    $local = new local();
    $local->Load($albaran->get("IdAlmacenSalida"));
    $nombreorigen = CleanParaWeb($local->getNombre());
    $localdestino = new local();
    $localdestino->Load($albaran->get("IdAlmacenRecepcion"));
    $nombredestino = CleanParaWeb($localdestino->getNombre());
    $FechaSalida = CleanFechaFromDB($albaran->get("FechaSalida"));
    $ot->fijar("FECHA", $FechaSalida);
    $ot->fijar("LINEAS", $detallesString);
    $ot->fijar("NOMBRECOMERCIO", CleanParaWeb($comercio));
    $ot->fijar("NUMEROALBARAN", $id);
    $ot->fijar("DESDETIENDA", $nombreorigen);
    $ot->fijar("HASTATIENDA", $nombredestino);
    echo $ot->Output();
}
Esempio n. 3
0
 function TrasladoBrutal($Motivo)
 {
     $IdComprobante = $this->_IdComprobante;
     $IdPedido = $this->_IdPedido;
     $linea = 0;
     $totalimporte = 0;
     $Origen = $this->_origen;
     $Destino = $this->_destino;
     $igv = getSesionDato("IGV");
     $marcadotrans = getSesionDato("CarritoTrans");
     $Trans = getSesionDato("CarritoMover");
     $aSeries = getSesionDato("CarritoMoverSeries");
     $almacenes = new almacenes();
     $articulo = new articulo();
     foreach ($marcadotrans as $idarticulo) {
         $oProducto = new producto();
         $articulo->Load($idarticulo);
         $oProducto->Load($articulo->get("IdProducto"));
         $cantidad = 0;
         $idproducto = $articulo->get("IdProducto");
         $precio = round($Trans['Precio' . $idarticulo], 2);
         $costo = round($Trans['Costo' . $idarticulo], 2);
         $mSeleccion = $Trans[$idarticulo];
         $aSeleccion = explode("~", $mSeleccion);
         $esSerie = $aSeries[$idarticulo] ? true : false;
         foreach ($aSeleccion as $Pedido) {
             $aPedido = explode(":", $Pedido);
             $IdPedidoDet = $aPedido[0];
             //Kardex
             $cantidad = $aPedido[1];
             $LoteVence = isset($aPedido[3]) ? $aPedido[3] : 0;
             $totalimporte += $precio * $cantidad;
             $existencias = $almacenes->obtenerExistenciasKardex($idproducto, $Origen);
             //Control
             if ($existencias < $cantidad) {
                 return;
             }
             //Ventas
             $IdComprobanteDet = registrarDetalleTrasladoSalida($idproducto, $cantidad, $costo, $precio, $IdComprobante, $IdPedidoDet, $esSerie, $LoteVence);
             //Compras
             $nwIdPedidoDet = registrarDetalleTrasladoEntrada($IdPedido, $idproducto, $LoteVence, $cantidad, $costo, $precio, $esSerie);
             //Numeros de Series
             registrarTrasladoSeries($Origen, $Destino, $IdPedido, $nwIdPedidoDet, $IdPedidoDet, $idarticulo, $idproducto, $IdComprobante);
             //Kardex
             registrarTrasladoKardexFifo($Origen, $idproducto, $IdPedidoDet, $IdComprobanteDet, $costo, $cantidad, $existencias, $Motivo);
             //Kadex costo almacen
             $almacenes->actualizarCosto($idproducto, $Origen);
             //Kadex resumen almacen
             actualizaResumenKardex($idproducto, $Origen);
         }
     }
     //Importes Compras & Ventas
     registrarImportesTraslado($totalimporte, $IdComprobante, $IdPedido, $Motivo);
 }
Esempio n. 4
0
function getDatosProductosExtra($id, $extra = false)
{
    $oPd = new producto();
    $oPd->Load($id);
    switch ($extra) {
        case "nombre":
            return $oPd->get("Descripcion") . " " . getIdMarca2Texto($oPd->get("IdMarca")) . " " . getIdColor2Texto($oPd->get("IdColor")) . " " . getIdTalla2Texto($oPd->get("IdTalla")) . " " . getNombreLaboratorio($oPd->get("IdLabHab"));
            break;
        case "nombreref":
            return $oPd->get("Referencia") . " " . $oPd->get("Descripcion") . " " . getIdMarca2Texto($oPd->get("IdMarca")) . " " . getIdColor2Texto($oPd->get("IdColor")) . " " . getIdTalla2Texto($oPd->get("IdTalla")) . " " . getNombreLaboratorio($oPd->get("IdLabHab"));
            break;
        case "prodbaseref":
            return $oPd->get("Referencia") . " " . $oPd->get("Descripcion") . " " . getIdMarca2Texto($oPd->get("IdMarca")) . " " . getNombreLaboratorio($oPd->get("IdLabHab"));
            break;
        case "nombrecb":
            return $oPd->get("CodigoBarras") . " " . $oPd->get("Descripcion") . " " . getIdMarca2Texto($oPd->get("IdMarca")) . " " . getIdColor2Texto($oPd->get("IdColor")) . " " . getIdTalla2Texto($oPd->get("IdTalla")) . " " . getNombreLaboratorio($oPd->get("IdLabHab"));
            break;
        case "id":
            $arreglo = array();
            $arreglo["Referencia"] = $oPd->get("Referencia");
            $arreglo["CodigoBarras"] = $oPd->get("CodigoBarras");
            $arreglo["IdTalla"] = $oPd->get("IdTalla");
            $arreglo["IdMarca"] = $oPd->get("IdMarca");
            $arreglo["IdColor"] = $oPd->get("IdColor");
            $arreglo["IdLabHab"] = $oPd->get("IdLabHab");
            $arreglo["Serie"] = $oPd->get("Serie");
            $arreglo["Lote"] = $oPd->get("Lote");
            $arreglo["Vence"] = $oPd->get("FechaVencimiento");
            return $arreglo;
            break;
        case 'todos':
            $arreglo = array();
            $Servicio = $oPd->get("Servicio") > 0 ? 1 : 0;
            array_push($arreglo, $oPd->get("VentaMenudeo"));
            array_push($arreglo, $oPd->get("UnidadesPorContenedor"));
            array_push($arreglo, $oPd->get("UnidadMedida"));
            array_push($arreglo, $oPd->getContenedor("Contenedor"));
            array_push($arreglo, $oPd->get("Costo"));
            array_push($arreglo, $oPd->get("Serie"));
            array_push($arreglo, $oPd->get("Lote"));
            array_push($arreglo, $oPd->get("FechaVencimiento"));
            array_push($arreglo, $oPd->get("MetaProducto"));
            array_push($arreglo, $Servicio);
            return $arreglo;
            break;
        case 'nombretodos':
            $nombre = $oPd->get("CodigoBarras") . " " . $oPd->get("Descripcion") . " " . getIdMarca2Texto($oPd->get("IdMarca")) . " " . getIdColor2Texto($oPd->get("IdColor")) . " " . getIdTalla2Texto($oPd->get("IdTalla")) . " " . getNombreLaboratorio($oPd->get("IdLabHab"));
            $arreglo = array();
            $arreglo["Nombre"] = $nombre;
            $arreglo["Menudeo"] = $oPd->get("VentaMenudeo");
            $arreglo["UndxEmp"] = $oPd->get("UnidadesPorContenedor");
            $arreglo["Und"] = $oPd->get("UnidadMedida");
            $arreglo["Empaque"] = $oPd->getContenedor("Contenedor");
            $arreglo["Costo"] = $oPd->get("Costo");
            $arreglo["Serie"] = $oPd->get("Serie");
            $arreglo["Lote"] = $oPd->get("Lote");
            $arreglo["Vence"] = $oPd->get("FechaVencimiento");
            $arreglo["Meta"] = $oPd->get("MetaProducto");
            $arreglo["Servicio"] = $oPd->get("Servicio") > 0 ? 1 : 0;
            return $arreglo;
            break;
    }
}
Esempio n. 5
0
function FormularioEditarArticulo($id)
{
    global $action;
    $ot = getTemplate("FormEditarArticulo");
    if (!$ot) {
        error(__FILE__ . __LINE__, "Error: template busqueda no encontrado");
        return false;
    }
    $articulo = new articulo();
    $oProducto = new producto();
    if (!$articulo->Load($id)) {
        error(__FILE__ . __LINE__, "Error: no puedo modificar ese producto");
        return false;
    }
    $oProducto->Load($articulo->get("IdProducto"));
    $igv = getSesionDato("IGV");
    $local = $_SESSION["LocalMostrado"];
    $idProducto = $articulo->get("Id");
    $CostoUnitario = $articulo->get("CostoUnitario");
    $PVD = $articulo->get("PrecioVenta");
    $PVDD = $articulo->get("PVDDescontado");
    $IGVD = round($PVD / (1 + $igv / 100) * ($igv / 100) * 100) / 100;
    $MUD = round(($PVD - $IGVD - $CostoUnitario) * 100) / 100;
    $PVC = $articulo->get("PrecioVentaCorporativo");
    $PVCD = $articulo->get("PVCDescontado");
    $IGVC = round($PVC / (1 + $igv / 100) * ($igv / 100) * 100) / 100;
    $MUC = round(($PVC - $IGVC - $CostoUnitario) * 100) / 100;
    $disponible = $articulo->is("Disponible") ? "checked" : "";
    $dispOnline = $articulo->is("DisponibleOnline") ? "checked" : "";
    $obsoleto = $oProducto->get("Obsoleto") ? "checked" : "";
    $esLote = $oProducto->get("Lote");
    $esVence = $oProducto->get("FechaVencimiento");
    $esSerie = $oProducto->get("Serie");
    $oferta = $articulo->is("Oferta") ? "checked" : "";
    $stockilimitado = $articulo->is("StockIlimitado") ? "checked" : "";
    $esIlimitado = $esSerie ? 'none' : 'table-row';
    $esIlimitado = $esLote ? 'none' : $esIlimitado;
    $esIlimitado = $esVence ? 'none' : $esIlimitado;
    $existencias = $articulo->get("Unidades");
    $stockunidades = $existencias;
    $producto = getDatosProductosExtra($articulo->get("IdProducto"), 'nombretodos');
    $nombre = $producto["Nombre"];
    $esMenudeo = $producto["Menudeo"];
    $unidad = $producto["Und"];
    $unidxemp = $producto["UndxEmp"];
    $empaque = $producto["Empaque"];
    $resmenudeo = $esMenudeo ? "  ( " . $stockunidades . " " . $unidad . " a " . $unidxemp . $unidad . "x" . $empaque . " )" : "";
    $disponibleunid = $articulo->get("DisponibleUnidades");
    $reservadaunid = $disponibleunid > 0 ? $existencias - $disponibleunid : 0;
    $resto = $esMenudeo ? $existencias % $unidxemp : 0;
    $empaques = $esMenudeo ? ($existencias - $resto) / $unidxemp : 0;
    $existencias = $esMenudeo ? $empaques . " " . $empaque . " + " . $resto : $existencias;
    $disponibleunid = $disponibleunid > 0 ? $disponibleunid : $stockunidades;
    $txtMoDet = getModeloDetalle2txt();
    $txtModelo = $txtMoDet[1];
    $txtDetalle = $txtMoDet[2];
    $txtalias = $txtMoDet[3];
    $txtref = $txtMoDet[4];
    $ot->fijar("tTituloAux", _("Otras tiendas"));
    $ot->fijar("tIgualar", _("Todas las tiendas el mismo precio"));
    $ot->fijar("tMotivo", _("Motivo mod. existencias"));
    $ot->fijar("tTitulo", _("Modificar existencias"));
    $ot->fijar("vRefProvHab", $articulo->get("RefProvHab"));
    $ot->fijar("tRefProvHab", $txtref);
    $ot->fijar("vPresentacion", $oProducto->getTextColor());
    $ot->fijar("tPresentacion", $txtModelo);
    $ot->fijar("vProductoAlias0", getIdProductoAlias2Texto($articulo->get("IdProductoAlias0")));
    $ot->fijar("tProductoAlias0", $txtalias);
    $ot->fijar("vProductoAlias1", getIdProductoAlias2Texto($articulo->get("IdProductoAlias1")));
    $ot->fijar("tProductoAlias1", $txtalias);
    $ot->fijar("vSubPresentacion", $oProducto->getTextTalla());
    $ot->fijar("tSubPresentacion", $txtDetalle);
    $ot->fijar("vReferencia", $articulo->get("Referencia"));
    $ot->fijar("tReferencia", _("Referencia"));
    $ot->fijar("vDescripcion", $nombre);
    $ot->fijar("tDescripcion", _("Nombre"));
    $ot->fijar("vUnidades", $existencias);
    $ot->fijar("tUnidades", _("Stock"));
    $ot->fijar("mUnidad", $resmenudeo);
    $ot->fijar("vIGV", $igv);
    $ot->fijar("tIGV", "IGV");
    $ot->fijar("vCostoUnitario", round($articulo->get("CostoUnitario") * 100) / 100);
    $ot->fijar("tCostoUnitario", _("CU"));
    $ot->fijar("vCostoUnitarioC", round($articulo->get("CostoUnitario") * 100) / 100);
    $ot->fijar("tCostoUnitarioC", _("CU"));
    $ot->fijar("vMUD", $MUD);
    $ot->fijar("tMUD", _("MU"));
    $ot->fijar("vIGVD", $IGVD);
    $ot->fijar("tIGVD", _("IGV"));
    $ot->fijar("vPVD", $PVD);
    $ot->fijar("tPVD", _("PVP"));
    $ot->fijar("vPVDD", $PVDD);
    $ot->fijar("tPVDD", _("PVPD"));
    $ot->fijar("vMUC", $MUC);
    $ot->fijar("tMUC", _("MU"));
    $ot->fijar("vIGVC", $IGVC);
    $ot->fijar("tIGVC", _("IGV"));
    $ot->fijar("vPVC", $PVC);
    $ot->fijar("tPVC", _("PVC"));
    $ot->fijar("vPVCD", $PVCD);
    $ot->fijar("tPVCD", _("PVCD"));
    $ot->fijar("tTipoImpuesto", _("Impuesto"));
    $ot->fijar("vTipoImpuesto", $articulo->get("TipoImpuesto"));
    $ot->fijar("vImpuesto", $articulo->get("Impuesto"));
    $ot->fijar("vStockMin", $articulo->get("StockMin"));
    $ot->fijar("vStockUnidades", $stockunidades);
    $ot->fijar("tOfertaUnidades", _("Unidades en Oferta "));
    $ot->fijar("vOfertaUnidades", $articulo->get("OfertaUnidades"));
    $ot->fijar("tPrecioVentaOferta", _("Precio de Oferta"));
    $ot->fijar("vPrecioVentaOferta", $articulo->get("PrecioVentaOferta"));
    $ot->fijar("tDisponibleUnidades", _("Unidades Disponibles"));
    $ot->fijar("vDisponibleUnidades", $disponibleunid);
    $ot->fijar("tUnidad", $unidad);
    $ot->fijar("tUnidadesReservadas", _("Unidades Reservadas"));
    $ot->fijar("vUnidadesReservadas", $reservadaunid);
    $ot->fijar("cDisponible", $disponible);
    $ot->fijar("cDisponibleOnline", $dispOnline);
    $ot->fijar("cOferta", $oferta);
    $ot->fijar("cStockIlimitado", $stockilimitado);
    $ot->fijar("esStockIlimitado", $esIlimitado);
    $ot->fijar("tDisponible", _("Disponible"));
    $ot->fijar("tDisponibleOnline", _("Disponible Online"));
    $ot->fijar("tObsoleto", _("Obsoleto"));
    $ot->fijar("cObsoleto", $obsoleto);
    $ot->fijar("tOferta", _("En oferta"));
    $ot->fijar("tStockIlimitado", _("Stock ilimitado"));
    $ot->fijar("tStockMin", _("Stock minimo"));
    $ot->fijar("action", $action);
    $ot->fijar("vId", $articulo->get("Id"));
    echo $ot->Output();
}
Esempio n. 6
0
function ordenarPedidosDet4Vencimiento($resumen, $id, $idlocal)
{
    $oProducto = new producto();
    if (!$oProducto->Load($id)) {
        return $resumen;
    }
    //Existe el Producto
    if (!$oProducto->get("FechaVencimiento")) {
        return $resumen;
    }
    //Meneja Vencimiento?
    //Obtiene resumen por fecha
    $Vence = getPedidoDet2Kardex('VenceResumen', $resumen, $id, $idlocal);
    //~pedidodet:fecha
    $aResumen = explode("~", $resumen);
    $aVence = explode("~", $Vence);
    $Fechas = array();
    $nResumen = array();
    //Resumen ordenado por fecha
    foreach ($aVence as $pFecha) {
        $aFecha = explode(":", $pFecha);
        if (isset($aFecha[1])) {
            array_push($Fechas, strtotime($aFecha[1]));
        }
    }
    $Fechas = search_merge_sort($Fechas);
    //Resumen fechas ordenadas
    foreach ($Fechas as $Fecha) {
        //Get IdPedido de Resumen fechas desordenadas
        foreach ($aVence as $pFecha) {
            $aFecha = explode(":", $pFecha);
            if (!isset($aFecha[1])) {
                break;
            }
            if ($Fecha == strtotime($aFecha[1])) {
                //Push Resumen Kardex
                foreach ($aResumen as $pPedido) {
                    $aPedido = explode(":", $pPedido);
                    if ($aPedido[0] == $aFecha[0]) {
                        if (!in_array($pPedido, $nResumen)) {
                            array_push($nResumen, $pPedido);
                        }
                        break;
                    }
                }
            }
        }
    }
    //Resumen ordenado por vencimiento
    $resumen = implode("~", $nResumen);
    return $resumen;
}
Esempio n. 7
0
function ClonarProducto($id, $idcolor, $idtalla, $referencia = false, $codigobarras, $refprovhab, $coste, $precioventa, $ventamenudeo, $unidadesxcontenedor, $unidadmedida, $idcontenedor, $referencia, $idalias0, $idalias1, $condventa)
{
    global $action;
    $oProducto = new producto();
    if (!$oProducto->Load($id)) {
        error(__FILE__ . __LINE__, "W: no pudo mostrareditar '{$id}'");
        return false;
    }
    $oProducto->set("IdColor", $idcolor, FORCE);
    $oProducto->set("IdTalla", $idtalla, FORCE);
    $oProducto->set("Referencia", $referencia, FORCE);
    $oProducto->set("CodigoBarras", $codigobarras, FORCE);
    $oProducto->set("RefProvHab", $refprovhab, FORCE);
    $oProducto->set("Costo", $coste, FORCE);
    $oProducto->setPrecioVenta($precioventa);
    $oProducto->set("IdContenedor", $idcontenedor, FORCE);
    $oProducto->set("UnidadMedida", $unidadmedida, FORCE);
    $oProducto->set("VentaMenudeo", $ventamenudeo, FORCE);
    $oProducto->set("CondicionVenta", $condventa, FORCE);
    $oProducto->set("UnidadesPorContenedor", $unidadesxcontenedor, FORCE);
    $oProducto->set("IdProductoAlias0", $idalias0, FORCE);
    $oProducto->set("IdProductoAlias1", $idalias1, FORCE);
    //setSesionDato("ClonProd",var_export($oProducto,true));
    if ($oProducto->Clon()) {
        $alm = getSesionDato("Almacen");
        $alm->ApilaProductoTodos($oProducto);
        return true;
    } else {
        echo gas("aviso", _("No se pudo realizar la copia. <br/> - Reintente con diferentes caracteristicas Modelo ó Detalle -"));
        $oProducto->regeneraCB();
        echo $oProducto->formClon($action, true);
    }
    return false;
}
Esempio n. 8
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();
}
Esempio n. 9
0
function agnadirxdtCarritoCompras($id)
{
    $oPd = new producto();
    $oPd->Load($id);
    actualizaxdtCarritoCompras($id, 'prod', getDatosProductosExtra($id, 'nombrecb'));
    if ($oPd->get("Lote")) {
        actualizaxdtCarritoCompras($id, 'lt', false);
    }
    if ($oPd->get("FechaVencimiento")) {
        actualizaxdtCarritoCompras($id, 'fv', false);
    }
    if ($oPd->get("Serie")) {
        actualizaxdtCarritoCompras($id, 'ns', false);
    }
}
Esempio n. 10
0
function ListaFormaDeUnidades()
{
    //FormaListaCompraCantidades
    global $action;
    $jsOut = "";
    $idprodseriebuy = getSesionDato("idprodseriebuy");
    $seriesbuy = getSesionDato("seriesbuy");
    $Moneda = getSesionDato("Moneda");
    setSesionDato("idprodseriecart", $idprodseriebuy);
    setSesionDato("seriescart", $seriesbuy);
    $oProducto = new producto();
    $ot = getTemplate("PopupCarritoCompra");
    if (!$ot) {
        error(__FILE__ . __LINE__, "Info: template no encontrado");
        return false;
    }
    $ot->resetSeries(array("IdProducto", "Referencia", "Nombre", "tBorrar", "tEditar", "tSeleccion", "vUnidades", "vTalla", "vColor", "Serie"));
    $tamPagina = $ot->getPagina();
    $indice = getSesionDato("PaginadorSeleccionCompras2");
    $carrito = getSesionDato("CarritoCompras");
    //echo q($carrito,"Carrito Cantidades");
    $costescarrito = getSesionDato("CarroCostesCompra");
    $descuentos = getSesionDato("descuentos");
    $quitar = _("Quitar");
    $ot->fijar("tTitulo", _("Carrito de compra"));
    $ot->fijar("comboAlmacenes", getSesionDato("ComboAlmacenes"));
    $ot->fijar("comboAlmacenes", genComboAlmacenes(getParametro("AlmacenCentral")));
    $salta = 0;
    $num = 0;
    $detadoc = getSesionDato("detadoc");
    $incImpuestoDet = getSesionDato("incImpuestoDet");
    $incPercepcion = getSesionDato("incPercepcion");
    $igv = getSesionDato("IGV");
    $ipc = getSesionDato("IPC");
    $TotalNeto = 0;
    $TotalBruto = 0;
    $ImporteFlete = $detadoc[13];
    $ImportePercepcion = $detadoc[14];
    $ImportePago = 0;
    $TotalDescuento = 0;
    $BrutoNeto = 0;
    $TotalImpuesto = 0;
    if ($carrito) {
        foreach ($carrito as $key => $value) {
            $TotalBruto = $TotalBruto + $costescarrito[$key] * $value;
            //$costescarrito[$key];
            $dscto = isset($descuentos[$key][0]) ? $descuentos[$key][0] : 0;
            $TotalDescuento = $TotalDescuento + $dscto;
            $BrutoNeto = $BrutoNeto + $descuentos[$key][1];
        }
        $TotalImpuesto = $BrutoNeto * $igv / 100;
        $TotalNeto = $incImpuestoDet == "true" ? $BrutoNeto : $BrutoNeto + $TotalImpuesto;
        $BrutoNeto = $incImpuestoDet == "true" ? $TotalNeto / ($igv / 100 + 1) : $BrutoNeto;
        $TotalBruto = $incImpuestoDet == "true" ? $TotalBruto / ($igv / 100 + 1) : $TotalBruto;
        $TotalImpuesto = $BrutoNeto * $igv / 100;
        $TotalImpuesto = round($TotalImpuesto * 100) / 100;
        $TotalDescuento = $TotalBruto - $BrutoNeto;
        $ImportePercepcion = $incPercepcion == "true" && $ImportePercepcion == 0 ? round($TotalNeto * $ipc / 100 * 100) / 100 : $ImportePercepcion;
        $ImportePago = $TotalNeto + $ImporteFlete + $ImportePercepcion;
        foreach ($carrito as $key => $value) {
            $salta++;
            if ($num <= $tamPagina and $salta >= $indice) {
                $num++;
                $oProducto->Load($key);
                $precioventa = $descuentos[$key][1] * $igv / 100;
                $precioventa = $descuentos[$key][1] + $precioventa;
                $vdescuento = isset($descuentos[$key][0]) ? $descuentos[$key][0] : 0;
                $pdescuento = isset($descuentos[$key][2]) ? $descuentos[$key][2] : 0;
                $item = $indice + $num;
                if ($indice == 10 || $indice == 20) {
                    $item--;
                }
                $ot->fijarSerie("vItem", $item . ".");
                $ot->fijarSerie("vReferencia", $oProducto->getCB());
                $ot->fijarSerie("vNombre", getDatosProductosExtra($key, "nombre"));
                $ot->fijarSerie("tBorrar", $quitar);
                $ot->fijarSerie("vUnidades", $value);
                $ot->fijarSerie("vPrecio", dosdecimales($costescarrito[$key]));
                $ot->fijarSerie("IdProducto", $oProducto->getId());
                $ot->fijarSerie("Serie", $oProducto->getSerie());
                $ot->fijarSerie("vDescuento", dosdecimales($vdescuento));
                $ot->fijarSerie("PorcentajeDescuento", dosdecimales($pdescuento));
                $ot->fijarSerie("vImporte", dosdecimales($descuentos[$key][1]));
                $ot->fijarSerie("vPrecioVenta", dosdecimales($precioventa));
                $ot->fijarSerie("vVentaMenudeo", $oProducto->getVentaMenudeo());
                $ot->fijarSerie("vUnidadesPorContenedor", $oProducto->getUnidadesPorContenedor());
                $ot->fijarSerie("vUnidadMedida", $oProducto->getUnidadMedida());
                $unimedida = $oProducto->getUnidadMedida();
                $menudeo = $oProducto->getVentaMenudeo();
                $lt = $oProducto->getLote();
                $fv = $oProducto->getFechaVencimiento();
                $ns = $oProducto->getSerie();
                $contenedor = $oProducto->getContenedor();
                $vbtn = $menudeo ? true : false;
                $vbtn = $lt ? true : $vbtn;
                $vbtn = $fv ? true : $vbtn;
                $contunid = $menudeo ? intval($value / $oProducto->getUnidadesPorContenedor()) : "";
                $unid = $menudeo ? $value % $oProducto->getUnidadesPorContenedor() : "";
                $cadena = $contunid . " " . $contenedor . " + " . $unid . " " . $unimedida;
                $cadena = $menudeo ? $cadena : $contenedor;
                $svalbtn = validaxdtCarritoProducto($key) ? "+" : "?";
                $rbtnns = $ns ? "readonly" : "";
                $rbtnns = $detadoc[0] == 'O' ? "" : $rbtnns;
                $sbtnns = $ns ? "button" : "hidden";
                $sbtn = $vbtn ? "button" : "hidden";
                $svalbtn = $detadoc[0] == 'O' ? "+" : $svalbtn;
                $sbtnns = $detadoc[0] == 'O' ? "hidden" : $sbtnns;
                $sbtn = $detadoc[0] == 'O' ? "hidden" : $sbtn;
                $sbtn = $menudeo ? "button" : $sbtn;
                $sbtncsto = $menudeo ? "button" : "hidden";
                $ot->fijarSerie("vUnidMedida", $unimedida);
                $ot->fijarSerie("vTotalContenedor", $cadena);
                $ot->fijarSerie("vButton", $sbtn);
                $ot->fijarSerie("vButtonCosto", $sbtncsto);
                $ot->fijarSerie("vValButton", $svalbtn);
                $ot->fijarSerie("vReadOnly", $rbtnns);
                $ot->fijarSerie("vBotonSerie", $sbtnns);
            }
        }
    }
    if (!$salta) {
        $ot->fijar("aviso", gas("aviso", _("Carrito vacío")));
        $ot->eliminaSeccion("haydatos");
    } else {
        $ot->fijar("aviso");
        $ot->confirmaSeccion("haydatos");
    }
    $tpfecha = 'Fecha Emisión :';
    $tipodoc = $detadoc[0];
    $nrodoc = $detadoc[3];
    $anrodoc = explode("-", $nrodoc);
    $sdoc = $anrodoc[0];
    $ndoc = isset($anrodoc[1]) ? $anrodoc[1] : false;
    $tnrodoc = $nrodoc ? 'Nro. ' . $nrodoc : '';
    $titulo = $tipodoc == 'F' ? 'Factura ' . $tnrodoc : '';
    $titulo = $tipodoc == 'O' ? 'Pedido ' . $tnrodoc : $titulo;
    $titulo = $tipodoc == 'R' ? 'Boleta ' . $tnrodoc : $titulo;
    $titulo = $tipodoc == 'G' ? 'Albar&aacute;n ' . $tnrodoc : $titulo;
    $titulo = $tipodoc == 'SD' ? 'Ticket' . $tnrodoc : $titulo;
    $tpfecha = $tipodoc == 'O' ? 'Fecha Entrega : ' : $tpfecha;
    $idprov = $detadoc[1];
    $nomprov = $detadoc[2];
    $fecdoc = $detadoc[4];
    $tipomoneda = $detadoc[5];
    $checkedTS = $tipomoneda == 1 ? 'CHECKED' : '';
    $checkedTD = $tipomoneda == 2 ? 'CHECKED' : '';
    $tipocambio = $detadoc[6];
    $fechacambio = $detadoc[7];
    $fechapago = $detadoc[8];
    $idsubsid = $detadoc[9];
    $nomsubsid = $detadoc[10];
    $incluyeigv = getSesionDato("incImpuestoDet") == 'true' ? true : false;
    $incluyeipc = getSesionDato("incPercepcion") == 'true' ? true : false;
    $checkipc = $incluyeipc ? 'CHECKED' : '';
    $checkigv = $incluyeigv ? 'CHECKED' : '';
    $tpv = 'PC';
    $xipc = $incluyeipc ? '' : 'display:none';
    $tvv = $incluyeigv ? $tpv : 'VC';
    $tcp = $incluyeigv ? 'Precio/Unid.' : 'Costo/Unid.';
    $pv = $incluyeigv ? 'hidden' : 'text';
    $tdpv = $incluyeigv ? '1' : '0';
    $colheadcart = $incluyeigv ? '16' : '17';
    $checkcredt = getSesionDato("aCredito") == 'true' ? 'CHECKED' : '';
    $ot->fijar("vTDoc", $tipodoc);
    $ot->fijar("vTxFecha", $tpfecha);
    $ot->fijar("vCheckIGV", $checkigv);
    $ot->fijar("vCheckPercepcion", $checkipc);
    $ot->fijar("vxPercepcion", $xipc);
    $ot->fijar("vMoneda1", $Moneda[1]['T']);
    $ot->fijar("vMoneda2", $Moneda[2]['T']);
    $ot->fijar("vSimboloMoneda1", $Moneda[1]['S']);
    $ot->fijar("vSimboloMoneda2", $Moneda[2]['S']);
    $ot->fijar("vCheckCredt", $checkcredt);
    $ot->fijar("vTipoDoc", $titulo);
    $ot->fijar("vIdProvHab", $idprov);
    $ot->fijar("vIdSubsiHab", $idsubsid);
    $ot->fijar("vProveedorHab", $nomprov);
    $ot->fijar("vSubsiHab", $nomsubsid);
    $ot->fijar("vSDoc", $sdoc);
    $ot->fijar("vNDoc", $ndoc);
    $ot->fijar("vFechaDoc", $fecdoc);
    $ot->fijar("vFechaPago", $fechapago);
    $ot->fijar("vTipoMoneda", $tipomoneda);
    $ot->fijar("vCheckedTS", $checkedTS);
    $ot->fijar("vCheckedTD", $checkedTD);
    $ot->fijar("vTipoCambio", $tipocambio);
    $ot->fijar("vFechaCambio", $fechacambio);
    $ot->fijar("vIGV", $igv);
    $ot->fijar("vInputPV", $pv);
    $ot->fijar("vVV", $tvv);
    $ot->fijar("vPV", $tpv);
    $ot->fijar("vCP", $tcp);
    $ot->fijar("vTDPV", $tdpv);
    $ot->fijar("vColHeadCart", $colheadcart);
    $totallst = count($carrito);
    $ot->fijar("vTotalLst", $totallst);
    $ot->fijar("vTotalNeto", dosdecimales($TotalNeto));
    $ot->fijar("vTotalDescuento", dosdecimales($TotalDescuento));
    $ot->fijar("vTotalImpuesto", dosdecimales($TotalImpuesto));
    $ot->fijar("vTotalBruto", dosdecimales($TotalBruto));
    $ot->fijar("vBrutoNeto", dosdecimales($BrutoNeto));
    $ot->fijar("vImporteFlete", dosdecimales($ImporteFlete));
    $ot->fijar("vImportePercepcion", dosdecimales($ImportePercepcion));
    $ot->fijar("vImportePago", dosdecimales($ImportePago));
    $jsOut .= jsPaginador($indice, $ot->getPagina(), $num);
    $ot->fijar("CLIST", $jsOut);
    $ot->paginador($indice, false, $num);
    $ot->fijar("action", $action);
    $ot->terminaSerie();
    echo $ot->Output();
}