Пример #1
0
 function formClon($action, $lang = false, $volver = false)
 {
     $ot = getTemplate("ClonProducto");
     if (!$ot) {
         return false;
     }
     $modo = "salvaclon";
     $ListadoCombinado = genListadoCruzado($this->getId(), $this->get("IdTallaje"));
     $tieneserie = $this->get("Serie");
     $incluidons = $this->get("Serie") == 1 ? "checked" : "";
     $incluidolt = $this->get("Lote") == 1 ? "checked" : "";
     $incluidofv = $this->get("FechaVencimiento") == 1 ? "checked" : "";
     $incluidomd = $this->get("VentaMenudeo") == 1 ? "checked" : "";
     $motivomd = $this->get("VentaMenudeo") == 1 ? "visible" : "hidden";
     $tienefechavencimiento = $this->get("FechaVencimiento");
     $volver = $volver == "modcompras" ? "modcompras.php" : "modproductos.php";
     $numreg = ObtenerNumeroProductosPorReferencia($this->getReferencia());
     $readonlyUM = "readonly";
     $readonly = "readonly";
     $um = "";
     $ounidad = "";
     $ometro = "";
     $olitro = "";
     $okilo = "";
     switch ($this->get("UnidadMedida")) {
         case 'und':
             $um = "Unidades";
             $ounidad = "selected";
             break;
         case 'mts':
             $um = "Metros";
             $ometro = "selected";
             break;
         case 'lts':
             $um = "Litros";
             $olitro = "selected";
             break;
         case 'kls':
             $um = "Kilos";
             $okilo = "selected";
             break;
     }
     $osrm = "";
     $ocrm = "";
     $ocrmr = "";
     switch ($this->get("CondicionVenta")) {
         case '0':
             $osrm = "selected";
             break;
         case 'CRM':
             $ocrm = "selected";
             break;
         case 'CRMR':
             $ocrmr = "selected";
             break;
     }
     $txtMoDet = getModeloDetalle2txt();
     $esBTCA = $txtMoDet[0] == "BTCA";
     $hidden = "style='display:none;'";
     $btca = $esBTCA ? false : $hidden;
     $txtref = $txtMoDet[4];
     $ismtposerv = $this->get("Servicio") || $this->get("MetaProducto") ? $hidden : false;
     $isserie = $this->get("Serie") ? $hidden : false;
     $txtalias = $txtMoDet[3];
     $txtModelo = $txtMoDet[1];
     $txtDetalle = $txtMoDet[2];
     $txtTitulo = $esBTCA ? 'Nueva' : 'Nuevo';
     $titulo = _("{$txtTitulo} {$txtModelo} / {$txtDetalle}");
     $cambios = array("tPrecioVenta" => _("Previo Venta"), "vPrecioVenta" => $this->getPrecioVenta(), "vIdTallaje" => $this->get("IdTallaje"), "ListaCombinada" => $ListadoCombinado, "tImprimirCodigoBarras" => _("Imprimir código barras"), "vRefProvHab" => $this->get("RefProvHab"), "tRefProvHab" => $txtref, "vIdMarca" => $this->get("IdMarca"), "tMarca" => _("Marca"), "vMarca" => getIdMarca2Texto($this->get("IdMarca")), "vIdContenedor" => $this->get("IdContenedor"), "tContenedor" => _("Contenedor"), "vContenedor" => getIdContenedor2Texto($this->get("IdContenedor")), "vIdTalla" => $this->get("IdTalla"), "tModelo" => $txtModelo, "vTalla" => getIdTalla2Texto($this->get("IdTalla"), $this->get("IdIdioma")), "vIdColor" => $this->get("IdColor"), "tDetalle" => $txtDetalle, "vColor" => getIdColor2Texto($this->get("IdColor"), $this->get("IdIdioma")), "tCodigoBarras" => _("Código barras"), "vCodigoBarras" => $this->get("CodigoBarras"), "tTitulo" => $titulo, "HIDDENDATA" => Hidden("id", $this->getId()), "action" => "{$action}?modo={$modo}&idBase=", "Referencia" => _("Referencia"), "vReferencia" => $this->getReferencia(), "tCosteSinIVA" => _("Costo Ref."), "vCosteSinIVA" => $this->get("Costo") * 1, "Descripcion" => _("Nombre"), "vDescripcion" => $this->getDescripcion(), "isbtca" => $btca, "ismtposerv" => $ismtposerv, "isserie" => $isserie, "vIdProductoAlias0" => $this->get("IdProductoAlias0"), "tProductoAlias0" => $txtalias, "vProductoAlias0" => getIdProductoAlias2Texto($this->get("IdProductoAlias0"), $this->get("IdIdioma")), "vIdProductoAlias1" => $this->get("IdProductoAlias1"), "tProductoAlias1" => $txtalias, "vProductoAlias1" => getIdProductoAlias2Texto($this->get("IdProductoAlias1"), $this->get("IdIdioma")), "PrecioVenta" => _("Precio venta"), "vPrecioVenta" => $this->getPrecioVenta(), "PrecioOnline" => _("Precio online"), "vPrecioOnline" => $this->getPrecioOnline(), "tVentaMenudeo" => _("Venta al menudeo"), "cVentaMenudeo" => $incluidomd, "vMotivoMd" => $motivomd, "cNumeroSerie" => $incluidons, "cLote" => $incluidolt, "cFechaVencimiento" => $incluidofv, "tUnidadesPorContenedor" => _("Unidades Por Contenedor"), "vUnidadesPorContenedor" => $this->get("UnidadesPorContenedor"), "tUnidadMedida" => _("Unidad Medida"), "vUnidadMedida" => $this->get("UnidadMedida"), "vUM" => $um, "ounidad" => $ounidad, "ometro" => $ometro, "olitro" => $olitro, "okilo" => $okilo, "oSRM" => $osrm, "oCRM" => $ocrm, "oCRMR" => $ocrmr, "vReadOnly" => $readonly, "vReadOnlyUM" => $readonlyUM, "vSerie" => $tieneserie, "vFechaVencimiento" => $tienefechavencimiento, "tFamilia" => _("Familia..."), "tSubFamilia" => _("Sub familia..."), "TipoImpuesto" => _("Impuesto"), "tIdProvHab" => _("Proveedor hab."), "vIdProvHab" => $this->get("IdProvHab"), "vProveedorHab" => getNombreProveedor($this->get("IdProvHab")), "tIdLabHab" => _("Laboratorio hab."), "vIdLabHab" => $this->get("IdLabHab"), "vLaboratorioHab" => getNombreLaboratorio($this->get("IdLabHab")), "vTipoImpuesto" => $this->getTipoImpuesto(), "vIdFamilia" => $this->get("IdFamilia"), "vIdSubFamilia" => $this->get("IdSubFamilia"), "vFamilia" => $this->get("Familia"), "vSubFamilia" => $this->get("SubFamilia"), "vImpuesto" => $this->getImpuesto());
     return $ot->makear($cambios);
 }
