Esempio n. 1
0
function ListarProductos($idprov, $idmarca, $idcolor, $idtalla, $base, $idfamilia)
{
    //Creamos template
    global $action, $txtMoDet, $tamPagina;
    $ot = getTemplate("ListadoProductos");
    if (!$ot) {
        error(__FILE__ . __LINE__, "Info: template no encontrado");
        return false;
    }
    $marcado = getSesionDato("CarritoProd");
    //echo "ser: " . serialize($marcado). "<br>";
    //$tamPagina  = $ot->getPagina();
    $oProducto = new producto();
    $indice = getSesionDato("PaginadorListaProd");
    $txtModelo = $txtMoDet[1];
    $txtDetalle = $txtMoDet[2];
    $hayProductos = $oProducto->ListadoFlexible($idprov, $idmarca, $idcolor, $idtalla, false, $indice, $base, false, $idfamilia, $tamPagina);
    $ot->fijar("comboProveedores", genComboProveedores($idprov));
    $ot->fijar("comboMarcas", genComboMarcas($idmarca));
    if (intval($idcolor) >= 0) {
        $ot->fijar("comboColores", genComboColores($idcolor));
    } else {
        $ot->fijar("comboColores", genComboColores("ninguno"));
    }
    $ot->fijar("comboTalla", genComboTallas($idtalla));
    $ot->fijar("tVerTallasColores", _("{$txtModelo}/{$txtDetalle}"));
    $ot->fijar("tBuscaCodigoBarras", _("CB"));
    $jsOut = "";
    $ot->fijar("tTitulo", _("Lista de productos"));
    $ot->fijar("action", $action);
    $jsOut .= jsLabel("eliminar", _("Eliminar"));
    $jsOut .= jsLabel("modificar", _("Modificar"));
    $jsOut .= jsLabel("nuevatallacolor", _("{$txtModelo} / {$txtDetalle}"));
    $jsOut .= jsLabel("local", _("Local"));
    $jsOut .= jsLabel("nombre", _("Nombre"));
    $jsOut .= jsLabel("referencia", _("Referencia"));
    $jsOut .= jsLabel("unid", _("Unid"));
    $jsOut .= jsLabel("pv", _("PV"));
    $jsOut .= jsLabel("seleccionar", _("Seleccionar"));
    if (!$hayProductos) {
        echo gas("aviso", _("No hay productos disponibles"));
    } else {
        $num = 0;
        while ($oProducto->SiguienteProducto()) {
            $num++;
            $id = $oProducto->getId();
            $nombre = $oProducto->getNombre();
            $referencia = $oProducto->getReferencia();
            $jsOut .= "cP({$id},'{$nombre}','{$referencia}');\n";
        }
        $ot->paginador($indice, false, $num);
        $jsOut .= "cListProductos();";
    }
    $ot->fijar("CLIST", $jsOut);
    echo $ot->Output();
}
Esempio n. 2
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>";
}
Esempio n. 3
0
function ListarProductos($idprov, $idmarca, $idcolor, $idtalla, $seleccion, $idprod, $idbase, $nombre = false, $ref = false, $cb = false, $obsoletos = false, $idlab = false, $idalias = false, $porproveedor = false, $stockminimo = false)
{
    global $action, $tamPagina;
    $oProducto = new producto();
    $idalias = $nombre ? getLikeProductoAlias2Id($nombre, $IdIdioma = false) : $idalias;
    $base = $idbase;
    //$idprod???
    $indice = getSesionDato("PaginadorCompras");
    $Moneda = getSesionDato("Moneda");
    $txtMoDet = getModeloDetalle2txt();
    $txtModelo = $txtMoDet[1];
    $txtDetalle = $txtMoDet[2];
    $hayProductos = $oProducto->ListadoFlexibleCompras($idprov, $idmarca, $idcolor, $idtalla, false, $indice, $base, false, false, $tamPagina, $ref, $cb, $nombre, $obsoletos = false, $idalias, $idlab, $porproveedor, $stockminimo);
    $num = 0;
    $jsOut = "";
    $jsLex = new jsLextable();
    $jsOut .= jsLabel("color", $txtModelo);
    $jsOut .= jsLabel("talla", $txtDetalle);
    $jsOut .= jsLabel("comprar", _("Comprar"));
    $jsOut .= jsLabel("modificar", _("Modificar"));
    $jsOut .= jsLabel("referencia", _("Referencia"));
    $jsOut .= jsLabel("unid", _("Unid"));
    $jsOut .= jsLabel("pv", _("PV"));
    $jsOut .= jsLabel("nuevatallacolor", _("Nuevo {$txtModelo} o {$txtDetalle}"));
    $oldId = -1;
    $num = 0;
    while ($oProducto->SiguienteProducto()) {
        $num++;
        $id = $oProducto->getId();
        $cb = $oProducto->getCB();
        $nombre = $oProducto->getNombre();
        $descripcion = $oProducto->get("Descripcion");
        $marca = getIdMarca2Texto($oProducto->get("IdMarca"));
        $lab = getNombreLaboratorio($oProducto->get("IdLabHab"));
        $ref = $oProducto->getReferencia();
        $talla = getIdTalla2Texto($oProducto->get("IdTalla"));
        $color = getIdColor2Texto($oProducto->get("IdColor"));
        $manejaserie = $oProducto->get("Serie");
        $manejalote = $oProducto->get("Lote");
        $manejafv = $oProducto->get("FechaVencimiento");
        $eservicio = $oProducto->get("Servicio") > 0 ? 1 : 0;
        //Servicio
        $eservicio = $oProducto->get("MetaProducto") ? 1 : $eservicio;
        //MetaProducto
        $lextalla = $jsLex->add($talla);
        $lexcolor = $jsLex->add($color);
        $fam = getIdFamilia2Texto($oProducto->get("IdFamilia"));
        $sub = getIdSubFamilia2Texto($oProducto->get("IdFamilia"), $oProducto->get("IdSubFamilia"));
        $lexfam = $jsLex->add($fam);
        $lexsub = $jsLex->add($sub);
        $idBase = $oProducto->get("IdProdBase");
        if ($idBase != $oldId) {
            $ref = addslashes($ref);
            $nombre = addslashes($nombre);
            $jsOut .= "cLH({$id},'{$nombre}','{$ref}',{$lexfam},{$lexsub},'{$descripcion}','{$marca}','{$lab}','{$idBase}');\n";
        }
        $jsOut .= "cL({$id},{$cb},{$lextalla},{$lexcolor},{$manejaserie},{$manejalote},{$manejafv},{$eservicio});\n";
        $oldId = $idBase;
    }
    $jsOut = $jsLex->jsDump() . $jsOut;
    $paginador = jsPaginador($indice, $tamPagina, $num);
    $jsOut .= $paginador;
    $jsOut .= "cListProductos();";
    $jsOut .= $paginador;
    $jsOut .= AutoOpen();
    $detadoc = getSesionDato("detadoc");
    $documento = getNombreDocumentoCompra($detadoc);
    $tipodoc = $detadoc[0];
    $idprov = !$detadoc[1] ? 1 : $detadoc[1];
    $nombreprov = !$idprov ? 'CASAS VARIAS' : $detadoc[2];
    $fechapago = $detadoc[8];
    $idsubsid = !$detadoc[9] ? '' : $detadoc[9];
    $nombresubsid = !$detadoc[10] ? '' : $detadoc[10];
    $nrodoc = $detadoc[3];
    $anrodoc = explode("-", $nrodoc);
    $sdoc = $anrodoc[0];
    $ndoc = isset($anrodoc[1]) ? $anrodoc[1] : '';
    $fdoc = $detadoc[4];
    $tipocambio = $detadoc[6];
    $fcambio = $detadoc[7];
    $tipomoneda = $detadoc[5];
    $tpfecha = 'Fecha Emisión : ';
    $checkigv = getSesionDato("incImpuestoDet") == 'true' ? 'CHECKED' : '';
    $checkipc = getSesionDato("incPercepcion") == 'true' ? 'CHECKED' : '';
    $checkcredt = getSesionDato("aCredito") == 'true' ? 'CHECKED' : '';
    $admiteCompra = !selAdmite('Compras');
    $tipodoc = selAdmite('Compras') ? "O" : $tipodoc;
    $checkF = '';
    $checkO = '';
    $checkR = '';
    $checkG = '';
    $checkSD = '';
    switch ($tipodoc) {
        case "F":
            $habilita = "apareceCapa('prov');" . "apareceCapa('ndoc');" . "apareceCapa('fdoc');" . "apareceCapa('acred');" . "apareceCapa('pgdoc');" . "cambiodoc('F');";
            $checkF = 'selected';
            break;
        case "O":
            $habilita = "apareceCapa('prov');" . "apareceCapa('acred');" . "desapareceCapa('ndoc');" . "apareceCapa('fdoc');" . "apareceCapa('pgdoc');" . "cambiodoc('O');" . "CambiaTextDoc(1);";
            $checkigv = 'selected';
            setSesionDato("incImpuestoDet", 'true');
            $checkO = 'selected';
            break;
        case "R":
            $habilita = "apareceCapa('prov');" . "apareceCapa('ndoc');" . "apareceCapa('acred');" . "apareceCapa('pgdoc');" . "apareceCapa('fdoc');" . "cambiodoc('R'); ";
            $checkR = 'selected';
            break;
        case "G":
            $habilita = "apareceCapa('prov');" . "apareceCapa('ndoc');" . "apareceCapa('fdoc');" . "apareceCapa('acred');" . "apareceCapa('pgdoc');" . "cambiodoc('G'); ";
            $checkG = 'selected';
            break;
        case "SD":
            $habilita = "apareceCapa('prov');" . "desapareceCapa('ndoc');" . "desapareceCapa('acred');" . "apareceCapa('fdoc');" . "apareceCapa('pgdoc');" . "cambiodoc('SD'); ";
            $checkSD = 'selected';
    }
    $tnrodoc = $nrodoc ? 'Nro ' . $nrodoc : '';
    $titulo = selAdmite('Compras') ? 'Pedido' : $documento . ' ' . $tnrodoc;
    $tpfecha = $detadoc[0] == 'O' ? 'Fecha Entrega : ' : $tpfecha;
    $checkTS = $tipomoneda == 1 ? 'CHECKED' : '';
    $habilita_tmoneda = $tipomoneda == 1 ? "desapareceCapa('cambiomoneda');" : "";
    $checkTD = $tipomoneda == 2 ? 'CHECKED' : '';
    $habilita_tmoneda = $tipomoneda == 2 ? "apareceCapa('cambiomoneda');" : '';
    echo "<script type='text/JavaScript' language='javascript' " . "src='modulos/calendario/calendar.js'></script>" . "<script type='text/JavaScript' language='javascript' " . "src='modulos/calendario/lang/calendar-sp.js'></script>" . "<script type='text/JavaScript' language='javascript' " . "src='modulos/calendario/calendar-setup.js'></script>\n\n<center>\n<table border='0' class='listado'>\n  <tr class='formaCabeza'>\n    <td colspan='3' height='16'>\n      <div id='t_comprov' class='formaTitulo'>{$titulo}</div>\n    </td>\n  </tr>\n  <tr>\n  <td  class='lh' colspan='3' style='padding: 0em 1em 0.3em 0.6em'>\n\n    <div id=prov style='display: none;color:#000000;'> \n      <b>Proveedor :</b>\n      <input type=hidden id=IdProvHab name=IdProvHab value='{$idprov}' > \n      <input type=hidden id=modopagina name=modopagina value='Compras'>\n      <input class=btn onclick='auxAltaProv();' type='button' value='+'> \n      <input class=btn onclick='auxProveedorHab();' type='button' value='...'> \n      <input class=xbtlh name=TextoProvHab id=TextoProvHab value='{$nombreprov}' readonly/>\n    </div>\n\n    &nbsp;&nbsp;&nbsp;&nbsp; \n      <b>Presupuesto :</b>\n\t<select>\n                ";
    if ($admiteCompra) {
        echo "<option  onclick=" . '"' . "s_radioComprobante('F');" . '"' . "  {$checkF} >Factura</option>\n\t\t<option  onclick=" . '"' . "s_radioComprobante('R');" . '"' . "  {$checkR}>Boleta</option>\n\t\t<option  onclick=" . '"' . "s_radioComprobante('G');" . '"' . "  {$checkG}>Albarán</option>\n\t\t<option  onclick=" . '"' . "s_radioComprobante('SD');" . '"' . "  {$checkSD}>Ticket</option>";
    }
    echo "\n\t</select>\n   </td>\n  </tr>\n  <tr>   \n   <td colspan='3' style='' Align='center'>\n\n     <div id=ndoc style='display: none;color:#000000;'>\n       <b>Serie :</b> \n     <input class=cbt id='SDoc' name='SDoc' value='{$sdoc}' class='cajaPequena' type='text'\n      size='4' maxlength='4' onkeypress='return soloAlfaNumericoSerieBase(event);' onblur='setndoc(this.value);' onkeyup='this.value=this.value.toUpperCase()'>\n       <b>Nro :</b> \n     <input class=cbt id='NDoc' name='NDoc' value='{$ndoc}' class='cajaPequena' type='text' \n      size='7' maxlength='7' onkeypress='return soloNumerosEnterosBase(event,this.value);' onblur='setndoc(this.value);'>\n     </div>\n\n\n\n     <div id=fdoc style='display: none;color:#000000;'>\n      &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;\n      <b><span id='fecha_op'>{$tpfecha}</span></b> \n\n      <input class=cbt name='FechaDoc' type='text' id='FechaDoc' class='cajaPequena'\n       size='8' maxlength='10' value='{$fdoc}' readonly> \n\n      <img  style='margin-top:-6px' src='img/gpos_calendario.png' name='Image1' id='Image11' \n       border='0'  onMouseOver=" . '"' . "this.style.cursor='pointer'" . '"' . " >\n      <script>Calendar.setup( \n      {inputField : 'FechaDoc',ifFormat   : '%d/%m/%Y', button : 'Image11', onUpdate : setfechadoc });\n      </script>\n\n    </div>\n\n    <div id=pgdoc style='display: none;color:#000000;'>\n      &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;\n      <b> Fecha Pago :</b>\n        <input class=cbt NAME='FechaPago' type='text' id='FechaPago' class='cajaPequena' \n         size='8' maxlength='10' value='{$fechapago}' readonly> \n         <img src='img/gpos_calendario.png' name='Image2' id='Image22' \n         border='0'  onMouseOver=" . '"' . "this.style.cursor='pointer'" . '"' . " >\n        <script>Calendar.setup( \n        {inputField : 'FechaPago',ifFormat : '%d/%m/%Y', button : 'Image22', \n         onUpdate : setfechapagodoc });\n        </script>\n      </div>\n\n   </td>\n  </tr> \n  <tr>\n    <td  class='lh'  colspan='3' style='padding: 0em 1em 0.2em 1em' Align='center'>\n     \n      <input type=radio id ='tipoSoles' name='grupo2' value='0' \n      onclick=" . '"' . "desapareceCapa('cambiomoneda'); cambiomoneda(1);" . '"' . " {$checkTS} >\n      " . $Moneda[1]['T'] . "\n      <input type=radio id='tipoDolar' name='grupo2' value='1' \n      onclick=" . '"' . "apareceCapa('cambiomoneda'); cambiomoneda(2);" . '"' . " {$checkTD} >\n      " . $Moneda[2]['T'] . "\n\n      &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;\n\n        <div id=acred style='display: none;color:#000000; '>\n        <input type=checkbox  onclick=aCredito(this.checked); {$checkcredt} >\n        Crédito\n        <input type=checkbox  onclick=incluirPercepcion(this.checked); {$checkipc} >\n        Percepción\n        </div> \n        <input type=checkbox  onclick=incluirIGV(this.checked); {$checkigv} >\n        Impuesto\n\n\n    </td>\n  </tr>\n  <tr>\n   <td colspan='3' Align='center'>\n     <div id=cambiomoneda style='display: none; color:#000000'> \n\n      <b>Cambio : </b>  \n       <input class=cbt name='TipoCambio' class='InputPrecio'  value='{$tipocambio}' \n        onblur='settipocambio(this.value);' onkeypress='return soloNumerosBase(event,this.value);' size='5'>  \n      <input class=cbt NAME='FechaCambio' type='text' id='FechaCambio' class='cajaPequena' \n       value='{$fcambio}'  size='8' maxlength='10' value='' readonly> \n\n      <img src='img/gpos_calendario.png' name='Image' id='Image'\n       border='0'  onMouseOver=" . '"' . "this.style.cursor='pointer'" . '"' . ">\n      <script>Calendar.setup( \n      {inputField : 'FechaCambio',ifFormat   : '%d/%m/%Y', button     : 'Image',  \n       onUpdate : setfechacambio  });\n      </script>\n\n     </div>\n   </td>\n  </tr>\n</table>\n</center>\n\n<script>{$habilita} {$habilita_tmoneda} parent.Compras_cambiaBtnCarrito('Ver');</script>";
    echo "<center>";
    echo jsBody($jsOut);
    echo "</center>";
}