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(); }
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(); }
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); }
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; } }
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(); }
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; }
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; }
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(); }
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); } }
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á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(); }