Пример #2
0
function ListarProductosExtra()
{
    global $action, $tamPagina, $txtMoDet;
    $oProducto = new producto();
    $idprov = getSesionDato("FiltraProv");
    $idlab = getSesionDato("FiltraLab");
    $idalias = getSesionDato("FiltraAlias");
    $idmarca = getSesionDato("FiltraMarca");
    $idcolor = getSesionDato("FiltraColor");
    $idtalla = getSesionDato("FiltraTalla");
    $base = getSesionDato("FiltraBase");
    $idfamilia = getSesionDato("FiltraFamilia");
    $idsubfamilia = getSesionDato("FiltraSubFamilia");
    $ref = getSesionDato("FiltraReferencia");
    $cb = getSesionDato("FiltraCB");
    $nombre = getSesionDato("FiltraNombre");
    $idalias = $nombre ? getLikeProductoAlias2Id($nombre, $IdIdioma = false) : $idalias;
    $obsoletos = getSesionDato("FiltraObsoletos");
    $indice = getSesionDato("PaginadorListaProd");
    $txtModelo = $txtMoDet[1];
    $txtDetalle = $txtMoDet[2];
    $hayProductos = $oProducto->ListadoFlexible($idprov, $idmarca, $idcolor, $idtalla, false, $indice, $base, false, $idfamilia, $tamPagina, $ref, $cb, $nombre, $obsoletos, $idalias, $idlab, $idsubfamilia);
    $num = 0;
    $jsOut = "";
    $jsLex = new jsLextable();
    $jsOut .= jsLabel("color", $txtModelo);
    $jsOut .= jsLabel("talla", $txtDetalle);
    $jsOut .= jsLabel("modificar", _("Modificar"));
    $jsOut .= jsLabel("referencia", _("Referencia"));
    $jsOut .= jsLabel("unid", _("Unid"));
    $jsOut .= jsLabel("pv", _("PV"));
    $jsOut .= jsLabel("nuevatallacolor", _("Nuevo {$txtModelo} / {$txtDetalle}"));
    $oldId = -1;
    $num = 0;
    while ($oProducto->SiguienteProducto()) {
        $num++;
        $id = $oProducto->getId();
        $nombre = $oProducto->getNombre();
        $descripcion = $oProducto->get("Descripcion");
        $marca = getIdMarca2Texto($oProducto->get("IdMarca"));
        $ref = $oProducto->getReferencia();
        $cb = $oProducto->getCB();
        $talla = getIdTalla2Texto($oProducto->get("IdTalla"));
        $color = getIdColor2Texto($oProducto->get("IdColor"));
        $lab = getNombreLaboratorio($oProducto->get("IdLabHab"));
        $lextalla = $jsLex->add($talla);
        $lexcolor = $jsLex->add($color);
        $fam = getIdFamilia2Texto($oProducto->get("IdFamilia"));
        $sub = getIdSubFamilia2Texto($oProducto->get("IdFamilia"), $oProducto->get("IdSubFamilia"));
        $manejaserie = $oProducto->get("Serie");
        $manejalote = $oProducto->get("Lote");
        $manejafv = $oProducto->get("FechaVencimiento");
        $eservicio = $oProducto->get("Servicio") > 0 ? 1 : 0;
        //Servicio
        $esimagen = "'" . $oProducto->get("Imagen") . "'";
        $eservicio = $oProducto->get("MetaProducto") > 0 ? 1 : $eservicio;
        //MetaProducto
        $lexfam = $jsLex->add($fam);
        $lexsub = $jsLex->add($sub);
        $idBase = $oProducto->get("IdProdBase");
        if ($idBase != $oldId) {
            $nombre = addslashes($nombre);
            $ref = addslashes($ref);
            $jsOut .= "cPH({$id},'{$nombre}','{$ref}',{$lexfam},{$lexsub},'{$descripcion}','{$marca}','{$lab}','{$eservicio}','{$idBase}');\n";
        }
        $jsOut .= "cP({$id},{$cb},{$lextalla},{$lexcolor},{$idBase},{$manejaserie},{$manejalote},{$manejafv},{$eservicio},{$esimagen});\n";
        $oldId = $idBase;
    }
    $jsOut = $jsLex->jsDump() . $jsOut;
    $paginador = jsPaginador($indice, $tamPagina, $num);
    $jsOut .= $paginador;
    $jsOut .= "cListProductos();";
    $jsOut .= $paginador;
    $jsOut .= AutoOpen();
    echo "<center>";
    echo jsBody($jsOut);
    echo "</center>";
}
Пример #3
0
function ListarAlmacen($referencia, $donde, $marcadotrans = false, $cb = false, $idbase = false, $soloLlenos = false, $obsoletos = false, $soloNS = false, $soloLote = false, $soloOferta = false, $reservados = false)
{
    global $action, $tamPagina;
    $base = getSesionDato("BusquedaProdBase");
    $ot = getTemplate("ListadoMonoProductoMultiAlmacen");
    if (!$ot) {
        error(__FILE__ . __LINE__, "Info: template no encontrado");
        return false;
    }
    //Extraemos datos
    $almacen = getSesionDato("Articulos");
    $IdLocal = $donde ? $donde : "";
    if ($referencia) {
        $id = genReferencia2IdProducto($referencia);
        $idbase = getProdBaseFromId($id);
    }
    $IdProducto = !$base ? getIdFromCodigoBarras($cb) : "";
    if (!$IdLocal and !$IdProducto) {
        echo gas("Aviso", _("Sin resultados"));
        if (!$IdProducto) {
            setSesionDato("BusquedaReferencia", false);
            if (!$base) {
                setSesionDato("BusquedaCB", false);
            }
            //si no encontro nada, no se busca en esa ref
        }
        return false;
    }
    $indice = getSesionDato("PaginadorAlmacen");
    $idalias = "";
    $nombre = "";
    if (isset($_SESSION["BusquedaNombre"]) and $_SESSION["BusquedaNombre"]) {
        $nombre = $_SESSION["BusquedaNombre"];
    }
    if ($nombre) {
        $idalias = getLikeProductoAlias2Id($nombre, $IdIdioma = false);
    }
    $res = $almacen->ListadoModular($IdLocal, $IdProducto, $indice, $tamPagina, $idbase, $nombre, $soloLlenos, $obsoletos, $soloNS, $soloLote, $soloOferta, $idalias, $reservados);
    $haytrans = is_array($marcadotrans) and count($marcadotrans);
    $num = 0;
    $jsOut = "";
    $jsLex = new jsLextable();
    $jsOut .= jsLabel("comprar", _("Comprar"));
    $jsOut .= jsLabel("modificar", _("Modificar"));
    $jsOut .= jsLabel("referencia", _("Referencia"));
    $jsOut .= jsLabel("unid", _("Unid"));
    $jsOut .= jsLabel("pv", _("PV"));
    $jsOut .= jsLabel("seleccionar", _("Seleccionar"));
    $jsOut .= jsLabel("cuantasunidades", _("¿Cuántas unidades?"), false);
    $oldId = -1;
    while ($almacen->SiguienteArticulo()) {
        $num++;
        $transid = $almacen->get("Id");
        $ref = $almacen->get("Referencia");
        $cb = $almacen->get("CodigoBarras");
        $nombre = $almacen->get("Nombre");
        $nombre = getParametro("ProductosLatin1") ? iso2utf($nombre) : $nombre;
        $unidades = $almacen->get("Unidades");
        $contenedor = $almacen->get("Contenedor");
        $ucontenedor = $almacen->get("UnidadesPorContenedor");
        $precio = $almacen->get("CostoUnitario");
        $ident = $almacen->get("Identificacion");
        $id = $almacen->get("IdProducto");
        $iconos = $almacen->Iconos();
        $talla = getIdTalla2Texto($almacen->get("IdTalla"));
        $lextalla = $jsLex->add($talla);
        $color = getIdColor2Texto($almacen->get("IdColor"));
        $lexcolor = $jsLex->add($color);
        $desc = $almacen->get("Descripcion");
        $nombreLocal = getNombreLocalId($almacen->get("IdLocal"));
        $lexlocal = $jsLex->add($nombreLocal);
        $ManejaSerie = $almacen->get("Serie");
        $statusns = $almacen->get("StatusNS");
        $ventamenudeo = $almacen->get("VentaMenudeo");
        $UnidadMedida = $almacen->get("UnidadMedida");
        $fam = getIdFamilia2Texto($almacen->get("IdFamilia"));
        $sub = getIdSubFamilia2Texto($almacen->get("IdFamilia"), $almacen->get("IdSubFamilia"));
        $lexfam = $jsLex->add($fam);
        $lexsub = $jsLex->add($sub);
        $sel = ($haytrans and in_array($transid, $marcadotrans)) ? 1 : 0;
        $idBase = $almacen->get("IdProdBase");
        $marca = getIdMarca2Texto($almacen->get("IdMarca"));
        $lab = getNombreLaboratorio(getIdLaboratorioFromIdProducto($id));
        if ($idBase != $oldId) {
            $numlex = $jsLex->add($ident);
            $nombre = addslashes($nombre);
            $ref = addslashes($ref);
            $jsOut .= "cAH({$idBase},'{$nombre}','{$ref}','{$desc}',{$numlex},{$lexfam},{$lexsub},{$ManejaSerie},'{$UnidadMedida}','{$contenedor}',{$ucontenedor},'{$marca}','{$ventamenudeo}','{$lab}');\n";
        }
        $jsOut .= "cA({$id},'{$iconos}','{$cb}',{$unidades},'{$precio}',{$sel},{$transid},{$lextalla},{$lexcolor},{$lexlocal},{$ManejaSerie},'{$UnidadMedida}','{$contenedor}',{$ucontenedor},'{$ventamenudeo}','{$statusns}');\n";
        $oldId = $idBase;
    }
    $jsOut = $jsLex->jsDump() . $jsOut;
    $jsOut .= AutoOpen();
    $paginador = $ot->jsPaginador($indice, $tamPagina, $num);
    $jsOut .= $paginador;
    $jsOut .= "cListAlmacen();";
    $jsOut .= $paginador;
    echo "<center>";
    echo jsBody($jsOut);
    echo "</center>";
}
Пример #4
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();
}