(91,'== Gestión Retail Aberturas ==\n*[[Gestión Retail Aberturas: Bitácora]]\n*[[Gestión Retail Aberturas: Pendientes]]\n*[[Gestión Retail Aberturas: Relaciones]]\n=== Gestión de Magnitudes ===\n\n==== Definiciones ====\n*Coeficiente: Por defecto, el valor es 1. Si necesita sumar al valor original, el coeficiente tiene que tener la parte entera al menos en 1. En el caso de magnitudes no estándar, los valores del precio del producto puede estar incluido en el mismo, por lo que hay que verificar en este caso los valores que se ingresen en la [[Tabla:precios]]\n*Offset: Por defecto, el valor es 0\n\n==== Atributos de Productos/Elementos ====\n* M2 = Metro Cuadrado\nPrecio Unitario = Precio determinado por tipo de cliente * (((((Ancho + OffsetAncho)*Coeficiente Ancho) * ((Alto + OffsetAlto)*Coeficiente Alto))/100000) * Coeficiente Elemento)\n\n* ML = Metro Lineal\nPrecio Unitario = Precio determinado por tipo de cliente * (((((Ancho + OffsetAncho) * 2 * Coeficiente Ancho) + ((Alto + OffsetAlto) * 2 * Coeficiente Alto)) / 1000) * Coeficiente Elemento)\n\n* MG = Magnitud Galarza\nPrecio Unitario = Precio determinado por tipo de cliente * ((((Alto + OffsetAlto) * CoeficienteAlto) + (Ancho + OffsetAncho) * CoeficienteAncho)) / 1000) * Coeficiente Elemento)\n\n* UN = Unidad\nPrecio Unitario = Precio determinado por tipo de cliente * Coeficiente Elemento\n\n=== Triggers ===\n{| style=\"border-spacing:0;\"\n| style=\"background-color:#c0c0c0;border-top:0.05pt double #808080;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| Trigger\n| style=\"background-color:#c0c0c0;border-top:0.05pt double #808080;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| Event\n| style=\"background-color:#c0c0c0;border-top:0.05pt double #808080;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| Table\n| style=\"background-color:#c0c0c0;border-top:0.05pt double #808080;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| Statement\n| style=\"background-color:#c0c0c0;border:0.05pt double #808080;padding:0.0194in;\"| Timing\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| Alta_ListasPrecios\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| INSERT\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| listasprecios\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| <nowiki>BEGIN DECLARE vListaVieja,vListaNueva INT(5); DECLARE vFechaModificacion DATE; DECLARE vHoraModificacion TIME; SET vListaNueva = (SELECT Lista FROM listavigente); SET vListaVieja = (SELECT MAX(listasprecios.Lista) FROM listasprecios WHERE listasprecios.Lista <> NEW.Lista); SET vFechaModificacion = CURDATE(); SET vHoraModificacion = CURTIME(); INSERT INTO precios ( `precios`.`Lista`, `precios`.`ProductoID`, `precios`.`PrecioProd01`, `precios`.`PrecioProd02`, `precios`.`PrecioProd03`, `precios`.`FechaModificacion`, `precios`.`HoraModificacion`)( SELECT vListaNueva, `precios`.`ProductoID`, `precios`.`PrecioProd01`, `precios`.`PrecioProd02`, `precios`.`PrecioProd03`, vFechaModificacion, vHoraModificacion FROM precios WHERE `precios`.`Lista` = vListaVieja); END</nowiki>\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:0.05pt double #808080;padding:0.0194in;\"| AFTER\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| Alta_LogPrecios\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| INSERT\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| logprecios\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| BEGIN DECLARE vCategoriaID,vProveedorID,vPaso VARCHAR(5); SET vCategoriaID = IF(ISNULL(`NEW`.`CategoriaID`),\' \',`NEW`.`CategoriaID`); SET vProveedorID = IF(ISNULL(`NEW`.`ProveedorID`),\' \',`NEW`.`ProveedorID`); SET `NEW`.`FechaModificacion` = CURDATE(); SET `NEW`.`HoraModificacion` = CURTIME(); SET `NEW`.`Lista` = (SELECT max(`listasprecios`.`Lista`) FROM `listasprecios`); IF ISNULL(NEW.CategoriaID) THEN IF ISNULL(NEW.ProveedorID) THEN UPDATE `precios`,`productos` SET `precios`.`PrecioProd01` = `precios`.`PrecioProd01` * `NEW`.`Coeficiente`, `precios`.`PrecioProd02` = `precios`.`PrecioProd02` * `NEW`.`Coeficiente`, `precios`.`PrecioProd03` = `precios`.`PrecioProd03` * `NEW`.`Coeficiente`, `precios`.`FechaModificacion` = CURDATE(), `precios`.`HoraModificacion` = CURTIME() WHERE `precios`.`ProductoID` = `productos`.`ProductoID` AND `precios`.`Lista` = `NEW`.`Lista`; SET vPaso=\'A\'; ELSE UPDATE `precios`,`productos` SET `precios`.`PrecioProd01` = `precios`.`PrecioProd01` * `NEW`.`Coeficiente`, `precios`.`PrecioProd02` = `precios`.`PrecioProd02` * `NEW`.`Coeficiente`, `precios`.`PrecioProd03` = `precios`.`PrecioProd03` * `NEW`.`Coeficiente`, `precios`.`FechaModificacion` = CURDATE(), `precios`.`HoraModificacion` = CURTIME() WHERE `precios`.`ProductoID` = `productos`.`ProductoID` AND `precios`.`Lista` = `NEW`.`Lista` AND `productos`.`ProveedorID` = NEW.ProveedorID; SET vPaso=\'B\'; END IF; ELSE IF ISNULL(NEW.ProveedorID) THEN UPDATE `precios`,`productos` SET `precios`.`PrecioProd01` = `precios`.`PrecioProd01` * `NEW`.`Coeficiente`, `precios`.`PrecioProd02` = `precios`.`PrecioProd02` * `NEW`.`Coeficiente`, `precios`.`PrecioProd03` = `precios`.`PrecioProd03` * `NEW`.`Coeficiente`, `precios`.`FechaModificacion` = CURDATE(), `precios`.`HoraModificacion` = CURTIME() WHERE `precios`.`ProductoID` = `productos`.`ProductoID` AND `precios`.`Lista` = `NEW`.`Lista` AND `productos`.`CategoriaID` = NEW.CategoriaID; SET vPaso=\'C\'; ELSE UPDATE `precios`,`productos` SET `precios`.`PrecioProd01` = `precios`.`PrecioProd01` * `NEW`.`Coeficiente`, `precios`.`PrecioProd02` = `precios`.`PrecioProd02` * `NEW`.`Coeficiente`, `precios`.`PrecioProd03` = `precios`.`PrecioProd03` * `NEW`.`Coeficiente`, `precios`.`FechaModificacion` = CURDATE(), `precios`.`HoraModificacion` = CURTIME() WHERE `precios`.`ProductoID` = `productos`.`ProductoID` AND `precios`.`Lista` = `NEW`.`Lista` AND `productos`.`CategoriaID` = vCategoriaID AND `productos`.`ProveedorID` = vProveedorID; SET vPaso=\'D\'; END IF; END IF; SET `NEW`.`RowsMod` = ROW_COUNT(); END\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:0.05pt double #808080;padding:0.0194in;\"| BEFORE\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| Alta_Precio\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| INSERT\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| precios\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| BEGIN SET NEW.FechaModificacion = CURDATE(), NEW.HoraModificacion = CURTIME(); END\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:0.05pt double #808080;padding:0.0194in;\"| BEFORE\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| Actualiza_Precio\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| UPDATE\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| precios\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| BEGIN SET NEW.FechaModificacion = CURDATE(), NEW.HoraModificacion = CURTIME(); END\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:0.05pt double #808080;padding:0.0194in;\"| BEFORE\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| AltaTransaccion\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| INSERT\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| transacciones\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| BEGIN SET NEW.TransaccFecha = CURDATE(), NEW.TransaccHora = CURTIME(); END\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:0.05pt double #808080;padding:0.0194in;\"| BEFORE\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| Baja_Presupuesto\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| DELETE\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| vidquoten1\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| BEGIN DELETE FROM vidquoten2 WHERE vidquoten2.VidQuoteID=OLD.VidQuoteID; DELETE FROM vidquoten3 WHERE vidquoten3.VidQuoteID=OLD.VidQuoteID; END\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:0.05pt double #808080;padding:0.0194in;\"| AFTER\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| Alta_Item_Presupuesto\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| INSERT\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| vidquoten2\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| BEGIN INSERT INTO vidquoten3 ( VidQuoteID, VidQuoteLPre, VidQuoteItem, VidQuoteProdID, VidQuoteProdCantidad, VidQuoteAncho, VidQuoteAlto, VidQuoteElementoID, VidQuotePrecio, VidQuotePrecioP) SELECT NEW.`VidQuoteID`, NEW.`VidQuoteLPre`, NEW.`VidQuoteItem`, NEW.`VidQuoteProdID`, NEW.`VidQuoteProdCantidad`, NEW.`VidQuoteAncho`, NEW.`VidQuoteAlto`, visintdetpre.`ElementoID`, visintdetpre.`PrecioBase`, visintdetpre.`PrecioBase` * NEW.`VidQuoteProdCantidad` FROM visintdetpre WHERE visintdetpre.`ElementoPM`=1 AND visintdetpre.`VidQuoteProdID`=NEW.`VidQuoteProdID`; END\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:0.05pt double #808080;padding:0.0194in;\"| AFTER\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| Actualiza_Item_Presupuesto\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| UPDATE\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| vidquoten2\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| <nowiki>BEGIN IF OLD.VidQuoteProdID <> NEW.VidQuoteProdID THEN DELETE FROM vidquoten3 WHERE vidquoten3.VidQuoteID=OLD.VidQuoteID AND vidquoten3.VidQuoteItem=OLD.VidQuoteItem; INSERT INTO vidquoten3 ( VidQuoteID, VidQuoteLPre, VidQuoteItem, VidQuoteProdID, VidQuoteProdCantidad, VidQuoteAncho, VidQuoteAlto, VidQuoteElementoID, VidQuotePrecio, VidQuotePrecioP) SELECT NEW.`VidQuoteID`, NEW.`VidQuoteLPre`, NEW.`VidQuoteItem`, NEW.`VidQuoteProdID`, NEW.`VidQuoteProdCantidad`, NEW.`VidQuoteAncho`, NEW.`VidQuoteAlto`, visintdetpre.`ElementoID`, visintdetpre.`PrecioBase`, visintdetpre.`PrecioBase` * NEW.`VidQuoteProdCantidad` FROM visintdetpre WHERE visintdetpre.`ElementoPM`=1 AND visintdetpre.`VidQuoteProdID`=NEW.`VidQuoteProdID`; ELSE UPDATE `fzggestion`.`vidquoten3` AS `T3`,`fzggestion`.`visintdetpre` AS `TV` SET T3.VidQuoteProdCantidad = NEW.`VidQuoteProdCantidad`, T3.VidQuoteAncho = NEW.`VidQuoteAncho`, T3.VidQuoteAlto = NEW.`VidQuoteAlto`, T3.VidQuotePrecio = TV.`PrecioBase`, T3.VidQuotePrecioP = TV.`PrecioBase` * NEW.`VidQuoteProdCantidad` WHERE T3.`VidQuoteID` = TV.`VidQuoteID` AND T3.`VidQuoteItem` = TV.`VidQuoteItem` AND T3.`VidQuoteItem` = NEW.`VidQuoteItem` AND T3.`VidQuoteProdID` = TV.`VidQuoteProdID` AND T3.`VidQuoteElementoID` = TV.`ElementoID`; END IF; END</nowiki>\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:0.05pt double #808080;padding:0.0194in;\"| AFTER\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| Baja_Item_Presupuesto\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| DELETE\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| vidquoten2\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| BEGIN DELETE FROM vidquoten3 WHERE vidquoten3.VidQuoteID=OLD.VidQuoteID AND vidquoten3.VidQuoteItem=OLD.VidQuoteItem; END\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:0.05pt double #808080;padding:0.0194in;\"| AFTER\n\n|}\n\n=== Vistas ===\n{| style=\"border-spacing:0;\"\n| style=\"border-top:0.05pt solid #000000;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| <center>\'\'\'Nombre\'\'\'</center>\n| style=\"border-top:0.05pt solid #000000;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| <center>\'\'\'Comando\'\'\'</center>\n| style=\"border-top:0.05pt solid #000000;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| <center>\'\'\'Uso\'\'\'</center>\n| style=\"border:0.05pt solid #000000;padding:0.0382in;\"| <center>\'\'\'Cross\'\'\'</center>\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Viscabdetalla\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.viscabdetalla.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Vista utilizada para agregar la información de cual es la lista de precios a utilizar para el cliente del presupuesto en tiempo real.\n\nFORM: Presupuesto\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Contactos, Vidquoten1\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Proveedores\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.proveedores.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Visualización de Contactos “Proveedores”\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Contactos\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Clientes\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.clientes.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Visualización de Contactos “Clientes”\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Contactos\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Visreppres\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.visreppres.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Vista Reporte Presupuesto Individual. Para generar una línea completa con la información de detalle de los presupuestos con las combinaciones de información a incluir en el mismo. No contiene la información estática del cliente.\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Vislineabs, Visdetaobs\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Viscompodis\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.viscompodis.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Vista de productos (DISTINCT productos) dentro de la tabla de composición ordenada por alfabéticamente.\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| \n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Viscoposimpl\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.viscomposimpl.sql\n\n\n\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Vista de los elementos de composicion con información para query\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Productos, Composición\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Visdetaobs\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.visdetaobs.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Une todas las Observaciones de cada item para los casos que se encuentren señaladas con la Descripción del Producto-Item\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Productos, Vidquoten3\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Visintdetpre\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.visintdetpre.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Reducción de vista Visprodadic aplicable al cálculo de presupuesto con los datos en tiempo real del presupuesto activo en formulario y calculando el precio correcto de acuerdo al cliente y el cálculo del valor del elemento de acuerdo al los valores de Alto y Ancho del Vano en tiempo real\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Visprodadic, Vidquoten2\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Vislineabs\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.vislineabs.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Define linea básica para reporte teniendo como base Vidquoten2, agregando la información de la cabecera + datos de descrpción de producto + el subtotal por Producto-Item\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Vidquoten1, Vidquoten2, Productos, Vissubxitem\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Visprodadic\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.visproadic.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Vista de tabla de componentes con la información de cada elemento como producto y de los precios vigentes.\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Productos, Composicion, PreciosVigentes\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Vissubxitem\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.vissubxitem.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Subtotal por Item de Presupuesto en tiempo real\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Vidquoten3\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Listavigente\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| \n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Selecciona solo el primer registro ordenado en forma descendente de la tabla de listasprecios\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Listasprecios\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Preciosvigentes\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.preciosvigentes.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Es la selección de la tabla de precios referenciando el mayor valor dentro de la tabla de listasprecios\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Listasprecios, Precios\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Preciosvigact\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.preciosvigact.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Vista de lista de precios vigentes con datos de productos para actualización columnar.\n\nFORM: Actualización por tipo de lista\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Preciosvigentes, Productos\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Visprestot\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.visprestot.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Vista de Presupuestos Totalizados por Cliente\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Visreppres\n\n|}\n\n=== Reportes ===\n{| style=\"border-spacing:0;\"\n| style=\"border-top:0.05pt solid #000000;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| <center>\'\'\'Nombre\'\'\'</center>\n| style=\"border-top:0.05pt solid #000000;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| <center>\'\'\'Comando\'\'\'</center>\n| style=\"border-top:0.05pt solid #000000;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| <center>\'\'\'Uso\'\'\'</center>\n| style=\"border:0.05pt solid #000000;padding:0.0382in;\"| <center>\'\'\'Observaciones\'\'\'</center>\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Presupuesto\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| SELECT `visreppres`.`VidQuoteID`, `visreppres`.`VidQuoteObra`, `visreppres`.`VidQuoteCliente`, `visreppres`.`VidQuoteFecha`, `visreppres`.`VidQuoteItem`, `visreppres`.`VidQuoteProdCantidad`, `visreppres`.`VidQuoteProdID`, `visreppres`.`VidQuoteDetalle`, `visreppres`.`VidQuotePrecioS`, `clientes`.`RazonSocial`, `clientes`.`Direccion`, `clientes`.`Localidad`, `clientes`.`Provincia` FROM `fzggestion`.`clientes` AS `clientes`, `fzggestion`.`visreppres` AS `visreppres` WHERE `clientes`.`ClienteID` = `visreppres`.`VidQuoteCliente` ORDER BY `visreppres`.`VidQuoteID` ASC, `visreppres`.`VidQuoteObra` ASC, `visreppres`.`VidQuoteCliente` ASC, `visreppres`.`VidQuoteItem` ASC\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Reporte de Presupuesto Individual\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Filtra por Presupuesto. Visreppres\n\n\n\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Productos\n\n\n\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| SELECT `productos`.`ProductoID`, `productos`.`CategoriaID`, `productos`.`Descripcion`, `productos`.`Magnitud`, `productos`.`InsumoIMG` FROM `fzggestion`.`productos` `productos` ORDER BY `productos`.`CategoriaID`, `productos`.`ProductoID`\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Reporte de Productos\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| \n|}\n\n\'\'\'Procedimientos\'\'\'\n\n{| style=\"border-spacing:0;\"\n| style=\"border-top:0.05pt solid #000000;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| <center>\'\'\'Nombre\'\'\'</center>\n| style=\"border-top:0.05pt solid #000000;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| <center>\'\'\'Comando\'\'\'</center>\n| style=\"border-top:0.05pt solid #000000;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| <center>\'\'\'Uso\'\'\'</center>\n| style=\"border:0.05pt solid #000000;padding:0.0382in;\"| <center>\'\'\'Observaciones\'\'\'</center>\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| CrearNuevaListaPrecios\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Procedure.CrearNuevaListaPrecios.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Agrega registración al tiempo de generar una nueva lista de precios.\n\nFORM: Crear Nueva Lista\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| \n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| DuplicaProductoCompo\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Procedure.DuplicaProductoCompo.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Copia las registraciones de un producto dentro de la tabla de composición con el atrubuto ProductoID diferente al original.\n\nFORM: Copia Composicion\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| \n\n|}\n=== ACL ===\n# Verificar que la ODB esté registrada en el profile de LO/OO (el getcontext hace referencia a eso)\n# Verificar la instalación de GNUAwk\n# Tomar nota de MACAddress del equipo.\n# Grabar con semilla de nombre de datasource con el texto -> \"sdbc:mysql:odbc:\'\'<datasource>\'\'\"\nIngreso de Registro en Tabla\n<pre>\nINSERT INTO wscontrol (\n	wskey1,\n	wskey2,\n	wsKey3\n	) \nVALUES(\n	ENCODE(<MAC Address en minúscula sin separadores>,\"sdbc:mysql:odbc:\'\'<datasource>\'\'\"),\n	ENCODE(<Cantidad de Usuarios en formato fill 0 de 3 dígitos>,\"sdbc:mysql:odbc:\'\'<datasource>\'\'\")\n	ENCODE(<FechaLimite en ISO Format>,\"sdbc:mysql:odbc:\'\'<datasource>\'\'\")\n	)\n</pre>\nEjemplo\n<pre>\nINSERT INTO wscontrol (\n	wskey1,\n	wskey2,\n	wsKey3\n	) \nVALUES(\n	ENCODE(\"e0cb4ec8dae3\",\"sdbc:mysql:odbc:FazzGlassGestion\"),\n	ENCODE(\"005\",\"sdbc:mysql:odbc:FazzGlassGestion\")\n	ENCODE(\"20120531\",\"sdbc:mysql:odbc:FazzGlassGestion\")\n	)\n</pre>\nCorroborar ACL\n<pre>\nSELECT\n	wskey1 AS Cantidad,\n	wskey2 AS Usuarios,\n	wskey2 AS Limite,\n	CAST(DECODE(wskey1,\'sdbc:mysql:odbc:FazzGlassGestion\') AS Char(12)),\n	CAST(DECODE(wskey2,\'sdbc:mysql:odbc:FazzGlassGestion\') AS Char(03))\n	CAST(DECODE(wskey3,\'sdbc:mysql:odbc:FazzGlassGestion\') AS Char(08)),\nFROM\n	wscontrol\n</pre>\n{{tecla|Ctrl|A}}','utf-8'),(92,'== Gestión Retail Aberturas ==\n*[[Gestión Retail Aberturas: Bitácora]]\n*[[Gestión Retail Aberturas: Pendientes]]\n*[[Gestión Retail Aberturas: Relaciones]]\n=== Gestión de Magnitudes ===\n\n==== Definiciones ====\n*Coeficiente: Por defecto, el valor es 1. Si necesita sumar al valor original, el coeficiente tiene que tener la parte entera al menos en 1. En el caso de magnitudes no estándar, los valores del precio del producto puede estar incluido en el mismo, por lo que hay que verificar en este caso los valores que se ingresen en la [[Tabla:precios]]\n*Offset: Por defecto, el valor es 0\n\n==== Atributos de Productos/Elementos ====\n* M2 = Metro Cuadrado\nPrecio Unitario = Precio determinado por tipo de cliente * (((((Ancho + OffsetAncho)*Coeficiente Ancho) * ((Alto + OffsetAlto)*Coeficiente Alto))/100000) * Coeficiente Elemento)\n\n* ML = Metro Lineal\nPrecio Unitario = Precio determinado por tipo de cliente * (((((Ancho + OffsetAncho) * 2 * Coeficiente Ancho) + ((Alto + OffsetAlto) * 2 * Coeficiente Alto)) / 1000) * Coeficiente Elemento)\n\n* MG = Magnitud Galarza\nPrecio Unitario = Precio determinado por tipo de cliente * ((((Alto + OffsetAlto) * CoeficienteAlto) + (Ancho + OffsetAncho) * CoeficienteAncho)) / 1000) * Coeficiente Elemento)\n\n* UN = Unidad\nPrecio Unitario = Precio determinado por tipo de cliente * Coeficiente Elemento\n\n=== Triggers ===\n{| style=\"border-spacing:0;\"\n| style=\"background-color:#c0c0c0;border-top:0.05pt double #808080;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| Trigger\n| style=\"background-color:#c0c0c0;border-top:0.05pt double #808080;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| Event\n| style=\"background-color:#c0c0c0;border-top:0.05pt double #808080;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| Table\n| style=\"background-color:#c0c0c0;border-top:0.05pt double #808080;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| Statement\n| style=\"background-color:#c0c0c0;border:0.05pt double #808080;padding:0.0194in;\"| Timing\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| Alta_ListasPrecios\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| INSERT\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| listasprecios\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| <nowiki>BEGIN DECLARE vListaVieja,vListaNueva INT(5); DECLARE vFechaModificacion DATE; DECLARE vHoraModificacion TIME; SET vListaNueva = (SELECT Lista FROM listavigente); SET vListaVieja = (SELECT MAX(listasprecios.Lista) FROM listasprecios WHERE listasprecios.Lista <> NEW.Lista); SET vFechaModificacion = CURDATE(); SET vHoraModificacion = CURTIME(); INSERT INTO precios ( `precios`.`Lista`, `precios`.`ProductoID`, `precios`.`PrecioProd01`, `precios`.`PrecioProd02`, `precios`.`PrecioProd03`, `precios`.`FechaModificacion`, `precios`.`HoraModificacion`)( SELECT vListaNueva, `precios`.`ProductoID`, `precios`.`PrecioProd01`, `precios`.`PrecioProd02`, `precios`.`PrecioProd03`, vFechaModificacion, vHoraModificacion FROM precios WHERE `precios`.`Lista` = vListaVieja); END</nowiki>\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:0.05pt double #808080;padding:0.0194in;\"| AFTER\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| Alta_LogPrecios\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| INSERT\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| logprecios\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| BEGIN DECLARE vCategoriaID,vProveedorID,vPaso VARCHAR(5); SET vCategoriaID = IF(ISNULL(`NEW`.`CategoriaID`),\' \',`NEW`.`CategoriaID`); SET vProveedorID = IF(ISNULL(`NEW`.`ProveedorID`),\' \',`NEW`.`ProveedorID`); SET `NEW`.`FechaModificacion` = CURDATE(); SET `NEW`.`HoraModificacion` = CURTIME(); SET `NEW`.`Lista` = (SELECT max(`listasprecios`.`Lista`) FROM `listasprecios`); IF ISNULL(NEW.CategoriaID) THEN IF ISNULL(NEW.ProveedorID) THEN UPDATE `precios`,`productos` SET `precios`.`PrecioProd01` = `precios`.`PrecioProd01` * `NEW`.`Coeficiente`, `precios`.`PrecioProd02` = `precios`.`PrecioProd02` * `NEW`.`Coeficiente`, `precios`.`PrecioProd03` = `precios`.`PrecioProd03` * `NEW`.`Coeficiente`, `precios`.`FechaModificacion` = CURDATE(), `precios`.`HoraModificacion` = CURTIME() WHERE `precios`.`ProductoID` = `productos`.`ProductoID` AND `precios`.`Lista` = `NEW`.`Lista`; SET vPaso=\'A\'; ELSE UPDATE `precios`,`productos` SET `precios`.`PrecioProd01` = `precios`.`PrecioProd01` * `NEW`.`Coeficiente`, `precios`.`PrecioProd02` = `precios`.`PrecioProd02` * `NEW`.`Coeficiente`, `precios`.`PrecioProd03` = `precios`.`PrecioProd03` * `NEW`.`Coeficiente`, `precios`.`FechaModificacion` = CURDATE(), `precios`.`HoraModificacion` = CURTIME() WHERE `precios`.`ProductoID` = `productos`.`ProductoID` AND `precios`.`Lista` = `NEW`.`Lista` AND `productos`.`ProveedorID` = NEW.ProveedorID; SET vPaso=\'B\'; END IF; ELSE IF ISNULL(NEW.ProveedorID) THEN UPDATE `precios`,`productos` SET `precios`.`PrecioProd01` = `precios`.`PrecioProd01` * `NEW`.`Coeficiente`, `precios`.`PrecioProd02` = `precios`.`PrecioProd02` * `NEW`.`Coeficiente`, `precios`.`PrecioProd03` = `precios`.`PrecioProd03` * `NEW`.`Coeficiente`, `precios`.`FechaModificacion` = CURDATE(), `precios`.`HoraModificacion` = CURTIME() WHERE `precios`.`ProductoID` = `productos`.`ProductoID` AND `precios`.`Lista` = `NEW`.`Lista` AND `productos`.`CategoriaID` = NEW.CategoriaID; SET vPaso=\'C\'; ELSE UPDATE `precios`,`productos` SET `precios`.`PrecioProd01` = `precios`.`PrecioProd01` * `NEW`.`Coeficiente`, `precios`.`PrecioProd02` = `precios`.`PrecioProd02` * `NEW`.`Coeficiente`, `precios`.`PrecioProd03` = `precios`.`PrecioProd03` * `NEW`.`Coeficiente`, `precios`.`FechaModificacion` = CURDATE(), `precios`.`HoraModificacion` = CURTIME() WHERE `precios`.`ProductoID` = `productos`.`ProductoID` AND `precios`.`Lista` = `NEW`.`Lista` AND `productos`.`CategoriaID` = vCategoriaID AND `productos`.`ProveedorID` = vProveedorID; SET vPaso=\'D\'; END IF; END IF; SET `NEW`.`RowsMod` = ROW_COUNT(); END\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:0.05pt double #808080;padding:0.0194in;\"| BEFORE\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| Alta_Precio\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| INSERT\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| precios\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| BEGIN SET NEW.FechaModificacion = CURDATE(), NEW.HoraModificacion = CURTIME(); END\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:0.05pt double #808080;padding:0.0194in;\"| BEFORE\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| Actualiza_Precio\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| UPDATE\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| precios\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| BEGIN SET NEW.FechaModificacion = CURDATE(), NEW.HoraModificacion = CURTIME(); END\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:0.05pt double #808080;padding:0.0194in;\"| BEFORE\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| AltaTransaccion\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| INSERT\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| transacciones\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| BEGIN SET NEW.TransaccFecha = CURDATE(), NEW.TransaccHora = CURTIME(); END\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:0.05pt double #808080;padding:0.0194in;\"| BEFORE\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| Baja_Presupuesto\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| DELETE\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| vidquoten1\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| BEGIN DELETE FROM vidquoten2 WHERE vidquoten2.VidQuoteID=OLD.VidQuoteID; DELETE FROM vidquoten3 WHERE vidquoten3.VidQuoteID=OLD.VidQuoteID; END\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:0.05pt double #808080;padding:0.0194in;\"| AFTER\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| Alta_Item_Presupuesto\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| INSERT\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| vidquoten2\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| BEGIN INSERT INTO vidquoten3 ( VidQuoteID, VidQuoteLPre, VidQuoteItem, VidQuoteProdID, VidQuoteProdCantidad, VidQuoteAncho, VidQuoteAlto, VidQuoteElementoID, VidQuotePrecio, VidQuotePrecioP) SELECT NEW.`VidQuoteID`, NEW.`VidQuoteLPre`, NEW.`VidQuoteItem`, NEW.`VidQuoteProdID`, NEW.`VidQuoteProdCantidad`, NEW.`VidQuoteAncho`, NEW.`VidQuoteAlto`, visintdetpre.`ElementoID`, visintdetpre.`PrecioBase`, visintdetpre.`PrecioBase` * NEW.`VidQuoteProdCantidad` FROM visintdetpre WHERE visintdetpre.`ElementoPM`=1 AND visintdetpre.`VidQuoteProdID`=NEW.`VidQuoteProdID`; END\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:0.05pt double #808080;padding:0.0194in;\"| AFTER\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| Actualiza_Item_Presupuesto\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| UPDATE\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| vidquoten2\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| <nowiki>BEGIN IF OLD.VidQuoteProdID <> NEW.VidQuoteProdID THEN DELETE FROM vidquoten3 WHERE vidquoten3.VidQuoteID=OLD.VidQuoteID AND vidquoten3.VidQuoteItem=OLD.VidQuoteItem; INSERT INTO vidquoten3 ( VidQuoteID, VidQuoteLPre, VidQuoteItem, VidQuoteProdID, VidQuoteProdCantidad, VidQuoteAncho, VidQuoteAlto, VidQuoteElementoID, VidQuotePrecio, VidQuotePrecioP) SELECT NEW.`VidQuoteID`, NEW.`VidQuoteLPre`, NEW.`VidQuoteItem`, NEW.`VidQuoteProdID`, NEW.`VidQuoteProdCantidad`, NEW.`VidQuoteAncho`, NEW.`VidQuoteAlto`, visintdetpre.`ElementoID`, visintdetpre.`PrecioBase`, visintdetpre.`PrecioBase` * NEW.`VidQuoteProdCantidad` FROM visintdetpre WHERE visintdetpre.`ElementoPM`=1 AND visintdetpre.`VidQuoteProdID`=NEW.`VidQuoteProdID`; ELSE UPDATE `fzggestion`.`vidquoten3` AS `T3`,`fzggestion`.`visintdetpre` AS `TV` SET T3.VidQuoteProdCantidad = NEW.`VidQuoteProdCantidad`, T3.VidQuoteAncho = NEW.`VidQuoteAncho`, T3.VidQuoteAlto = NEW.`VidQuoteAlto`, T3.VidQuotePrecio = TV.`PrecioBase`, T3.VidQuotePrecioP = TV.`PrecioBase` * NEW.`VidQuoteProdCantidad` WHERE T3.`VidQuoteID` = TV.`VidQuoteID` AND T3.`VidQuoteItem` = TV.`VidQuoteItem` AND T3.`VidQuoteItem` = NEW.`VidQuoteItem` AND T3.`VidQuoteProdID` = TV.`VidQuoteProdID` AND T3.`VidQuoteElementoID` = TV.`ElementoID`; END IF; END</nowiki>\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:0.05pt double #808080;padding:0.0194in;\"| AFTER\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| Baja_Item_Presupuesto\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| DELETE\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| vidquoten2\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| BEGIN DELETE FROM vidquoten3 WHERE vidquoten3.VidQuoteID=OLD.VidQuoteID AND vidquoten3.VidQuoteItem=OLD.VidQuoteItem; END\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:0.05pt double #808080;padding:0.0194in;\"| AFTER\n\n|}\n\n=== Vistas ===\n{| style=\"border-spacing:0;\"\n| style=\"border-top:0.05pt solid #000000;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| <center>\'\'\'Nombre\'\'\'</center>\n| style=\"border-top:0.05pt solid #000000;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| <center>\'\'\'Comando\'\'\'</center>\n| style=\"border-top:0.05pt solid #000000;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| <center>\'\'\'Uso\'\'\'</center>\n| style=\"border:0.05pt solid #000000;padding:0.0382in;\"| <center>\'\'\'Cross\'\'\'</center>\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Viscabdetalla\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.viscabdetalla.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Vista utilizada para agregar la información de cual es la lista de precios a utilizar para el cliente del presupuesto en tiempo real.\n\nFORM: Presupuesto\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Contactos, Vidquoten1\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Proveedores\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.proveedores.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Visualización de Contactos “Proveedores”\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Contactos\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Clientes\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.clientes.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Visualización de Contactos “Clientes”\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Contactos\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Visreppres\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.visreppres.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Vista Reporte Presupuesto Individual. Para generar una línea completa con la información de detalle de los presupuestos con las combinaciones de información a incluir en el mismo. No contiene la información estática del cliente.\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Vislineabs, Visdetaobs\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Viscompodis\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.viscompodis.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Vista de productos (DISTINCT productos) dentro de la tabla de composición ordenada por alfabéticamente.\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| \n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Viscoposimpl\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.viscomposimpl.sql\n\n\n\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Vista de los elementos de composicion con información para query\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Productos, Composición\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Visdetaobs\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.visdetaobs.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Une todas las Observaciones de cada item para los casos que se encuentren señaladas con la Descripción del Producto-Item\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Productos, Vidquoten3\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Visintdetpre\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.visintdetpre.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Reducción de vista Visprodadic aplicable al cálculo de presupuesto con los datos en tiempo real del presupuesto activo en formulario y calculando el precio correcto de acuerdo al cliente y el cálculo del valor del elemento de acuerdo al los valores de Alto y Ancho del Vano en tiempo real\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Visprodadic, Vidquoten2\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Vislineabs\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.vislineabs.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Define linea básica para reporte teniendo como base Vidquoten2, agregando la información de la cabecera + datos de descrpción de producto + el subtotal por Producto-Item\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Vidquoten1, Vidquoten2, Productos, Vissubxitem\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Visprodadic\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.visproadic.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Vista de tabla de componentes con la información de cada elemento como producto y de los precios vigentes.\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Productos, Composicion, PreciosVigentes\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Vissubxitem\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.vissubxitem.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Subtotal por Item de Presupuesto en tiempo real\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Vidquoten3\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Listavigente\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| \n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Selecciona solo el primer registro ordenado en forma descendente de la tabla de listasprecios\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Listasprecios\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Preciosvigentes\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.preciosvigentes.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Es la selección de la tabla de precios referenciando el mayor valor dentro de la tabla de listasprecios\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Listasprecios, Precios\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Preciosvigact\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.preciosvigact.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Vista de lista de precios vigentes con datos de productos para actualización columnar.\n\nFORM: Actualización por tipo de lista\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Preciosvigentes, Productos\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Visprestot\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.visprestot.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Vista de Presupuestos Totalizados por Cliente\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Visreppres\n\n|}\n\n=== Reportes ===\n{| style=\"border-spacing:0;\"\n| style=\"border-top:0.05pt solid #000000;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| <center>\'\'\'Nombre\'\'\'</center>\n| style=\"border-top:0.05pt solid #000000;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| <center>\'\'\'Comando\'\'\'</center>\n| style=\"border-top:0.05pt solid #000000;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| <center>\'\'\'Uso\'\'\'</center>\n| style=\"border:0.05pt solid #000000;padding:0.0382in;\"| <center>\'\'\'Observaciones\'\'\'</center>\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Presupuesto\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| SELECT `visreppres`.`VidQuoteID`, `visreppres`.`VidQuoteObra`, `visreppres`.`VidQuoteCliente`, `visreppres`.`VidQuoteFecha`, `visreppres`.`VidQuoteItem`, `visreppres`.`VidQuoteProdCantidad`, `visreppres`.`VidQuoteProdID`, `visreppres`.`VidQuoteDetalle`, `visreppres`.`VidQuotePrecioS`, `clientes`.`RazonSocial`, `clientes`.`Direccion`, `clientes`.`Localidad`, `clientes`.`Provincia` FROM `fzggestion`.`clientes` AS `clientes`, `fzggestion`.`visreppres` AS `visreppres` WHERE `clientes`.`ClienteID` = `visreppres`.`VidQuoteCliente` ORDER BY `visreppres`.`VidQuoteID` ASC, `visreppres`.`VidQuoteObra` ASC, `visreppres`.`VidQuoteCliente` ASC, `visreppres`.`VidQuoteItem` ASC\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Reporte de Presupuesto Individual\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Filtra por Presupuesto. Visreppres\n\n\n\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Productos\n\n\n\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| SELECT `productos`.`ProductoID`, `productos`.`CategoriaID`, `productos`.`Descripcion`, `productos`.`Magnitud`, `productos`.`InsumoIMG` FROM `fzggestion`.`productos` `productos` ORDER BY `productos`.`CategoriaID`, `productos`.`ProductoID`\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Reporte de Productos\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| \n|}\n\n\'\'\'Procedimientos\'\'\'\n\n{| style=\"border-spacing:0;\"\n| style=\"border-top:0.05pt solid #000000;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| <center>\'\'\'Nombre\'\'\'</center>\n| style=\"border-top:0.05pt solid #000000;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| <center>\'\'\'Comando\'\'\'</center>\n| style=\"border-top:0.05pt solid #000000;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| <center>\'\'\'Uso\'\'\'</center>\n| style=\"border:0.05pt solid #000000;padding:0.0382in;\"| <center>\'\'\'Observaciones\'\'\'</center>\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| CrearNuevaListaPrecios\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Procedure.CrearNuevaListaPrecios.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Agrega registración al tiempo de generar una nueva lista de precios.\n\nFORM: Crear Nueva Lista\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| \n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| DuplicaProductoCompo\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Procedure.DuplicaProductoCompo.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Copia las registraciones de un producto dentro de la tabla de composición con el atrubuto ProductoID diferente al original.\n\nFORM: Copia Composicion\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| \n\n|}\n=== ACL ===\n# Verificar que la ODB esté registrada en el profile de LO/OO (el getcontext hace referencia a eso)\n# Verificar la instalación de GNUAwk\n# Tomar nota de MACAddress del equipo.\n# Grabar con semilla de nombre de datasource con el texto -> \"sdbc:mysql:odbc:\'\'<datasource>\'\'\"\nIngreso de Registro en Tabla\n<pre><small>\nINSERT INTO wscontrol (\n	wskey1,\n	wskey2,\n	wsKey3\n	) \nVALUES(\n	ENCODE(<MAC Address en minúscula sin separadores>,\"sdbc:mysql:odbc:\'\'<datasource>\'\'\"),\n	ENCODE(<Cantidad de Usuarios en formato fill 0 de 3 dígitos>,\"sdbc:mysql:odbc:\'\'<datasource>\'\'\")\n	ENCODE(<FechaLimite en ISO Format>,\"sdbc:mysql:odbc:\'\'<datasource>\'\'\")\n	)\n</small></pre>\nEjemplo\n<pre><small>\nINSERT INTO wscontrol (\n	wskey1,\n	wskey2,\n	wsKey3\n	) \nVALUES(\n	ENCODE(\"e0cb4ec8dae3\",\"sdbc:mysql:odbc:FazzGlassGestion\"),\n	ENCODE(\"005\",\"sdbc:mysql:odbc:FazzGlassGestion\")\n	ENCODE(\"20120531\",\"sdbc:mysql:odbc:FazzGlassGestion\")\n	)\n</small></pre>\nCorroborar ACL\n<pre><small>\nSELECT\n	wskey1 AS Cantidad,\n	wskey2 AS Usuarios,\n	wskey2 AS Limite,\n	CAST(DECODE(wskey1,\'sdbc:mysql:odbc:FazzGlassGestion\') AS Char(12)),\n	CAST(DECODE(wskey2,\'sdbc:mysql:odbc:FazzGlassGestion\') AS Char(03))\n	CAST(DECODE(wskey3,\'sdbc:mysql:odbc:FazzGlassGestion\') AS Char(08)),\nFROM\n	wscontrol\n</small></pre>\n{{tecla|Ctrl|A}}','utf-8'),(93,'== Gestión Retail Aberturas ==\n*[[Gestión Retail Aberturas: Bitácora]]\n*[[Gestión Retail Aberturas: Pendientes]]\n*[[Gestión Retail Aberturas: Relaciones]]\n=== Gestión de Magnitudes ===\n\n==== Definiciones ====\n*Coeficiente: Por defecto, el valor es 1. Si necesita sumar al valor original, el coeficiente tiene que tener la parte entera al menos en 1. En el caso de magnitudes no estándar, los valores del precio del producto puede estar incluido en el mismo, por lo que hay que verificar en este caso los valores que se ingresen en la [[Tabla:precios]]\n*Offset: Por defecto, el valor es 0\n\n==== Atributos de Productos/Elementos ====\n* M2 = Metro Cuadrado\nPrecio Unitario = Precio determinado por tipo de cliente * (((((Ancho + OffsetAncho)*Coeficiente Ancho) * ((Alto + OffsetAlto)*Coeficiente Alto))/100000) * Coeficiente Elemento)\n\n* ML = Metro Lineal\nPrecio Unitario = Precio determinado por tipo de cliente * (((((Ancho + OffsetAncho) * 2 * Coeficiente Ancho) + ((Alto + OffsetAlto) * 2 * Coeficiente Alto)) / 1000) * Coeficiente Elemento)\n\n* MG = Magnitud Galarza\nPrecio Unitario = Precio determinado por tipo de cliente * ((((Alto + OffsetAlto) * CoeficienteAlto) + (Ancho + OffsetAncho) * CoeficienteAncho)) / 1000) * Coeficiente Elemento)\n\n* UN = Unidad\nPrecio Unitario = Precio determinado por tipo de cliente * Coeficiente Elemento\n\n=== Triggers ===\n{| style=\"border-spacing:0;\"\n| style=\"background-color:#c0c0c0;border-top:0.05pt double #808080;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| Trigger\n| style=\"background-color:#c0c0c0;border-top:0.05pt double #808080;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| Event\n| style=\"background-color:#c0c0c0;border-top:0.05pt double #808080;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| Table\n| style=\"background-color:#c0c0c0;border-top:0.05pt double #808080;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| Statement\n| style=\"background-color:#c0c0c0;border:0.05pt double #808080;padding:0.0194in;\"| Timing\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| Alta_ListasPrecios\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| INSERT\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| listasprecios\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| <nowiki>BEGIN DECLARE vListaVieja,vListaNueva INT(5); DECLARE vFechaModificacion DATE; DECLARE vHoraModificacion TIME; SET vListaNueva = (SELECT Lista FROM listavigente); SET vListaVieja = (SELECT MAX(listasprecios.Lista) FROM listasprecios WHERE listasprecios.Lista <> NEW.Lista); SET vFechaModificacion = CURDATE(); SET vHoraModificacion = CURTIME(); INSERT INTO precios ( `precios`.`Lista`, `precios`.`ProductoID`, `precios`.`PrecioProd01`, `precios`.`PrecioProd02`, `precios`.`PrecioProd03`, `precios`.`FechaModificacion`, `precios`.`HoraModificacion`)( SELECT vListaNueva, `precios`.`ProductoID`, `precios`.`PrecioProd01`, `precios`.`PrecioProd02`, `precios`.`PrecioProd03`, vFechaModificacion, vHoraModificacion FROM precios WHERE `precios`.`Lista` = vListaVieja); END</nowiki>\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:0.05pt double #808080;padding:0.0194in;\"| AFTER\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| Alta_LogPrecios\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| INSERT\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| logprecios\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| BEGIN DECLARE vCategoriaID,vProveedorID,vPaso VARCHAR(5); SET vCategoriaID = IF(ISNULL(`NEW`.`CategoriaID`),\' \',`NEW`.`CategoriaID`); SET vProveedorID = IF(ISNULL(`NEW`.`ProveedorID`),\' \',`NEW`.`ProveedorID`); SET `NEW`.`FechaModificacion` = CURDATE(); SET `NEW`.`HoraModificacion` = CURTIME(); SET `NEW`.`Lista` = (SELECT max(`listasprecios`.`Lista`) FROM `listasprecios`); IF ISNULL(NEW.CategoriaID) THEN IF ISNULL(NEW.ProveedorID) THEN UPDATE `precios`,`productos` SET `precios`.`PrecioProd01` = `precios`.`PrecioProd01` * `NEW`.`Coeficiente`, `precios`.`PrecioProd02` = `precios`.`PrecioProd02` * `NEW`.`Coeficiente`, `precios`.`PrecioProd03` = `precios`.`PrecioProd03` * `NEW`.`Coeficiente`, `precios`.`FechaModificacion` = CURDATE(), `precios`.`HoraModificacion` = CURTIME() WHERE `precios`.`ProductoID` = `productos`.`ProductoID` AND `precios`.`Lista` = `NEW`.`Lista`; SET vPaso=\'A\'; ELSE UPDATE `precios`,`productos` SET `precios`.`PrecioProd01` = `precios`.`PrecioProd01` * `NEW`.`Coeficiente`, `precios`.`PrecioProd02` = `precios`.`PrecioProd02` * `NEW`.`Coeficiente`, `precios`.`PrecioProd03` = `precios`.`PrecioProd03` * `NEW`.`Coeficiente`, `precios`.`FechaModificacion` = CURDATE(), `precios`.`HoraModificacion` = CURTIME() WHERE `precios`.`ProductoID` = `productos`.`ProductoID` AND `precios`.`Lista` = `NEW`.`Lista` AND `productos`.`ProveedorID` = NEW.ProveedorID; SET vPaso=\'B\'; END IF; ELSE IF ISNULL(NEW.ProveedorID) THEN UPDATE `precios`,`productos` SET `precios`.`PrecioProd01` = `precios`.`PrecioProd01` * `NEW`.`Coeficiente`, `precios`.`PrecioProd02` = `precios`.`PrecioProd02` * `NEW`.`Coeficiente`, `precios`.`PrecioProd03` = `precios`.`PrecioProd03` * `NEW`.`Coeficiente`, `precios`.`FechaModificacion` = CURDATE(), `precios`.`HoraModificacion` = CURTIME() WHERE `precios`.`ProductoID` = `productos`.`ProductoID` AND `precios`.`Lista` = `NEW`.`Lista` AND `productos`.`CategoriaID` = NEW.CategoriaID; SET vPaso=\'C\'; ELSE UPDATE `precios`,`productos` SET `precios`.`PrecioProd01` = `precios`.`PrecioProd01` * `NEW`.`Coeficiente`, `precios`.`PrecioProd02` = `precios`.`PrecioProd02` * `NEW`.`Coeficiente`, `precios`.`PrecioProd03` = `precios`.`PrecioProd03` * `NEW`.`Coeficiente`, `precios`.`FechaModificacion` = CURDATE(), `precios`.`HoraModificacion` = CURTIME() WHERE `precios`.`ProductoID` = `productos`.`ProductoID` AND `precios`.`Lista` = `NEW`.`Lista` AND `productos`.`CategoriaID` = vCategoriaID AND `productos`.`ProveedorID` = vProveedorID; SET vPaso=\'D\'; END IF; END IF; SET `NEW`.`RowsMod` = ROW_COUNT(); END\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:0.05pt double #808080;padding:0.0194in;\"| BEFORE\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| Alta_Precio\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| INSERT\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| precios\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| BEGIN SET NEW.FechaModificacion = CURDATE(), NEW.HoraModificacion = CURTIME(); END\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:0.05pt double #808080;padding:0.0194in;\"| BEFORE\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| Actualiza_Precio\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| UPDATE\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| precios\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| BEGIN SET NEW.FechaModificacion = CURDATE(), NEW.HoraModificacion = CURTIME(); END\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:0.05pt double #808080;padding:0.0194in;\"| BEFORE\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| AltaTransaccion\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| INSERT\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| transacciones\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| BEGIN SET NEW.TransaccFecha = CURDATE(), NEW.TransaccHora = CURTIME(); END\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:0.05pt double #808080;padding:0.0194in;\"| BEFORE\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| Baja_Presupuesto\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| DELETE\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| vidquoten1\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| BEGIN DELETE FROM vidquoten2 WHERE vidquoten2.VidQuoteID=OLD.VidQuoteID; DELETE FROM vidquoten3 WHERE vidquoten3.VidQuoteID=OLD.VidQuoteID; END\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:0.05pt double #808080;padding:0.0194in;\"| AFTER\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| Alta_Item_Presupuesto\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| INSERT\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| vidquoten2\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| BEGIN INSERT INTO vidquoten3 ( VidQuoteID, VidQuoteLPre, VidQuoteItem, VidQuoteProdID, VidQuoteProdCantidad, VidQuoteAncho, VidQuoteAlto, VidQuoteElementoID, VidQuotePrecio, VidQuotePrecioP) SELECT NEW.`VidQuoteID`, NEW.`VidQuoteLPre`, NEW.`VidQuoteItem`, NEW.`VidQuoteProdID`, NEW.`VidQuoteProdCantidad`, NEW.`VidQuoteAncho`, NEW.`VidQuoteAlto`, visintdetpre.`ElementoID`, visintdetpre.`PrecioBase`, visintdetpre.`PrecioBase` * NEW.`VidQuoteProdCantidad` FROM visintdetpre WHERE visintdetpre.`ElementoPM`=1 AND visintdetpre.`VidQuoteProdID`=NEW.`VidQuoteProdID`; END\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:0.05pt double #808080;padding:0.0194in;\"| AFTER\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| Actualiza_Item_Presupuesto\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| UPDATE\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| vidquoten2\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| <nowiki>BEGIN IF OLD.VidQuoteProdID <> NEW.VidQuoteProdID THEN DELETE FROM vidquoten3 WHERE vidquoten3.VidQuoteID=OLD.VidQuoteID AND vidquoten3.VidQuoteItem=OLD.VidQuoteItem; INSERT INTO vidquoten3 ( VidQuoteID, VidQuoteLPre, VidQuoteItem, VidQuoteProdID, VidQuoteProdCantidad, VidQuoteAncho, VidQuoteAlto, VidQuoteElementoID, VidQuotePrecio, VidQuotePrecioP) SELECT NEW.`VidQuoteID`, NEW.`VidQuoteLPre`, NEW.`VidQuoteItem`, NEW.`VidQuoteProdID`, NEW.`VidQuoteProdCantidad`, NEW.`VidQuoteAncho`, NEW.`VidQuoteAlto`, visintdetpre.`ElementoID`, visintdetpre.`PrecioBase`, visintdetpre.`PrecioBase` * NEW.`VidQuoteProdCantidad` FROM visintdetpre WHERE visintdetpre.`ElementoPM`=1 AND visintdetpre.`VidQuoteProdID`=NEW.`VidQuoteProdID`; ELSE UPDATE `fzggestion`.`vidquoten3` AS `T3`,`fzggestion`.`visintdetpre` AS `TV` SET T3.VidQuoteProdCantidad = NEW.`VidQuoteProdCantidad`, T3.VidQuoteAncho = NEW.`VidQuoteAncho`, T3.VidQuoteAlto = NEW.`VidQuoteAlto`, T3.VidQuotePrecio = TV.`PrecioBase`, T3.VidQuotePrecioP = TV.`PrecioBase` * NEW.`VidQuoteProdCantidad` WHERE T3.`VidQuoteID` = TV.`VidQuoteID` AND T3.`VidQuoteItem` = TV.`VidQuoteItem` AND T3.`VidQuoteItem` = NEW.`VidQuoteItem` AND T3.`VidQuoteProdID` = TV.`VidQuoteProdID` AND T3.`VidQuoteElementoID` = TV.`ElementoID`; END IF; END</nowiki>\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:0.05pt double #808080;padding:0.0194in;\"| AFTER\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| Baja_Item_Presupuesto\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| DELETE\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| vidquoten2\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| BEGIN DELETE FROM vidquoten3 WHERE vidquoten3.VidQuoteID=OLD.VidQuoteID AND vidquoten3.VidQuoteItem=OLD.VidQuoteItem; END\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:0.05pt double #808080;padding:0.0194in;\"| AFTER\n\n|}\n\n=== Vistas ===\n{| style=\"border-spacing:0;\"\n| style=\"border-top:0.05pt solid #000000;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| <center>\'\'\'Nombre\'\'\'</center>\n| style=\"border-top:0.05pt solid #000000;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| <center>\'\'\'Comando\'\'\'</center>\n| style=\"border-top:0.05pt solid #000000;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| <center>\'\'\'Uso\'\'\'</center>\n| style=\"border:0.05pt solid #000000;padding:0.0382in;\"| <center>\'\'\'Cross\'\'\'</center>\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Viscabdetalla\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.viscabdetalla.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Vista utilizada para agregar la información de cual es la lista de precios a utilizar para el cliente del presupuesto en tiempo real.\n\nFORM: Presupuesto\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Contactos, Vidquoten1\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Proveedores\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.proveedores.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Visualización de Contactos “Proveedores”\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Contactos\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Clientes\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.clientes.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Visualización de Contactos “Clientes”\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Contactos\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Visreppres\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.visreppres.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Vista Reporte Presupuesto Individual. Para generar una línea completa con la información de detalle de los presupuestos con las combinaciones de información a incluir en el mismo. No contiene la información estática del cliente.\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Vislineabs, Visdetaobs\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Viscompodis\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.viscompodis.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Vista de productos (DISTINCT productos) dentro de la tabla de composición ordenada por alfabéticamente.\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| \n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Viscoposimpl\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.viscomposimpl.sql\n\n\n\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Vista de los elementos de composicion con información para query\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Productos, Composición\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Visdetaobs\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.visdetaobs.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Une todas las Observaciones de cada item para los casos que se encuentren señaladas con la Descripción del Producto-Item\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Productos, Vidquoten3\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Visintdetpre\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.visintdetpre.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Reducción de vista Visprodadic aplicable al cálculo de presupuesto con los datos en tiempo real del presupuesto activo en formulario y calculando el precio correcto de acuerdo al cliente y el cálculo del valor del elemento de acuerdo al los valores de Alto y Ancho del Vano en tiempo real\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Visprodadic, Vidquoten2\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Vislineabs\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.vislineabs.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Define linea básica para reporte teniendo como base Vidquoten2, agregando la información de la cabecera + datos de descrpción de producto + el subtotal por Producto-Item\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Vidquoten1, Vidquoten2, Productos, Vissubxitem\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Visprodadic\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.visproadic.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Vista de tabla de componentes con la información de cada elemento como producto y de los precios vigentes.\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Productos, Composicion, PreciosVigentes\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Vissubxitem\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.vissubxitem.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Subtotal por Item de Presupuesto en tiempo real\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Vidquoten3\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Listavigente\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| \n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Selecciona solo el primer registro ordenado en forma descendente de la tabla de listasprecios\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Listasprecios\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Preciosvigentes\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.preciosvigentes.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Es la selección de la tabla de precios referenciando el mayor valor dentro de la tabla de listasprecios\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Listasprecios, Precios\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Preciosvigact\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.preciosvigact.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Vista de lista de precios vigentes con datos de productos para actualización columnar.\n\nFORM: Actualización por tipo de lista\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Preciosvigentes, Productos\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Visprestot\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.visprestot.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Vista de Presupuestos Totalizados por Cliente\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Visreppres\n\n|}\n\n=== Reportes ===\n{| style=\"border-spacing:0;\"\n| style=\"border-top:0.05pt solid #000000;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| <center>\'\'\'Nombre\'\'\'</center>\n| style=\"border-top:0.05pt solid #000000;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| <center>\'\'\'Comando\'\'\'</center>\n| style=\"border-top:0.05pt solid #000000;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| <center>\'\'\'Uso\'\'\'</center>\n| style=\"border:0.05pt solid #000000;padding:0.0382in;\"| <center>\'\'\'Observaciones\'\'\'</center>\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Presupuesto\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| SELECT `visreppres`.`VidQuoteID`, `visreppres`.`VidQuoteObra`, `visreppres`.`VidQuoteCliente`, `visreppres`.`VidQuoteFecha`, `visreppres`.`VidQuoteItem`, `visreppres`.`VidQuoteProdCantidad`, `visreppres`.`VidQuoteProdID`, `visreppres`.`VidQuoteDetalle`, `visreppres`.`VidQuotePrecioS`, `clientes`.`RazonSocial`, `clientes`.`Direccion`, `clientes`.`Localidad`, `clientes`.`Provincia` FROM `fzggestion`.`clientes` AS `clientes`, `fzggestion`.`visreppres` AS `visreppres` WHERE `clientes`.`ClienteID` = `visreppres`.`VidQuoteCliente` ORDER BY `visreppres`.`VidQuoteID` ASC, `visreppres`.`VidQuoteObra` ASC, `visreppres`.`VidQuoteCliente` ASC, `visreppres`.`VidQuoteItem` ASC\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Reporte de Presupuesto Individual\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Filtra por Presupuesto. Visreppres\n\n\n\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Productos\n\n\n\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| SELECT `productos`.`ProductoID`, `productos`.`CategoriaID`, `productos`.`Descripcion`, `productos`.`Magnitud`, `productos`.`InsumoIMG` FROM `fzggestion`.`productos` `productos` ORDER BY `productos`.`CategoriaID`, `productos`.`ProductoID`\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Reporte de Productos\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| \n|}\n\n\'\'\'Procedimientos\'\'\'\n\n{| style=\"border-spacing:0;\"\n| style=\"border-top:0.05pt solid #000000;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| <center>\'\'\'Nombre\'\'\'</center>\n| style=\"border-top:0.05pt solid #000000;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| <center>\'\'\'Comando\'\'\'</center>\n| style=\"border-top:0.05pt solid #000000;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| <center>\'\'\'Uso\'\'\'</center>\n| style=\"border:0.05pt solid #000000;padding:0.0382in;\"| <center>\'\'\'Observaciones\'\'\'</center>\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| CrearNuevaListaPrecios\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Procedure.CrearNuevaListaPrecios.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Agrega registración al tiempo de generar una nueva lista de precios.\n\nFORM: Crear Nueva Lista\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| \n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| DuplicaProductoCompo\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Procedure.DuplicaProductoCompo.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Copia las registraciones de un producto dentro de la tabla de composición con el atrubuto ProductoID diferente al original.\n\nFORM: Copia Composicion\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| \n\n|}\n=== ACL ===\n# Verificar que la ODB esté registrada en el profile de LO/OO (el getcontext hace referencia a eso)\n# Verificar la instalación de GNUAwk\n# Tomar nota de MACAddress del equipo.\n# Grabar con semilla de nombre de datasource con el texto -> \"sdbc:mysql:odbc:\'\'<datasource>\'\'\"\nIngreso de Registro en Tabla\n<small><pre>\nINSERT INTO wscontrol (\n	wskey1,\n	wskey2,\n	wsKey3\n	) \nVALUES(\n	ENCODE(<MAC Address en minúscula sin separadores>,\"sdbc:mysql:odbc:\'\'<datasource>\'\'\"),\n	ENCODE(<Cantidad de Usuarios en formato fill 0 de 3 dígitos>,\"sdbc:mysql:odbc:\'\'<datasource>\'\'\")\n	ENCODE(<FechaLimite en ISO Format>,\"sdbc:mysql:odbc:\'\'<datasource>\'\'\")\n	)\n</pre></small>\nEjemplo\n<small><pre>\nINSERT INTO wscontrol (\n	wskey1,\n	wskey2,\n	wsKey3\n	) \nVALUES(\n	ENCODE(\"e0cb4ec8dae3\",\"sdbc:mysql:odbc:FazzGlassGestion\"),\n	ENCODE(\"005\",\"sdbc:mysql:odbc:FazzGlassGestion\")\n	ENCODE(\"20120531\",\"sdbc:mysql:odbc:FazzGlassGestion\")\n	)\n</pre></small>\nCorroborar ACL\n<small><pre>\nSELECT\n	wskey1 AS Cantidad,\n	wskey2 AS Usuarios,\n	wskey2 AS Limite,\n	CAST(DECODE(wskey1,\'sdbc:mysql:odbc:FazzGlassGestion\') AS Char(12)),\n	CAST(DECODE(wskey2,\'sdbc:mysql:odbc:FazzGlassGestion\') AS Char(03))\n	CAST(DECODE(wskey3,\'sdbc:mysql:odbc:FazzGlassGestion\') AS Char(08)),\nFROM\n	wscontrol\n</pre></small>\n{{tecla|Ctrl|A}}','utf-8'),(94,'== Gestión Retail Aberturas ==\n*[[Gestión Retail Aberturas: Bitácora]]\n*[[Gestión Retail Aberturas: Pendientes]]\n*[[Gestión Retail Aberturas: Relaciones]]\n=== Gestión de Magnitudes ===\n\n==== Definiciones ====\n*Coeficiente: Por defecto, el valor es 1. Si necesita sumar al valor original, el coeficiente tiene que tener la parte entera al menos en 1. En el caso de magnitudes no estándar, los valores del precio del producto puede estar incluido en el mismo, por lo que hay que verificar en este caso los valores que se ingresen en la [[Tabla:precios]]\n*Offset: Por defecto, el valor es 0\n\n==== Atributos de Productos/Elementos ====\n* M2 = Metro Cuadrado\nPrecio Unitario = Precio determinado por tipo de cliente * (((((Ancho + OffsetAncho)*Coeficiente Ancho) * ((Alto + OffsetAlto)*Coeficiente Alto))/100000) * Coeficiente Elemento)\n\n* ML = Metro Lineal\nPrecio Unitario = Precio determinado por tipo de cliente * (((((Ancho + OffsetAncho) * 2 * Coeficiente Ancho) + ((Alto + OffsetAlto) * 2 * Coeficiente Alto)) / 1000) * Coeficiente Elemento)\n\n* MG = Magnitud Galarza\nPrecio Unitario = Precio determinado por tipo de cliente * ((((Alto + OffsetAlto) * CoeficienteAlto) + (Ancho + OffsetAncho) * CoeficienteAncho)) / 1000) * Coeficiente Elemento)\n\n* UN = Unidad\nPrecio Unitario = Precio determinado por tipo de cliente * Coeficiente Elemento\n\n=== Triggers ===\n{| style=\"border-spacing:0;\"\n| style=\"background-color:#c0c0c0;border-top:0.05pt double #808080;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| Trigger\n| style=\"background-color:#c0c0c0;border-top:0.05pt double #808080;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| Event\n| style=\"background-color:#c0c0c0;border-top:0.05pt double #808080;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| Table\n| style=\"background-color:#c0c0c0;border-top:0.05pt double #808080;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| Statement\n| style=\"background-color:#c0c0c0;border:0.05pt double #808080;padding:0.0194in;\"| Timing\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| Alta_ListasPrecios\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| INSERT\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| listasprecios\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| <nowiki>BEGIN DECLARE vListaVieja,vListaNueva INT(5); DECLARE vFechaModificacion DATE; DECLARE vHoraModificacion TIME; SET vListaNueva = (SELECT Lista FROM listavigente); SET vListaVieja = (SELECT MAX(listasprecios.Lista) FROM listasprecios WHERE listasprecios.Lista <> NEW.Lista); SET vFechaModificacion = CURDATE(); SET vHoraModificacion = CURTIME(); INSERT INTO precios ( `precios`.`Lista`, `precios`.`ProductoID`, `precios`.`PrecioProd01`, `precios`.`PrecioProd02`, `precios`.`PrecioProd03`, `precios`.`FechaModificacion`, `precios`.`HoraModificacion`)( SELECT vListaNueva, `precios`.`ProductoID`, `precios`.`PrecioProd01`, `precios`.`PrecioProd02`, `precios`.`PrecioProd03`, vFechaModificacion, vHoraModificacion FROM precios WHERE `precios`.`Lista` = vListaVieja); END</nowiki>\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:0.05pt double #808080;padding:0.0194in;\"| AFTER\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| Alta_LogPrecios\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| INSERT\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| logprecios\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| BEGIN DECLARE vCategoriaID,vProveedorID,vPaso VARCHAR(5); SET vCategoriaID = IF(ISNULL(`NEW`.`CategoriaID`),\' \',`NEW`.`CategoriaID`); SET vProveedorID = IF(ISNULL(`NEW`.`ProveedorID`),\' \',`NEW`.`ProveedorID`); SET `NEW`.`FechaModificacion` = CURDATE(); SET `NEW`.`HoraModificacion` = CURTIME(); SET `NEW`.`Lista` = (SELECT max(`listasprecios`.`Lista`) FROM `listasprecios`); IF ISNULL(NEW.CategoriaID) THEN IF ISNULL(NEW.ProveedorID) THEN UPDATE `precios`,`productos` SET `precios`.`PrecioProd01` = `precios`.`PrecioProd01` * `NEW`.`Coeficiente`, `precios`.`PrecioProd02` = `precios`.`PrecioProd02` * `NEW`.`Coeficiente`, `precios`.`PrecioProd03` = `precios`.`PrecioProd03` * `NEW`.`Coeficiente`, `precios`.`FechaModificacion` = CURDATE(), `precios`.`HoraModificacion` = CURTIME() WHERE `precios`.`ProductoID` = `productos`.`ProductoID` AND `precios`.`Lista` = `NEW`.`Lista`; SET vPaso=\'A\'; ELSE UPDATE `precios`,`productos` SET `precios`.`PrecioProd01` = `precios`.`PrecioProd01` * `NEW`.`Coeficiente`, `precios`.`PrecioProd02` = `precios`.`PrecioProd02` * `NEW`.`Coeficiente`, `precios`.`PrecioProd03` = `precios`.`PrecioProd03` * `NEW`.`Coeficiente`, `precios`.`FechaModificacion` = CURDATE(), `precios`.`HoraModificacion` = CURTIME() WHERE `precios`.`ProductoID` = `productos`.`ProductoID` AND `precios`.`Lista` = `NEW`.`Lista` AND `productos`.`ProveedorID` = NEW.ProveedorID; SET vPaso=\'B\'; END IF; ELSE IF ISNULL(NEW.ProveedorID) THEN UPDATE `precios`,`productos` SET `precios`.`PrecioProd01` = `precios`.`PrecioProd01` * `NEW`.`Coeficiente`, `precios`.`PrecioProd02` = `precios`.`PrecioProd02` * `NEW`.`Coeficiente`, `precios`.`PrecioProd03` = `precios`.`PrecioProd03` * `NEW`.`Coeficiente`, `precios`.`FechaModificacion` = CURDATE(), `precios`.`HoraModificacion` = CURTIME() WHERE `precios`.`ProductoID` = `productos`.`ProductoID` AND `precios`.`Lista` = `NEW`.`Lista` AND `productos`.`CategoriaID` = NEW.CategoriaID; SET vPaso=\'C\'; ELSE UPDATE `precios`,`productos` SET `precios`.`PrecioProd01` = `precios`.`PrecioProd01` * `NEW`.`Coeficiente`, `precios`.`PrecioProd02` = `precios`.`PrecioProd02` * `NEW`.`Coeficiente`, `precios`.`PrecioProd03` = `precios`.`PrecioProd03` * `NEW`.`Coeficiente`, `precios`.`FechaModificacion` = CURDATE(), `precios`.`HoraModificacion` = CURTIME() WHERE `precios`.`ProductoID` = `productos`.`ProductoID` AND `precios`.`Lista` = `NEW`.`Lista` AND `productos`.`CategoriaID` = vCategoriaID AND `productos`.`ProveedorID` = vProveedorID; SET vPaso=\'D\'; END IF; END IF; SET `NEW`.`RowsMod` = ROW_COUNT(); END\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:0.05pt double #808080;padding:0.0194in;\"| BEFORE\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| Alta_Precio\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| INSERT\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| precios\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| BEGIN SET NEW.FechaModificacion = CURDATE(), NEW.HoraModificacion = CURTIME(); END\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:0.05pt double #808080;padding:0.0194in;\"| BEFORE\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| Actualiza_Precio\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| UPDATE\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| precios\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| BEGIN SET NEW.FechaModificacion = CURDATE(), NEW.HoraModificacion = CURTIME(); END\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:0.05pt double #808080;padding:0.0194in;\"| BEFORE\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| AltaTransaccion\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| INSERT\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| transacciones\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| BEGIN SET NEW.TransaccFecha = CURDATE(), NEW.TransaccHora = CURTIME(); END\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:0.05pt double #808080;padding:0.0194in;\"| BEFORE\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| Baja_Presupuesto\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| DELETE\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| vidquoten1\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| BEGIN DELETE FROM vidquoten2 WHERE vidquoten2.VidQuoteID=OLD.VidQuoteID; DELETE FROM vidquoten3 WHERE vidquoten3.VidQuoteID=OLD.VidQuoteID; END\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:0.05pt double #808080;padding:0.0194in;\"| AFTER\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| Alta_Item_Presupuesto\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| INSERT\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| vidquoten2\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| BEGIN INSERT INTO vidquoten3 ( VidQuoteID, VidQuoteLPre, VidQuoteItem, VidQuoteProdID, VidQuoteProdCantidad, VidQuoteAncho, VidQuoteAlto, VidQuoteElementoID, VidQuotePrecio, VidQuotePrecioP) SELECT NEW.`VidQuoteID`, NEW.`VidQuoteLPre`, NEW.`VidQuoteItem`, NEW.`VidQuoteProdID`, NEW.`VidQuoteProdCantidad`, NEW.`VidQuoteAncho`, NEW.`VidQuoteAlto`, visintdetpre.`ElementoID`, visintdetpre.`PrecioBase`, visintdetpre.`PrecioBase` * NEW.`VidQuoteProdCantidad` FROM visintdetpre WHERE visintdetpre.`ElementoPM`=1 AND visintdetpre.`VidQuoteProdID`=NEW.`VidQuoteProdID`; END\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:0.05pt double #808080;padding:0.0194in;\"| AFTER\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| Actualiza_Item_Presupuesto\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| UPDATE\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| vidquoten2\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| <nowiki>BEGIN IF OLD.VidQuoteProdID <> NEW.VidQuoteProdID THEN DELETE FROM vidquoten3 WHERE vidquoten3.VidQuoteID=OLD.VidQuoteID AND vidquoten3.VidQuoteItem=OLD.VidQuoteItem; INSERT INTO vidquoten3 ( VidQuoteID, VidQuoteLPre, VidQuoteItem, VidQuoteProdID, VidQuoteProdCantidad, VidQuoteAncho, VidQuoteAlto, VidQuoteElementoID, VidQuotePrecio, VidQuotePrecioP) SELECT NEW.`VidQuoteID`, NEW.`VidQuoteLPre`, NEW.`VidQuoteItem`, NEW.`VidQuoteProdID`, NEW.`VidQuoteProdCantidad`, NEW.`VidQuoteAncho`, NEW.`VidQuoteAlto`, visintdetpre.`ElementoID`, visintdetpre.`PrecioBase`, visintdetpre.`PrecioBase` * NEW.`VidQuoteProdCantidad` FROM visintdetpre WHERE visintdetpre.`ElementoPM`=1 AND visintdetpre.`VidQuoteProdID`=NEW.`VidQuoteProdID`; ELSE UPDATE `fzggestion`.`vidquoten3` AS `T3`,`fzggestion`.`visintdetpre` AS `TV` SET T3.VidQuoteProdCantidad = NEW.`VidQuoteProdCantidad`, T3.VidQuoteAncho = NEW.`VidQuoteAncho`, T3.VidQuoteAlto = NEW.`VidQuoteAlto`, T3.VidQuotePrecio = TV.`PrecioBase`, T3.VidQuotePrecioP = TV.`PrecioBase` * NEW.`VidQuoteProdCantidad` WHERE T3.`VidQuoteID` = TV.`VidQuoteID` AND T3.`VidQuoteItem` = TV.`VidQuoteItem` AND T3.`VidQuoteItem` = NEW.`VidQuoteItem` AND T3.`VidQuoteProdID` = TV.`VidQuoteProdID` AND T3.`VidQuoteElementoID` = TV.`ElementoID`; END IF; END</nowiki>\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:0.05pt double #808080;padding:0.0194in;\"| AFTER\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| Baja_Item_Presupuesto\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| DELETE\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| vidquoten2\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| BEGIN DELETE FROM vidquoten3 WHERE vidquoten3.VidQuoteID=OLD.VidQuoteID AND vidquoten3.VidQuoteItem=OLD.VidQuoteItem; END\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:0.05pt double #808080;padding:0.0194in;\"| AFTER\n\n|}\n\n=== Vistas ===\n{| style=\"border-spacing:0;\"\n| style=\"border-top:0.05pt solid #000000;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| <center>\'\'\'Nombre\'\'\'</center>\n| style=\"border-top:0.05pt solid #000000;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| <center>\'\'\'Comando\'\'\'</center>\n| style=\"border-top:0.05pt solid #000000;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| <center>\'\'\'Uso\'\'\'</center>\n| style=\"border:0.05pt solid #000000;padding:0.0382in;\"| <center>\'\'\'Cross\'\'\'</center>\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Viscabdetalla\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.viscabdetalla.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Vista utilizada para agregar la información de cual es la lista de precios a utilizar para el cliente del presupuesto en tiempo real.\n\nFORM: Presupuesto\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Contactos, Vidquoten1\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Proveedores\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.proveedores.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Visualización de Contactos “Proveedores”\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Contactos\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Clientes\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.clientes.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Visualización de Contactos “Clientes”\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Contactos\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Visreppres\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.visreppres.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Vista Reporte Presupuesto Individual. Para generar una línea completa con la información de detalle de los presupuestos con las combinaciones de información a incluir en el mismo. No contiene la información estática del cliente.\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Vislineabs, Visdetaobs\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Viscompodis\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.viscompodis.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Vista de productos (DISTINCT productos) dentro de la tabla de composición ordenada por alfabéticamente.\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| \n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Viscoposimpl\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.viscomposimpl.sql\n\n\n\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Vista de los elementos de composicion con información para query\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Productos, Composición\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Visdetaobs\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.visdetaobs.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Une todas las Observaciones de cada item para los casos que se encuentren señaladas con la Descripción del Producto-Item\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Productos, Vidquoten3\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Visintdetpre\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.visintdetpre.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Reducción de vista Visprodadic aplicable al cálculo de presupuesto con los datos en tiempo real del presupuesto activo en formulario y calculando el precio correcto de acuerdo al cliente y el cálculo del valor del elemento de acuerdo al los valores de Alto y Ancho del Vano en tiempo real\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Visprodadic, Vidquoten2\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Vislineabs\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.vislineabs.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Define linea básica para reporte teniendo como base Vidquoten2, agregando la información de la cabecera + datos de descrpción de producto + el subtotal por Producto-Item\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Vidquoten1, Vidquoten2, Productos, Vissubxitem\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Visprodadic\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.visproadic.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Vista de tabla de componentes con la información de cada elemento como producto y de los precios vigentes.\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Productos, Composicion, PreciosVigentes\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Vissubxitem\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.vissubxitem.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Subtotal por Item de Presupuesto en tiempo real\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Vidquoten3\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Listavigente\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| \n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Selecciona solo el primer registro ordenado en forma descendente de la tabla de listasprecios\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Listasprecios\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Preciosvigentes\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.preciosvigentes.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Es la selección de la tabla de precios referenciando el mayor valor dentro de la tabla de listasprecios\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Listasprecios, Precios\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Preciosvigact\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.preciosvigact.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Vista de lista de precios vigentes con datos de productos para actualización columnar.\n\nFORM: Actualización por tipo de lista\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Preciosvigentes, Productos\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Visprestot\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.visprestot.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Vista de Presupuestos Totalizados por Cliente\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Visreppres\n\n|}\n\n=== Reportes ===\n{| style=\"border-spacing:0;\"\n| style=\"border-top:0.05pt solid #000000;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| <center>\'\'\'Nombre\'\'\'</center>\n| style=\"border-top:0.05pt solid #000000;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| <center>\'\'\'Comando\'\'\'</center>\n| style=\"border-top:0.05pt solid #000000;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| <center>\'\'\'Uso\'\'\'</center>\n| style=\"border:0.05pt solid #000000;padding:0.0382in;\"| <center>\'\'\'Observaciones\'\'\'</center>\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Presupuesto\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| SELECT `visreppres`.`VidQuoteID`, `visreppres`.`VidQuoteObra`, `visreppres`.`VidQuoteCliente`, `visreppres`.`VidQuoteFecha`, `visreppres`.`VidQuoteItem`, `visreppres`.`VidQuoteProdCantidad`, `visreppres`.`VidQuoteProdID`, `visreppres`.`VidQuoteDetalle`, `visreppres`.`VidQuotePrecioS`, `clientes`.`RazonSocial`, `clientes`.`Direccion`, `clientes`.`Localidad`, `clientes`.`Provincia` FROM `fzggestion`.`clientes` AS `clientes`, `fzggestion`.`visreppres` AS `visreppres` WHERE `clientes`.`ClienteID` = `visreppres`.`VidQuoteCliente` ORDER BY `visreppres`.`VidQuoteID` ASC, `visreppres`.`VidQuoteObra` ASC, `visreppres`.`VidQuoteCliente` ASC, `visreppres`.`VidQuoteItem` ASC\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Reporte de Presupuesto Individual\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Filtra por Presupuesto. Visreppres\n\n\n\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Productos\n\n\n\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| SELECT `productos`.`ProductoID`, `productos`.`CategoriaID`, `productos`.`Descripcion`, `productos`.`Magnitud`, `productos`.`InsumoIMG` FROM `fzggestion`.`productos` `productos` ORDER BY `productos`.`CategoriaID`, `productos`.`ProductoID`\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Reporte de Productos\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| \n|}\n\n\'\'\'Procedimientos\'\'\'\n\n{| style=\"border-spacing:0;\"\n| style=\"border-top:0.05pt solid #000000;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| <center>\'\'\'Nombre\'\'\'</center>\n| style=\"border-top:0.05pt solid #000000;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| <center>\'\'\'Comando\'\'\'</center>\n| style=\"border-top:0.05pt solid #000000;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| <center>\'\'\'Uso\'\'\'</center>\n| style=\"border:0.05pt solid #000000;padding:0.0382in;\"| <center>\'\'\'Observaciones\'\'\'</center>\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| CrearNuevaListaPrecios\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Procedure.CrearNuevaListaPrecios.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Agrega registración al tiempo de generar una nueva lista de precios.\n\nFORM: Crear Nueva Lista\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| \n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| DuplicaProductoCompo\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Procedure.DuplicaProductoCompo.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Copia las registraciones de un producto dentro de la tabla de composición con el atrubuto ProductoID diferente al original.\n\nFORM: Copia Composicion\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| \n\n|}\n=== ACL ===\n# Verificar que la ODB esté registrada en el profile de LO/OO (el getcontext hace referencia a eso)\n# Verificar la instalación de GNUAwk\n# Tomar nota de MACAddress del equipo.\n# Grabar con semilla de nombre de datasource con el texto -> \"sdbc:mysql:odbc:\'\'<datasource>\'\'\"\n\'\'\'Ingreso de Registro en Tabla\'\'\'\n<small><pre>\nINSERT INTO wscontrol (\n	wskey1,\n	wskey2,\n	wsKey3\n	) \nVALUES(\n	ENCODE(<MAC Address en minúscula sin separadores>,\"sdbc:mysql:odbc:<datasource>\"),\n	ENCODE(<Cantidad de Usuarios en formato fill 0 de 3 dígitos>,\"sdbc:mysql:odbc:<datasource>\")\n	ENCODE(<FechaLimite en ISO Format>,\"sdbc:mysql:odbc:<datasource>\")\n	)\n</pre></small>\n\'\'\'Ejemplo\'\'\'\n<small><pre>\nINSERT INTO wscontrol (\n	wskey1,\n	wskey2,\n	wsKey3\n	) \nVALUES(\n	ENCODE(\"e0cb4ec8dae3\",\"sdbc:mysql:odbc:FazzGlassGestion\"),\n	ENCODE(\"005\",\"sdbc:mysql:odbc:FazzGlassGestion\")\n	ENCODE(\"20120531\",\"sdbc:mysql:odbc:FazzGlassGestion\")\n	)\n</pre></small>\n\'\'\'Corroborar ACL\'\'\'\n<small><pre>\nSELECT\n	wskey1 AS Cantidad,\n	wskey2 AS Usuarios,\n	wskey2 AS Limite,\n	CAST(DECODE(wskey1,\'sdbc:mysql:odbc:FazzGlassGestion\') AS Char(12)),\n	CAST(DECODE(wskey2,\'sdbc:mysql:odbc:FazzGlassGestion\') AS Char(03))\n	CAST(DECODE(wskey3,\'sdbc:mysql:odbc:FazzGlassGestion\') AS Char(08)),\nFROM\n	wscontrol\n</pre></small>\n{{tecla|Ctrl|A}}','utf-8'),(95,'== Gestión Retail Aberturas ==\n*[[Gestión Retail Aberturas: Bitácora]]\n*[[Gestión Retail Aberturas: Pendientes]]\n*[[Gestión Retail Aberturas: Relaciones]]\n=== Gestión de Magnitudes ===\n\n==== Definiciones ====\n*Coeficiente: Por defecto, el valor es 1. Si necesita sumar al valor original, el coeficiente tiene que tener la parte entera al menos en 1. En el caso de magnitudes no estándar, los valores del precio del producto puede estar incluido en el mismo, por lo que hay que verificar en este caso los valores que se ingresen en la [[Tabla:precios]]\n*Offset: Por defecto, el valor es 0\n\n==== Atributos de Productos/Elementos ====\n* M2 = Metro Cuadrado\nPrecio Unitario = Precio determinado por tipo de cliente * (((((Ancho + OffsetAncho)*Coeficiente Ancho) * ((Alto + OffsetAlto)*Coeficiente Alto))/100000) * Coeficiente Elemento)\n\n* ML = Metro Lineal\nPrecio Unitario = Precio determinado por tipo de cliente * (((((Ancho + OffsetAncho) * 2 * Coeficiente Ancho) + ((Alto + OffsetAlto) * 2 * Coeficiente Alto)) / 1000) * Coeficiente Elemento)\n\n* MG = Magnitud Galarza\nPrecio Unitario = Precio determinado por tipo de cliente * ((((Alto + OffsetAlto) * CoeficienteAlto) + (Ancho + OffsetAncho) * CoeficienteAncho)) / 1000) * Coeficiente Elemento)\n\n* UN = Unidad\nPrecio Unitario = Precio determinado por tipo de cliente * Coeficiente Elemento\n\n=== Triggers ===\n<small>\n{| style=\"border-spacing:0;\"\n| style=\"background-color:#c0c0c0;border-top:0.05pt double #808080;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| Trigger\n| style=\"background-color:#c0c0c0;border-top:0.05pt double #808080;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| Event\n| style=\"background-color:#c0c0c0;border-top:0.05pt double #808080;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| Table\n| style=\"background-color:#c0c0c0;border-top:0.05pt double #808080;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| Statement\n| style=\"background-color:#c0c0c0;border:0.05pt double #808080;padding:0.0194in;\"| Timing\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| Alta_ListasPrecios\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| INSERT\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| listasprecios\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| <nowiki>BEGIN DECLARE vListaVieja,vListaNueva INT(5); DECLARE vFechaModificacion DATE; DECLARE vHoraModificacion TIME; SET vListaNueva = (SELECT Lista FROM listavigente); SET vListaVieja = (SELECT MAX(listasprecios.Lista) FROM listasprecios WHERE listasprecios.Lista <> NEW.Lista); SET vFechaModificacion = CURDATE(); SET vHoraModificacion = CURTIME(); INSERT INTO precios ( `precios`.`Lista`, `precios`.`ProductoID`, `precios`.`PrecioProd01`, `precios`.`PrecioProd02`, `precios`.`PrecioProd03`, `precios`.`FechaModificacion`, `precios`.`HoraModificacion`)( SELECT vListaNueva, `precios`.`ProductoID`, `precios`.`PrecioProd01`, `precios`.`PrecioProd02`, `precios`.`PrecioProd03`, vFechaModificacion, vHoraModificacion FROM precios WHERE `precios`.`Lista` = vListaVieja); END</nowiki>\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:0.05pt double #808080;padding:0.0194in;\"| AFTER\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| Alta_LogPrecios\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| INSERT\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| logprecios\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| BEGIN DECLARE vCategoriaID,vProveedorID,vPaso VARCHAR(5); SET vCategoriaID = IF(ISNULL(`NEW`.`CategoriaID`),\' \',`NEW`.`CategoriaID`); SET vProveedorID = IF(ISNULL(`NEW`.`ProveedorID`),\' \',`NEW`.`ProveedorID`); SET `NEW`.`FechaModificacion` = CURDATE(); SET `NEW`.`HoraModificacion` = CURTIME(); SET `NEW`.`Lista` = (SELECT max(`listasprecios`.`Lista`) FROM `listasprecios`); IF ISNULL(NEW.CategoriaID) THEN IF ISNULL(NEW.ProveedorID) THEN UPDATE `precios`,`productos` SET `precios`.`PrecioProd01` = `precios`.`PrecioProd01` * `NEW`.`Coeficiente`, `precios`.`PrecioProd02` = `precios`.`PrecioProd02` * `NEW`.`Coeficiente`, `precios`.`PrecioProd03` = `precios`.`PrecioProd03` * `NEW`.`Coeficiente`, `precios`.`FechaModificacion` = CURDATE(), `precios`.`HoraModificacion` = CURTIME() WHERE `precios`.`ProductoID` = `productos`.`ProductoID` AND `precios`.`Lista` = `NEW`.`Lista`; SET vPaso=\'A\'; ELSE UPDATE `precios`,`productos` SET `precios`.`PrecioProd01` = `precios`.`PrecioProd01` * `NEW`.`Coeficiente`, `precios`.`PrecioProd02` = `precios`.`PrecioProd02` * `NEW`.`Coeficiente`, `precios`.`PrecioProd03` = `precios`.`PrecioProd03` * `NEW`.`Coeficiente`, `precios`.`FechaModificacion` = CURDATE(), `precios`.`HoraModificacion` = CURTIME() WHERE `precios`.`ProductoID` = `productos`.`ProductoID` AND `precios`.`Lista` = `NEW`.`Lista` AND `productos`.`ProveedorID` = NEW.ProveedorID; SET vPaso=\'B\'; END IF; ELSE IF ISNULL(NEW.ProveedorID) THEN UPDATE `precios`,`productos` SET `precios`.`PrecioProd01` = `precios`.`PrecioProd01` * `NEW`.`Coeficiente`, `precios`.`PrecioProd02` = `precios`.`PrecioProd02` * `NEW`.`Coeficiente`, `precios`.`PrecioProd03` = `precios`.`PrecioProd03` * `NEW`.`Coeficiente`, `precios`.`FechaModificacion` = CURDATE(), `precios`.`HoraModificacion` = CURTIME() WHERE `precios`.`ProductoID` = `productos`.`ProductoID` AND `precios`.`Lista` = `NEW`.`Lista` AND `productos`.`CategoriaID` = NEW.CategoriaID; SET vPaso=\'C\'; ELSE UPDATE `precios`,`productos` SET `precios`.`PrecioProd01` = `precios`.`PrecioProd01` * `NEW`.`Coeficiente`, `precios`.`PrecioProd02` = `precios`.`PrecioProd02` * `NEW`.`Coeficiente`, `precios`.`PrecioProd03` = `precios`.`PrecioProd03` * `NEW`.`Coeficiente`, `precios`.`FechaModificacion` = CURDATE(), `precios`.`HoraModificacion` = CURTIME() WHERE `precios`.`ProductoID` = `productos`.`ProductoID` AND `precios`.`Lista` = `NEW`.`Lista` AND `productos`.`CategoriaID` = vCategoriaID AND `productos`.`ProveedorID` = vProveedorID; SET vPaso=\'D\'; END IF; END IF; SET `NEW`.`RowsMod` = ROW_COUNT(); END\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:0.05pt double #808080;padding:0.0194in;\"| BEFORE\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| Alta_Precio\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| INSERT\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| precios\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| BEGIN SET NEW.FechaModificacion = CURDATE(), NEW.HoraModificacion = CURTIME(); END\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:0.05pt double #808080;padding:0.0194in;\"| BEFORE\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| Actualiza_Precio\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| UPDATE\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| precios\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| BEGIN SET NEW.FechaModificacion = CURDATE(), NEW.HoraModificacion = CURTIME(); END\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:0.05pt double #808080;padding:0.0194in;\"| BEFORE\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| AltaTransaccion\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| INSERT\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| transacciones\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| BEGIN SET NEW.TransaccFecha = CURDATE(), NEW.TransaccHora = CURTIME(); END\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:0.05pt double #808080;padding:0.0194in;\"| BEFORE\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| Baja_Presupuesto\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| DELETE\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| vidquoten1\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| BEGIN DELETE FROM vidquoten2 WHERE vidquoten2.VidQuoteID=OLD.VidQuoteID; DELETE FROM vidquoten3 WHERE vidquoten3.VidQuoteID=OLD.VidQuoteID; END\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:0.05pt double #808080;padding:0.0194in;\"| AFTER\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| Alta_Item_Presupuesto\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| INSERT\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| vidquoten2\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| BEGIN INSERT INTO vidquoten3 ( VidQuoteID, VidQuoteLPre, VidQuoteItem, VidQuoteProdID, VidQuoteProdCantidad, VidQuoteAncho, VidQuoteAlto, VidQuoteElementoID, VidQuotePrecio, VidQuotePrecioP) SELECT NEW.`VidQuoteID`, NEW.`VidQuoteLPre`, NEW.`VidQuoteItem`, NEW.`VidQuoteProdID`, NEW.`VidQuoteProdCantidad`, NEW.`VidQuoteAncho`, NEW.`VidQuoteAlto`, visintdetpre.`ElementoID`, visintdetpre.`PrecioBase`, visintdetpre.`PrecioBase` * NEW.`VidQuoteProdCantidad` FROM visintdetpre WHERE visintdetpre.`ElementoPM`=1 AND visintdetpre.`VidQuoteProdID`=NEW.`VidQuoteProdID`; END\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:0.05pt double #808080;padding:0.0194in;\"| AFTER\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| Actualiza_Item_Presupuesto\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| UPDATE\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| vidquoten2\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| <nowiki>BEGIN IF OLD.VidQuoteProdID <> NEW.VidQuoteProdID THEN DELETE FROM vidquoten3 WHERE vidquoten3.VidQuoteID=OLD.VidQuoteID AND vidquoten3.VidQuoteItem=OLD.VidQuoteItem; INSERT INTO vidquoten3 ( VidQuoteID, VidQuoteLPre, VidQuoteItem, VidQuoteProdID, VidQuoteProdCantidad, VidQuoteAncho, VidQuoteAlto, VidQuoteElementoID, VidQuotePrecio, VidQuotePrecioP) SELECT NEW.`VidQuoteID`, NEW.`VidQuoteLPre`, NEW.`VidQuoteItem`, NEW.`VidQuoteProdID`, NEW.`VidQuoteProdCantidad`, NEW.`VidQuoteAncho`, NEW.`VidQuoteAlto`, visintdetpre.`ElementoID`, visintdetpre.`PrecioBase`, visintdetpre.`PrecioBase` * NEW.`VidQuoteProdCantidad` FROM visintdetpre WHERE visintdetpre.`ElementoPM`=1 AND visintdetpre.`VidQuoteProdID`=NEW.`VidQuoteProdID`; ELSE UPDATE `fzggestion`.`vidquoten3` AS `T3`,`fzggestion`.`visintdetpre` AS `TV` SET T3.VidQuoteProdCantidad = NEW.`VidQuoteProdCantidad`, T3.VidQuoteAncho = NEW.`VidQuoteAncho`, T3.VidQuoteAlto = NEW.`VidQuoteAlto`, T3.VidQuotePrecio = TV.`PrecioBase`, T3.VidQuotePrecioP = TV.`PrecioBase` * NEW.`VidQuoteProdCantidad` WHERE T3.`VidQuoteID` = TV.`VidQuoteID` AND T3.`VidQuoteItem` = TV.`VidQuoteItem` AND T3.`VidQuoteItem` = NEW.`VidQuoteItem` AND T3.`VidQuoteProdID` = TV.`VidQuoteProdID` AND T3.`VidQuoteElementoID` = TV.`ElementoID`; END IF; END</nowiki>\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:0.05pt double #808080;padding:0.0194in;\"| AFTER\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| Baja_Item_Presupuesto\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| DELETE\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| vidquoten2\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| BEGIN DELETE FROM vidquoten3 WHERE vidquoten3.VidQuoteID=OLD.VidQuoteID AND vidquoten3.VidQuoteItem=OLD.VidQuoteItem; END\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:0.05pt double #808080;padding:0.0194in;\"| AFTER\n\n|}\n</small>\n\n=== Vistas ===\n{| style=\"border-spacing:0;\"\n| style=\"border-top:0.05pt solid #000000;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| <center>\'\'\'Nombre\'\'\'</center>\n| style=\"border-top:0.05pt solid #000000;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| <center>\'\'\'Comando\'\'\'</center>\n| style=\"border-top:0.05pt solid #000000;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| <center>\'\'\'Uso\'\'\'</center>\n| style=\"border:0.05pt solid #000000;padding:0.0382in;\"| <center>\'\'\'Cross\'\'\'</center>\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Viscabdetalla\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.viscabdetalla.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Vista utilizada para agregar la información de cual es la lista de precios a utilizar para el cliente del presupuesto en tiempo real.\n\nFORM: Presupuesto\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Contactos, Vidquoten1\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Proveedores\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.proveedores.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Visualización de Contactos “Proveedores”\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Contactos\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Clientes\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.clientes.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Visualización de Contactos “Clientes”\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Contactos\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Visreppres\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.visreppres.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Vista Reporte Presupuesto Individual. Para generar una línea completa con la información de detalle de los presupuestos con las combinaciones de información a incluir en el mismo. No contiene la información estática del cliente.\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Vislineabs, Visdetaobs\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Viscompodis\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.viscompodis.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Vista de productos (DISTINCT productos) dentro de la tabla de composición ordenada por alfabéticamente.\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| \n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Viscoposimpl\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.viscomposimpl.sql\n\n\n\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Vista de los elementos de composicion con información para query\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Productos, Composición\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Visdetaobs\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.visdetaobs.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Une todas las Observaciones de cada item para los casos que se encuentren señaladas con la Descripción del Producto-Item\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Productos, Vidquoten3\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Visintdetpre\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.visintdetpre.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Reducción de vista Visprodadic aplicable al cálculo de presupuesto con los datos en tiempo real del presupuesto activo en formulario y calculando el precio correcto de acuerdo al cliente y el cálculo del valor del elemento de acuerdo al los valores de Alto y Ancho del Vano en tiempo real\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Visprodadic, Vidquoten2\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Vislineabs\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.vislineabs.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Define linea básica para reporte teniendo como base Vidquoten2, agregando la información de la cabecera + datos de descrpción de producto + el subtotal por Producto-Item\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Vidquoten1, Vidquoten2, Productos, Vissubxitem\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Visprodadic\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.visproadic.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Vista de tabla de componentes con la información de cada elemento como producto y de los precios vigentes.\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Productos, Composicion, PreciosVigentes\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Vissubxitem\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.vissubxitem.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Subtotal por Item de Presupuesto en tiempo real\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Vidquoten3\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Listavigente\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| \n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Selecciona solo el primer registro ordenado en forma descendente de la tabla de listasprecios\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Listasprecios\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Preciosvigentes\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.preciosvigentes.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Es la selección de la tabla de precios referenciando el mayor valor dentro de la tabla de listasprecios\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Listasprecios, Precios\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Preciosvigact\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.preciosvigact.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Vista de lista de precios vigentes con datos de productos para actualización columnar.\n\nFORM: Actualización por tipo de lista\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Preciosvigentes, Productos\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Visprestot\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.visprestot.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Vista de Presupuestos Totalizados por Cliente\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Visreppres\n\n|}\n\n=== Reportes ===\n{| style=\"border-spacing:0;\"\n| style=\"border-top:0.05pt solid #000000;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| <center>\'\'\'Nombre\'\'\'</center>\n| style=\"border-top:0.05pt solid #000000;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| <center>\'\'\'Comando\'\'\'</center>\n| style=\"border-top:0.05pt solid #000000;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| <center>\'\'\'Uso\'\'\'</center>\n| style=\"border:0.05pt solid #000000;padding:0.0382in;\"| <center>\'\'\'Observaciones\'\'\'</center>\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Presupuesto\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| SELECT `visreppres`.`VidQuoteID`, `visreppres`.`VidQuoteObra`, `visreppres`.`VidQuoteCliente`, `visreppres`.`VidQuoteFecha`, `visreppres`.`VidQuoteItem`, `visreppres`.`VidQuoteProdCantidad`, `visreppres`.`VidQuoteProdID`, `visreppres`.`VidQuoteDetalle`, `visreppres`.`VidQuotePrecioS`, `clientes`.`RazonSocial`, `clientes`.`Direccion`, `clientes`.`Localidad`, `clientes`.`Provincia` FROM `fzggestion`.`clientes` AS `clientes`, `fzggestion`.`visreppres` AS `visreppres` WHERE `clientes`.`ClienteID` = `visreppres`.`VidQuoteCliente` ORDER BY `visreppres`.`VidQuoteID` ASC, `visreppres`.`VidQuoteObra` ASC, `visreppres`.`VidQuoteCliente` ASC, `visreppres`.`VidQuoteItem` ASC\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Reporte de Presupuesto Individual\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Filtra por Presupuesto. Visreppres\n\n\n\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Productos\n\n\n\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| SELECT `productos`.`ProductoID`, `productos`.`CategoriaID`, `productos`.`Descripcion`, `productos`.`Magnitud`, `productos`.`InsumoIMG` FROM `fzggestion`.`productos` `productos` ORDER BY `productos`.`CategoriaID`, `productos`.`ProductoID`\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Reporte de Productos\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| \n|}\n\n\'\'\'Procedimientos\'\'\'\n\n{| style=\"border-spacing:0;\"\n| style=\"border-top:0.05pt solid #000000;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| <center>\'\'\'Nombre\'\'\'</center>\n| style=\"border-top:0.05pt solid #000000;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| <center>\'\'\'Comando\'\'\'</center>\n| style=\"border-top:0.05pt solid #000000;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| <center>\'\'\'Uso\'\'\'</center>\n| style=\"border:0.05pt solid #000000;padding:0.0382in;\"| <center>\'\'\'Observaciones\'\'\'</center>\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| CrearNuevaListaPrecios\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Procedure.CrearNuevaListaPrecios.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Agrega registración al tiempo de generar una nueva lista de precios.\n\nFORM: Crear Nueva Lista\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| \n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| DuplicaProductoCompo\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Procedure.DuplicaProductoCompo.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Copia las registraciones de un producto dentro de la tabla de composición con el atrubuto ProductoID diferente al original.\n\nFORM: Copia Composicion\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| \n\n|}\n=== ACL ===\n# Verificar que la ODB esté registrada en el profile de LO/OO (el getcontext hace referencia a eso)\n# Verificar la instalación de GNUAwk\n# Tomar nota de MACAddress del equipo.\n# Grabar con semilla de nombre de datasource con el texto -> \"sdbc:mysql:odbc:\'\'<datasource>\'\'\"\n\'\'\'Ingreso de Registro en Tabla\'\'\'\n<small><pre>\nINSERT INTO wscontrol (\n	wskey1,\n	wskey2,\n	wsKey3\n	) \nVALUES(\n	ENCODE(<MAC Address en minúscula sin separadores>,\"sdbc:mysql:odbc:<datasource>\"),\n	ENCODE(<Cantidad de Usuarios en formato fill 0 de 3 dígitos>,\"sdbc:mysql:odbc:<datasource>\")\n	ENCODE(<FechaLimite en ISO Format>,\"sdbc:mysql:odbc:<datasource>\")\n	)\n</pre></small>\n\'\'\'Ejemplo\'\'\'\n<small><pre>\nINSERT INTO wscontrol (\n	wskey1,\n	wskey2,\n	wsKey3\n	) \nVALUES(\n	ENCODE(\"e0cb4ec8dae3\",\"sdbc:mysql:odbc:FazzGlassGestion\"),\n	ENCODE(\"005\",\"sdbc:mysql:odbc:FazzGlassGestion\")\n	ENCODE(\"20120531\",\"sdbc:mysql:odbc:FazzGlassGestion\")\n	)\n</pre></small>\n\'\'\'Corroborar ACL\'\'\'\n<small><pre>\nSELECT\n	wskey1 AS Cantidad,\n	wskey2 AS Usuarios,\n	wskey2 AS Limite,\n	CAST(DECODE(wskey1,\'sdbc:mysql:odbc:FazzGlassGestion\') AS Char(12)),\n	CAST(DECODE(wskey2,\'sdbc:mysql:odbc:FazzGlassGestion\') AS Char(03))\n	CAST(DECODE(wskey3,\'sdbc:mysql:odbc:FazzGlassGestion\') AS Char(08)),\nFROM\n	wscontrol\n</pre></small>\n{{tecla|Ctrl|A}}','utf-8'),(96,'== Gestión Retail Aberturas ==\n*[[Gestión Retail Aberturas: Bitácora]]\n*[[Gestión Retail Aberturas: Pendientes]]\n*[[Gestión Retail Aberturas: Relaciones]]\n=== Gestión de Magnitudes ===\n\n==== Definiciones ====\n*Coeficiente: Por defecto, el valor es 1. Si necesita sumar al valor original, el coeficiente tiene que tener la parte entera al menos en 1. En el caso de magnitudes no estándar, los valores del precio del producto puede estar incluido en el mismo, por lo que hay que verificar en este caso los valores que se ingresen en la [[Tabla:precios]]\n*Offset: Por defecto, el valor es 0\n\n==== Atributos de Productos/Elementos ====\n* M2 = Metro Cuadrado\nPrecio Unitario = Precio determinado por tipo de cliente * (((((Ancho + OffsetAncho)*Coeficiente Ancho) * ((Alto + OffsetAlto)*Coeficiente Alto))/100000) * Coeficiente Elemento)\n\n* ML = Metro Lineal\nPrecio Unitario = Precio determinado por tipo de cliente * (((((Ancho + OffsetAncho) * 2 * Coeficiente Ancho) + ((Alto + OffsetAlto) * 2 * Coeficiente Alto)) / 1000) * Coeficiente Elemento)\n\n* MG = Magnitud Galarza\nPrecio Unitario = Precio determinado por tipo de cliente * ((((Alto + OffsetAlto) * CoeficienteAlto) + (Ancho + OffsetAncho) * CoeficienteAncho)) / 1000) * Coeficiente Elemento)\n\n* UN = Unidad\nPrecio Unitario = Precio determinado por tipo de cliente * Coeficiente Elemento\n\n=== Triggers ===\n<small>\n{| style=\"border-spacing:0;\"\n| style=\"background-color:#c0c0c0;border-top:0.05pt double #808080;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| Trigger\n| style=\"background-color:#c0c0c0;border-top:0.05pt double #808080;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| Event\n| style=\"background-color:#c0c0c0;border-top:0.05pt double #808080;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| Table\n| style=\"background-color:#c0c0c0;border-top:0.05pt double #808080;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| Statement\n| style=\"background-color:#c0c0c0;border:0.05pt double #808080;padding:0.0194in;\"| Timing\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| Alta_ListasPrecios\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| INSERT\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| listasprecios\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| <nowiki>BEGIN DECLARE vListaVieja,vListaNueva INT(5); DECLARE vFechaModificacion DATE; DECLARE vHoraModificacion TIME; SET vListaNueva = (SELECT Lista FROM listavigente); SET vListaVieja = (SELECT MAX(listasprecios.Lista) FROM listasprecios WHERE listasprecios.Lista <> NEW.Lista); SET vFechaModificacion = CURDATE(); SET vHoraModificacion = CURTIME(); INSERT INTO precios ( `precios`.`Lista`, `precios`.`ProductoID`, `precios`.`PrecioProd01`, `precios`.`PrecioProd02`, `precios`.`PrecioProd03`, `precios`.`FechaModificacion`, `precios`.`HoraModificacion`)( SELECT vListaNueva, `precios`.`ProductoID`, `precios`.`PrecioProd01`, `precios`.`PrecioProd02`, `precios`.`PrecioProd03`, vFechaModificacion, vHoraModificacion FROM precios WHERE `precios`.`Lista` = vListaVieja); END</nowiki>\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:0.05pt double #808080;padding:0.0194in;\"| AFTER\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| Alta_LogPrecios\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| INSERT\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| logprecios\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| BEGIN DECLARE vCategoriaID,vProveedorID,vPaso VARCHAR(5); SET vCategoriaID = IF(ISNULL(`NEW`.`CategoriaID`),\' \',`NEW`.`CategoriaID`); SET vProveedorID = IF(ISNULL(`NEW`.`ProveedorID`),\' \',`NEW`.`ProveedorID`); SET `NEW`.`FechaModificacion` = CURDATE(); SET `NEW`.`HoraModificacion` = CURTIME(); SET `NEW`.`Lista` = (SELECT max(`listasprecios`.`Lista`) FROM `listasprecios`); IF ISNULL(NEW.CategoriaID) THEN IF ISNULL(NEW.ProveedorID) THEN UPDATE `precios`,`productos` SET `precios`.`PrecioProd01` = `precios`.`PrecioProd01` * `NEW`.`Coeficiente`, `precios`.`PrecioProd02` = `precios`.`PrecioProd02` * `NEW`.`Coeficiente`, `precios`.`PrecioProd03` = `precios`.`PrecioProd03` * `NEW`.`Coeficiente`, `precios`.`FechaModificacion` = CURDATE(), `precios`.`HoraModificacion` = CURTIME() WHERE `precios`.`ProductoID` = `productos`.`ProductoID` AND `precios`.`Lista` = `NEW`.`Lista`; SET vPaso=\'A\'; ELSE UPDATE `precios`,`productos` SET `precios`.`PrecioProd01` = `precios`.`PrecioProd01` * `NEW`.`Coeficiente`, `precios`.`PrecioProd02` = `precios`.`PrecioProd02` * `NEW`.`Coeficiente`, `precios`.`PrecioProd03` = `precios`.`PrecioProd03` * `NEW`.`Coeficiente`, `precios`.`FechaModificacion` = CURDATE(), `precios`.`HoraModificacion` = CURTIME() WHERE `precios`.`ProductoID` = `productos`.`ProductoID` AND `precios`.`Lista` = `NEW`.`Lista` AND `productos`.`ProveedorID` = NEW.ProveedorID; SET vPaso=\'B\'; END IF; ELSE IF ISNULL(NEW.ProveedorID) THEN UPDATE `precios`,`productos` SET `precios`.`PrecioProd01` = `precios`.`PrecioProd01` * `NEW`.`Coeficiente`, `precios`.`PrecioProd02` = `precios`.`PrecioProd02` * `NEW`.`Coeficiente`, `precios`.`PrecioProd03` = `precios`.`PrecioProd03` * `NEW`.`Coeficiente`, `precios`.`FechaModificacion` = CURDATE(), `precios`.`HoraModificacion` = CURTIME() WHERE `precios`.`ProductoID` = `productos`.`ProductoID` AND `precios`.`Lista` = `NEW`.`Lista` AND `productos`.`CategoriaID` = NEW.CategoriaID; SET vPaso=\'C\'; ELSE UPDATE `precios`,`productos` SET `precios`.`PrecioProd01` = `precios`.`PrecioProd01` * `NEW`.`Coeficiente`, `precios`.`PrecioProd02` = `precios`.`PrecioProd02` * `NEW`.`Coeficiente`, `precios`.`PrecioProd03` = `precios`.`PrecioProd03` * `NEW`.`Coeficiente`, `precios`.`FechaModificacion` = CURDATE(), `precios`.`HoraModificacion` = CURTIME() WHERE `precios`.`ProductoID` = `productos`.`ProductoID` AND `precios`.`Lista` = `NEW`.`Lista` AND `productos`.`CategoriaID` = vCategoriaID AND `productos`.`ProveedorID` = vProveedorID; SET vPaso=\'D\'; END IF; END IF; SET `NEW`.`RowsMod` = ROW_COUNT(); END\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:0.05pt double #808080;padding:0.0194in;\"| BEFORE\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| Alta_Precio\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| INSERT\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| precios\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| BEGIN SET NEW.FechaModificacion = CURDATE(), NEW.HoraModificacion = CURTIME(); END\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:0.05pt double #808080;padding:0.0194in;\"| BEFORE\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| Actualiza_Precio\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| UPDATE\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| precios\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| BEGIN SET NEW.FechaModificacion = CURDATE(), NEW.HoraModificacion = CURTIME(); END\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:0.05pt double #808080;padding:0.0194in;\"| BEFORE\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| AltaTransaccion\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| INSERT\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| transacciones\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| BEGIN SET NEW.TransaccFecha = CURDATE(), NEW.TransaccHora = CURTIME(); END\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:0.05pt double #808080;padding:0.0194in;\"| BEFORE\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| Baja_Presupuesto\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| DELETE\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| vidquoten1\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| BEGIN DELETE FROM vidquoten2 WHERE vidquoten2.VidQuoteID=OLD.VidQuoteID; DELETE FROM vidquoten3 WHERE vidquoten3.VidQuoteID=OLD.VidQuoteID; END\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:0.05pt double #808080;padding:0.0194in;\"| AFTER\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| Alta_Item_Presupuesto\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| INSERT\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| vidquoten2\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| BEGIN INSERT INTO vidquoten3 ( VidQuoteID, VidQuoteLPre, VidQuoteItem, VidQuoteProdID, VidQuoteProdCantidad, VidQuoteAncho, VidQuoteAlto, VidQuoteElementoID, VidQuotePrecio, VidQuotePrecioP) SELECT NEW.`VidQuoteID`, NEW.`VidQuoteLPre`, NEW.`VidQuoteItem`, NEW.`VidQuoteProdID`, NEW.`VidQuoteProdCantidad`, NEW.`VidQuoteAncho`, NEW.`VidQuoteAlto`, visintdetpre.`ElementoID`, visintdetpre.`PrecioBase`, visintdetpre.`PrecioBase` * NEW.`VidQuoteProdCantidad` FROM visintdetpre WHERE visintdetpre.`ElementoPM`=1 AND visintdetpre.`VidQuoteProdID`=NEW.`VidQuoteProdID`; END\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:0.05pt double #808080;padding:0.0194in;\"| AFTER\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| Actualiza_Item_Presupuesto\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| UPDATE\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| vidquoten2\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| <nowiki>BEGIN IF OLD.VidQuoteProdID <> NEW.VidQuoteProdID THEN DELETE FROM vidquoten3 WHERE vidquoten3.VidQuoteID=OLD.VidQuoteID AND vidquoten3.VidQuoteItem=OLD.VidQuoteItem; INSERT INTO vidquoten3 ( VidQuoteID, VidQuoteLPre, VidQuoteItem, VidQuoteProdID, VidQuoteProdCantidad, VidQuoteAncho, VidQuoteAlto, VidQuoteElementoID, VidQuotePrecio, VidQuotePrecioP) SELECT NEW.`VidQuoteID`, NEW.`VidQuoteLPre`, NEW.`VidQuoteItem`, NEW.`VidQuoteProdID`, NEW.`VidQuoteProdCantidad`, NEW.`VidQuoteAncho`, NEW.`VidQuoteAlto`, visintdetpre.`ElementoID`, visintdetpre.`PrecioBase`, visintdetpre.`PrecioBase` * NEW.`VidQuoteProdCantidad` FROM visintdetpre WHERE visintdetpre.`ElementoPM`=1 AND visintdetpre.`VidQuoteProdID`=NEW.`VidQuoteProdID`; ELSE UPDATE `fzggestion`.`vidquoten3` AS `T3`,`fzggestion`.`visintdetpre` AS `TV` SET T3.VidQuoteProdCantidad = NEW.`VidQuoteProdCantidad`, T3.VidQuoteAncho = NEW.`VidQuoteAncho`, T3.VidQuoteAlto = NEW.`VidQuoteAlto`, T3.VidQuotePrecio = TV.`PrecioBase`, T3.VidQuotePrecioP = TV.`PrecioBase` * NEW.`VidQuoteProdCantidad` WHERE T3.`VidQuoteID` = TV.`VidQuoteID` AND T3.`VidQuoteItem` = TV.`VidQuoteItem` AND T3.`VidQuoteItem` = NEW.`VidQuoteItem` AND T3.`VidQuoteProdID` = TV.`VidQuoteProdID` AND T3.`VidQuoteElementoID` = TV.`ElementoID`; END IF; END</nowiki>\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:0.05pt double #808080;padding:0.0194in;\"| AFTER\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| Baja_Item_Presupuesto\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| DELETE\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| vidquoten2\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| BEGIN DELETE FROM vidquoten3 WHERE vidquoten3.VidQuoteID=OLD.VidQuoteID AND vidquoten3.VidQuoteItem=OLD.VidQuoteItem; END\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:0.05pt double #808080;padding:0.0194in;\"| AFTER\n\n|}\n</small>\n\n=== Vistas ===\n{| style=\"border-spacing:0;\"\n| style=\"border-top:0.05pt solid #000000;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| <center>\'\'\'Nombre\'\'\'</center>\n| style=\"border-top:0.05pt solid #000000;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| <center>\'\'\'Comando\'\'\'</center>\n| style=\"border-top:0.05pt solid #000000;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| <center>\'\'\'Uso\'\'\'</center>\n| style=\"border:0.05pt solid #000000;padding:0.0382in;\"| <center>\'\'\'Cross\'\'\'</center>\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Viscabdetalla\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.viscabdetalla.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Vista utilizada para agregar la información de cual es la lista de precios a utilizar para el cliente del presupuesto en tiempo real.\n\nFORM: Presupuesto\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Contactos, Vidquoten1\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Proveedores\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.proveedores.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Visualización de Contactos “Proveedores”\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Contactos\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Clientes\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.clientes.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Visualización de Contactos “Clientes”\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Contactos\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Visreppres\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.visreppres.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Vista Reporte Presupuesto Individual. Para generar una línea completa con la información de detalle de los presupuestos con las combinaciones de información a incluir en el mismo. No contiene la información estática del cliente.\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Vislineabs, Visdetaobs\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Viscompodis\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.viscompodis.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Vista de productos (DISTINCT productos) dentro de la tabla de composición ordenada por alfabéticamente.\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| \n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Viscoposimpl\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.viscomposimpl.sql\n\n\n\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Vista de los elementos de composicion con información para query\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Productos, Composición\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Visdetaobs\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.visdetaobs.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Une todas las Observaciones de cada item para los casos que se encuentren señaladas con la Descripción del Producto-Item\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Productos, Vidquoten3\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Visintdetpre\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.visintdetpre.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Reducción de vista Visprodadic aplicable al cálculo de presupuesto con los datos en tiempo real del presupuesto activo en formulario y calculando el precio correcto de acuerdo al cliente y el cálculo del valor del elemento de acuerdo al los valores de Alto y Ancho del Vano en tiempo real\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Visprodadic, Vidquoten2\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Vislineabs\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.vislineabs.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Define linea básica para reporte teniendo como base Vidquoten2, agregando la información de la cabecera + datos de descrpción de producto + el subtotal por Producto-Item\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Vidquoten1, Vidquoten2, Productos, Vissubxitem\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Visprodadic\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.visproadic.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Vista de tabla de componentes con la información de cada elemento como producto y de los precios vigentes.\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Productos, Composicion, PreciosVigentes\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Vissubxitem\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.vissubxitem.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Subtotal por Item de Presupuesto en tiempo real\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Vidquoten3\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Listavigente\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| \n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Selecciona solo el primer registro ordenado en forma descendente de la tabla de listasprecios\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Listasprecios\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Preciosvigentes\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.preciosvigentes.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Es la selección de la tabla de precios referenciando el mayor valor dentro de la tabla de listasprecios\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Listasprecios, Precios\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Preciosvigact\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.preciosvigact.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Vista de lista de precios vigentes con datos de productos para actualización columnar.\n\nFORM: Actualización por tipo de lista\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Preciosvigentes, Productos\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Visprestot\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.visprestot.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Vista de Presupuestos Totalizados por Cliente\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Visreppres\n\n|}\n\n=== Reportes ===\n<small>\n{| style=\"border-spacing:0;\"\n| style=\"border-top:0.05pt solid #000000;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| <center>\'\'\'Nombre\'\'\'</center>\n| style=\"border-top:0.05pt solid #000000;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| <center>\'\'\'Comando\'\'\'</center>\n| style=\"border-top:0.05pt solid #000000;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| <center>\'\'\'Uso\'\'\'</center>\n| style=\"border:0.05pt solid #000000;padding:0.0382in;\"| <center>\'\'\'Observaciones\'\'\'</center>\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Presupuesto\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| SELECT `visreppres`.`VidQuoteID`, `visreppres`.`VidQuoteObra`, `visreppres`.`VidQuoteCliente`, `visreppres`.`VidQuoteFecha`, `visreppres`.`VidQuoteItem`, `visreppres`.`VidQuoteProdCantidad`, `visreppres`.`VidQuoteProdID`, `visreppres`.`VidQuoteDetalle`, `visreppres`.`VidQuotePrecioS`, `clientes`.`RazonSocial`, `clientes`.`Direccion`, `clientes`.`Localidad`, `clientes`.`Provincia` FROM `fzggestion`.`clientes` AS `clientes`, `fzggestion`.`visreppres` AS `visreppres` WHERE `clientes`.`ClienteID` = `visreppres`.`VidQuoteCliente` ORDER BY `visreppres`.`VidQuoteID` ASC, `visreppres`.`VidQuoteObra` ASC, `visreppres`.`VidQuoteCliente` ASC, `visreppres`.`VidQuoteItem` ASC\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Reporte de Presupuesto Individual\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Filtra por Presupuesto. Visreppres\n\n\n\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Productos\n\n\n\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| SELECT `productos`.`ProductoID`, `productos`.`CategoriaID`, `productos`.`Descripcion`, `productos`.`Magnitud`, `productos`.`InsumoIMG` FROM `fzggestion`.`productos` `productos` ORDER BY `productos`.`CategoriaID`, `productos`.`ProductoID`\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Reporte de Productos\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| \n|}\n</small>\n=== Procedimientos ===\n<small>\n{| style=\"border-spacing:0;\"\n| style=\"border-top:0.05pt solid #000000;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| <center>\'\'\'Nombre\'\'\'</center>\n| style=\"border-top:0.05pt solid #000000;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| <center>\'\'\'Comando\'\'\'</center>\n| style=\"border-top:0.05pt solid #000000;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| <center>\'\'\'Uso\'\'\'</center>\n| style=\"border:0.05pt solid #000000;padding:0.0382in;\"| <center>\'\'\'Observaciones\'\'\'</center>\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| CrearNuevaListaPrecios\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Procedure.CrearNuevaListaPrecios.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Agrega registración al tiempo de generar una nueva lista de precios.\n\nFORM: Crear Nueva Lista\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| \n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| DuplicaProductoCompo\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Procedure.DuplicaProductoCompo.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Copia las registraciones de un producto dentro de la tabla de composición con el atrubuto ProductoID diferente al original.\n\nFORM: Copia Composicion\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| \n\n|}\n</small>\n\n=== ACL ===\n# Verificar que la ODB esté registrada en el profile de LO/OO (el getcontext hace referencia a eso)\n# Verificar la instalación de GNUAwk\n# Tomar nota de MACAddress del equipo.\n# Grabar con semilla de nombre de datasource con el texto -> \"sdbc:mysql:odbc:\'\'<datasource>\'\'\"\n\'\'\'Ingreso de Registro en Tabla\'\'\'\n<small><pre>\nINSERT INTO wscontrol (\n	wskey1,\n	wskey2,\n	wsKey3\n	) \nVALUES(\n	ENCODE(<MAC Address en minúscula sin separadores>,\"sdbc:mysql:odbc:<datasource>\"),\n	ENCODE(<Cantidad de Usuarios en formato fill 0 de 3 dígitos>,\"sdbc:mysql:odbc:<datasource>\")\n	ENCODE(<FechaLimite en ISO Format>,\"sdbc:mysql:odbc:<datasource>\")\n	)\n</pre></small>\n\'\'\'Ejemplo\'\'\'\n<small><pre>\nINSERT INTO wscontrol (\n	wskey1,\n	wskey2,\n	wsKey3\n	) \nVALUES(\n	ENCODE(\"e0cb4ec8dae3\",\"sdbc:mysql:odbc:FazzGlassGestion\"),\n	ENCODE(\"005\",\"sdbc:mysql:odbc:FazzGlassGestion\")\n	ENCODE(\"20120531\",\"sdbc:mysql:odbc:FazzGlassGestion\")\n	)\n</pre></small>\n\'\'\'Corroborar ACL\'\'\'\n<small><pre>\nSELECT\n	wskey1 AS Cantidad,\n	wskey2 AS Usuarios,\n	wskey2 AS Limite,\n	CAST(DECODE(wskey1,\'sdbc:mysql:odbc:FazzGlassGestion\') AS Char(12)),\n	CAST(DECODE(wskey2,\'sdbc:mysql:odbc:FazzGlassGestion\') AS Char(03))\n	CAST(DECODE(wskey3,\'sdbc:mysql:odbc:FazzGlassGestion\') AS Char(08)),\nFROM\n	wscontrol\n</pre></small>\n{{tecla|Ctrl|A}}','utf-8'),(97,'== Gestión Retail Aberturas ==\n*[[Gestión Retail Aberturas: Bitácora]]\n*[[Gestión Retail Aberturas: Pendientes]]\n*[[Gestión Retail Aberturas: Relaciones]]\n=== Gestión de Magnitudes ===\n\n==== Definiciones ====\n*Coeficiente: Por defecto, el valor es 1. Si necesita sumar al valor original, el coeficiente tiene que tener la parte entera al menos en 1. En el caso de magnitudes no estándar, los valores del precio del producto puede estar incluido en el mismo, por lo que hay que verificar en este caso los valores que se ingresen en la [[Tabla:precios]]\n*Offset: Por defecto, el valor es 0\n\n==== Atributos de Productos/Elementos ====\n* M2 = Metro Cuadrado\nPrecio Unitario = Precio determinado por tipo de cliente * (((((Ancho + OffsetAncho)*Coeficiente Ancho) * ((Alto + OffsetAlto)*Coeficiente Alto))/100000) * Coeficiente Elemento)\n\n* ML = Metro Lineal\nPrecio Unitario = Precio determinado por tipo de cliente * (((((Ancho + OffsetAncho) * 2 * Coeficiente Ancho) + ((Alto + OffsetAlto) * 2 * Coeficiente Alto)) / 1000) * Coeficiente Elemento)\n\n* MG = Magnitud Galarza\nPrecio Unitario = Precio determinado por tipo de cliente * ((((Alto + OffsetAlto) * CoeficienteAlto) + (Ancho + OffsetAncho) * CoeficienteAncho)) / 1000) * Coeficiente Elemento)\n\n* UN = Unidad\nPrecio Unitario = Precio determinado por tipo de cliente * Coeficiente Elemento\n\n=== Triggers ===\n<small>\n{| style=\"border-spacing:0;\"\n| style=\"background-color:#c0c0c0;border-top:0.05pt double #808080;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| Trigger\n| style=\"background-color:#c0c0c0;border-top:0.05pt double #808080;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| Event\n| style=\"background-color:#c0c0c0;border-top:0.05pt double #808080;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| Table\n| style=\"background-color:#c0c0c0;border-top:0.05pt double #808080;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| Statement\n| style=\"background-color:#c0c0c0;border:0.05pt double #808080;padding:0.0194in;\"| Timing\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| Alta_ListasPrecios\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| INSERT\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| listasprecios\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| <nowiki>BEGIN DECLARE vListaVieja,vListaNueva INT(5); DECLARE vFechaModificacion DATE; DECLARE vHoraModificacion TIME; SET vListaNueva = (SELECT Lista FROM listavigente); SET vListaVieja = (SELECT MAX(listasprecios.Lista) FROM listasprecios WHERE listasprecios.Lista <> NEW.Lista); SET vFechaModificacion = CURDATE(); SET vHoraModificacion = CURTIME(); INSERT INTO precios ( `precios`.`Lista`, `precios`.`ProductoID`, `precios`.`PrecioProd01`, `precios`.`PrecioProd02`, `precios`.`PrecioProd03`, `precios`.`FechaModificacion`, `precios`.`HoraModificacion`)( SELECT vListaNueva, `precios`.`ProductoID`, `precios`.`PrecioProd01`, `precios`.`PrecioProd02`, `precios`.`PrecioProd03`, vFechaModificacion, vHoraModificacion FROM precios WHERE `precios`.`Lista` = vListaVieja); END</nowiki>\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:0.05pt double #808080;padding:0.0194in;\"| AFTER\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| Alta_LogPrecios\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| INSERT\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| logprecios\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| BEGIN DECLARE vCategoriaID,vProveedorID,vPaso VARCHAR(5); SET vCategoriaID = IF(ISNULL(`NEW`.`CategoriaID`),\' \',`NEW`.`CategoriaID`); SET vProveedorID = IF(ISNULL(`NEW`.`ProveedorID`),\' \',`NEW`.`ProveedorID`); SET `NEW`.`FechaModificacion` = CURDATE(); SET `NEW`.`HoraModificacion` = CURTIME(); SET `NEW`.`Lista` = (SELECT max(`listasprecios`.`Lista`) FROM `listasprecios`); IF ISNULL(NEW.CategoriaID) THEN IF ISNULL(NEW.ProveedorID) THEN UPDATE `precios`,`productos` SET `precios`.`PrecioProd01` = `precios`.`PrecioProd01` * `NEW`.`Coeficiente`, `precios`.`PrecioProd02` = `precios`.`PrecioProd02` * `NEW`.`Coeficiente`, `precios`.`PrecioProd03` = `precios`.`PrecioProd03` * `NEW`.`Coeficiente`, `precios`.`FechaModificacion` = CURDATE(), `precios`.`HoraModificacion` = CURTIME() WHERE `precios`.`ProductoID` = `productos`.`ProductoID` AND `precios`.`Lista` = `NEW`.`Lista`; SET vPaso=\'A\'; ELSE UPDATE `precios`,`productos` SET `precios`.`PrecioProd01` = `precios`.`PrecioProd01` * `NEW`.`Coeficiente`, `precios`.`PrecioProd02` = `precios`.`PrecioProd02` * `NEW`.`Coeficiente`, `precios`.`PrecioProd03` = `precios`.`PrecioProd03` * `NEW`.`Coeficiente`, `precios`.`FechaModificacion` = CURDATE(), `precios`.`HoraModificacion` = CURTIME() WHERE `precios`.`ProductoID` = `productos`.`ProductoID` AND `precios`.`Lista` = `NEW`.`Lista` AND `productos`.`ProveedorID` = NEW.ProveedorID; SET vPaso=\'B\'; END IF; ELSE IF ISNULL(NEW.ProveedorID) THEN UPDATE `precios`,`productos` SET `precios`.`PrecioProd01` = `precios`.`PrecioProd01` * `NEW`.`Coeficiente`, `precios`.`PrecioProd02` = `precios`.`PrecioProd02` * `NEW`.`Coeficiente`, `precios`.`PrecioProd03` = `precios`.`PrecioProd03` * `NEW`.`Coeficiente`, `precios`.`FechaModificacion` = CURDATE(), `precios`.`HoraModificacion` = CURTIME() WHERE `precios`.`ProductoID` = `productos`.`ProductoID` AND `precios`.`Lista` = `NEW`.`Lista` AND `productos`.`CategoriaID` = NEW.CategoriaID; SET vPaso=\'C\'; ELSE UPDATE `precios`,`productos` SET `precios`.`PrecioProd01` = `precios`.`PrecioProd01` * `NEW`.`Coeficiente`, `precios`.`PrecioProd02` = `precios`.`PrecioProd02` * `NEW`.`Coeficiente`, `precios`.`PrecioProd03` = `precios`.`PrecioProd03` * `NEW`.`Coeficiente`, `precios`.`FechaModificacion` = CURDATE(), `precios`.`HoraModificacion` = CURTIME() WHERE `precios`.`ProductoID` = `productos`.`ProductoID` AND `precios`.`Lista` = `NEW`.`Lista` AND `productos`.`CategoriaID` = vCategoriaID AND `productos`.`ProveedorID` = vProveedorID; SET vPaso=\'D\'; END IF; END IF; SET `NEW`.`RowsMod` = ROW_COUNT(); END\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:0.05pt double #808080;padding:0.0194in;\"| BEFORE\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| Alta_Precio\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| INSERT\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| precios\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| BEGIN SET NEW.FechaModificacion = CURDATE(), NEW.HoraModificacion = CURTIME(); END\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:0.05pt double #808080;padding:0.0194in;\"| BEFORE\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| Actualiza_Precio\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| UPDATE\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| precios\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| BEGIN SET NEW.FechaModificacion = CURDATE(), NEW.HoraModificacion = CURTIME(); END\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:0.05pt double #808080;padding:0.0194in;\"| BEFORE\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| AltaTransaccion\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| INSERT\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| transacciones\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| BEGIN SET NEW.TransaccFecha = CURDATE(), NEW.TransaccHora = CURTIME(); END\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:0.05pt double #808080;padding:0.0194in;\"| BEFORE\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| Baja_Presupuesto\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| DELETE\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| vidquoten1\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| BEGIN DELETE FROM vidquoten2 WHERE vidquoten2.VidQuoteID=OLD.VidQuoteID; DELETE FROM vidquoten3 WHERE vidquoten3.VidQuoteID=OLD.VidQuoteID; END\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:0.05pt double #808080;padding:0.0194in;\"| AFTER\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| Alta_Item_Presupuesto\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| INSERT\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| vidquoten2\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| BEGIN INSERT INTO vidquoten3 ( VidQuoteID, VidQuoteLPre, VidQuoteItem, VidQuoteProdID, VidQuoteProdCantidad, VidQuoteAncho, VidQuoteAlto, VidQuoteElementoID, VidQuotePrecio, VidQuotePrecioP) SELECT NEW.`VidQuoteID`, NEW.`VidQuoteLPre`, NEW.`VidQuoteItem`, NEW.`VidQuoteProdID`, NEW.`VidQuoteProdCantidad`, NEW.`VidQuoteAncho`, NEW.`VidQuoteAlto`, visintdetpre.`ElementoID`, visintdetpre.`PrecioBase`, visintdetpre.`PrecioBase` * NEW.`VidQuoteProdCantidad` FROM visintdetpre WHERE visintdetpre.`ElementoPM`=1 AND visintdetpre.`VidQuoteProdID`=NEW.`VidQuoteProdID`; END\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:0.05pt double #808080;padding:0.0194in;\"| AFTER\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| Actualiza_Item_Presupuesto\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| UPDATE\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| vidquoten2\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| <nowiki>BEGIN IF OLD.VidQuoteProdID <> NEW.VidQuoteProdID THEN DELETE FROM vidquoten3 WHERE vidquoten3.VidQuoteID=OLD.VidQuoteID AND vidquoten3.VidQuoteItem=OLD.VidQuoteItem; INSERT INTO vidquoten3 ( VidQuoteID, VidQuoteLPre, VidQuoteItem, VidQuoteProdID, VidQuoteProdCantidad, VidQuoteAncho, VidQuoteAlto, VidQuoteElementoID, VidQuotePrecio, VidQuotePrecioP) SELECT NEW.`VidQuoteID`, NEW.`VidQuoteLPre`, NEW.`VidQuoteItem`, NEW.`VidQuoteProdID`, NEW.`VidQuoteProdCantidad`, NEW.`VidQuoteAncho`, NEW.`VidQuoteAlto`, visintdetpre.`ElementoID`, visintdetpre.`PrecioBase`, visintdetpre.`PrecioBase` * NEW.`VidQuoteProdCantidad` FROM visintdetpre WHERE visintdetpre.`ElementoPM`=1 AND visintdetpre.`VidQuoteProdID`=NEW.`VidQuoteProdID`; ELSE UPDATE `fzggestion`.`vidquoten3` AS `T3`,`fzggestion`.`visintdetpre` AS `TV` SET T3.VidQuoteProdCantidad = NEW.`VidQuoteProdCantidad`, T3.VidQuoteAncho = NEW.`VidQuoteAncho`, T3.VidQuoteAlto = NEW.`VidQuoteAlto`, T3.VidQuotePrecio = TV.`PrecioBase`, T3.VidQuotePrecioP = TV.`PrecioBase` * NEW.`VidQuoteProdCantidad` WHERE T3.`VidQuoteID` = TV.`VidQuoteID` AND T3.`VidQuoteItem` = TV.`VidQuoteItem` AND T3.`VidQuoteItem` = NEW.`VidQuoteItem` AND T3.`VidQuoteProdID` = TV.`VidQuoteProdID` AND T3.`VidQuoteElementoID` = TV.`ElementoID`; END IF; END</nowiki>\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:0.05pt double #808080;padding:0.0194in;\"| AFTER\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| Baja_Item_Presupuesto\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| DELETE\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| vidquoten2\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| BEGIN DELETE FROM vidquoten3 WHERE vidquoten3.VidQuoteID=OLD.VidQuoteID AND vidquoten3.VidQuoteItem=OLD.VidQuoteItem; END\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:0.05pt double #808080;padding:0.0194in;\"| AFTER\n\n|}\n</small>\n\n=== Vistas ===\n{| style=\"border-spacing:0;\"\n| style=\"border-top:0.05pt solid #000000;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| <center>\'\'\'Nombre\'\'\'</center>\n| style=\"border-top:0.05pt solid #000000;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| <center>\'\'\'Comando\'\'\'</center>\n| style=\"border-top:0.05pt solid #000000;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| <center>\'\'\'Uso\'\'\'</center>\n| style=\"border:0.05pt solid #000000;padding:0.0382in;\"| <center>\'\'\'Cross\'\'\'</center>\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Viscabdetalla\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.viscabdetalla.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Vista utilizada para agregar la información de cual es la lista de precios a utilizar para el cliente del presupuesto en tiempo real.\n\nFORM: Presupuesto\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Contactos, Vidquoten1\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Proveedores\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.proveedores.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Visualización de Contactos “Proveedores”\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Contactos\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Clientes\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.clientes.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Visualización de Contactos “Clientes”\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Contactos\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Visreppres\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.visreppres.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Vista Reporte Presupuesto Individual. Para generar una línea completa con la información de detalle de los presupuestos con las combinaciones de información a incluir en el mismo. No contiene la información estática del cliente.\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Vislineabs, Visdetaobs\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Viscompodis\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.viscompodis.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Vista de productos (DISTINCT productos) dentro de la tabla de composición ordenada por alfabéticamente.\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| \n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Viscoposimpl\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.viscomposimpl.sql\n\n\n\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Vista de los elementos de composicion con información para query\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Productos, Composición\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Visdetaobs\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.visdetaobs.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Une todas las Observaciones de cada item para los casos que se encuentren señaladas con la Descripción del Producto-Item\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Productos, Vidquoten3\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Visintdetpre\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.visintdetpre.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Reducción de vista Visprodadic aplicable al cálculo de presupuesto con los datos en tiempo real del presupuesto activo en formulario y calculando el precio correcto de acuerdo al cliente y el cálculo del valor del elemento de acuerdo al los valores de Alto y Ancho del Vano en tiempo real\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Visprodadic, Vidquoten2\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Vislineabs\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.vislineabs.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Define linea básica para reporte teniendo como base Vidquoten2, agregando la información de la cabecera + datos de descrpción de producto + el subtotal por Producto-Item\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Vidquoten1, Vidquoten2, Productos, Vissubxitem\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Visprodadic\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.visproadic.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Vista de tabla de componentes con la información de cada elemento como producto y de los precios vigentes.\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Productos, Composicion, PreciosVigentes\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Vissubxitem\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.vissubxitem.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Subtotal por Item de Presupuesto en tiempo real\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Vidquoten3\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Listavigente\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| \n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Selecciona solo el primer registro ordenado en forma descendente de la tabla de listasprecios\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Listasprecios\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Preciosvigentes\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.preciosvigentes.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Es la selección de la tabla de precios referenciando el mayor valor dentro de la tabla de listasprecios\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Listasprecios, Precios\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Preciosvigact\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.preciosvigact.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Vista de lista de precios vigentes con datos de productos para actualización columnar.\n\nFORM: Actualización por tipo de lista\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Preciosvigentes, Productos\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Visprestot\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.visprestot.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Vista de Presupuestos Totalizados por Cliente\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Visreppres\n\n|}\n\n=== Reportes ===\n<small>\n{| style=\"border-spacing:0;\"\n| style=\"border-top:0.05pt solid #000000;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| <center>\'\'\'Nombre\'\'\'</center>\n| style=\"border-top:0.05pt solid #000000;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| <center>\'\'\'Comando\'\'\'</center>\n| style=\"border-top:0.05pt solid #000000;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| <center>\'\'\'Uso\'\'\'</center>\n| style=\"border:0.05pt solid #000000;padding:0.0382in;\"| <center>\'\'\'Observaciones\'\'\'</center>\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Presupuesto\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| SELECT `visreppres`.`VidQuoteID`, `visreppres`.`VidQuoteObra`, `visreppres`.`VidQuoteCliente`, `visreppres`.`VidQuoteFecha`, `visreppres`.`VidQuoteItem`, `visreppres`.`VidQuoteProdCantidad`, `visreppres`.`VidQuoteProdID`, `visreppres`.`VidQuoteDetalle`, `visreppres`.`VidQuotePrecioS`, `clientes`.`RazonSocial`, `clientes`.`Direccion`, `clientes`.`Localidad`, `clientes`.`Provincia` FROM `fzggestion`.`clientes` AS `clientes`, `fzggestion`.`visreppres` AS `visreppres` WHERE `clientes`.`ClienteID` = `visreppres`.`VidQuoteCliente` ORDER BY `visreppres`.`VidQuoteID` ASC, `visreppres`.`VidQuoteObra` ASC, `visreppres`.`VidQuoteCliente` ASC, `visreppres`.`VidQuoteItem` ASC\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Reporte de Presupuesto Individual\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Filtra por Presupuesto. Visreppres\n\n\n\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Productos\n\n\n\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| SELECT `productos`.`ProductoID`, `productos`.`CategoriaID`, `productos`.`Descripcion`, `productos`.`Magnitud`, `productos`.`InsumoIMG` FROM `fzggestion`.`productos` `productos` ORDER BY `productos`.`CategoriaID`, `productos`.`ProductoID`\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Reporte de Productos\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| \n|}\n</small>\n=== Procedimientos ===\n<small>\n{| style=\"border-spacing:0;\"\n| style=\"border-top:0.05pt solid #000000;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| <center>\'\'\'Nombre\'\'\'</center>\n| style=\"border-top:0.05pt solid #000000;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| <center>\'\'\'Comando\'\'\'</center>\n| style=\"border-top:0.05pt solid #000000;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| <center>\'\'\'Uso\'\'\'</center>\n| style=\"border:0.05pt solid #000000;padding:0.0382in;\"| <center>\'\'\'Observaciones\'\'\'</center>\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| CrearNuevaListaPrecios\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Procedure.CrearNuevaListaPrecios.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Agrega registración al tiempo de generar una nueva lista de precios.\n\nFORM: Crear Nueva Lista\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| \n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| DuplicaProductoCompo\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Procedure.DuplicaProductoCompo.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Copia las registraciones de un producto dentro de la tabla de composición con el atrubuto ProductoID diferente al original.\n\nFORM: Copia Composicion\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| \n\n|}\n</small>\n\n=== ACL ===\n# Verificar que la ODB esté registrada en el profile de LO/OO (el getcontext hace referencia a eso)\n# Grabar con semilla de nombre de datasource con el texto -> \"sdbc:mysql:odbc:\'\'<datasource>\'\'\"\n\'\'\'Ingreso de Registro en Tabla\'\'\'\n<small><pre>\nINSERT INTO wscontrol (\n	wskey1,\n	wskey2,\n	wsKey3\n	) \nVALUES(\n	ENCODE(<MAC Address en minúscula sin separadores>,\"sdbc:mysql:odbc:<datasource>\"),\n	ENCODE(<Cantidad de Usuarios en formato fill 0 de 3 dígitos>,\"sdbc:mysql:odbc:<datasource>\")\n	ENCODE(<FechaLimite en ISO Format>,\"sdbc:mysql:odbc:<datasource>\")\n	)\n</pre></small>\n\'\'\'Ejemplo\'\'\'\n<small><pre>\nINSERT INTO wscontrol (\n	wskey1,\n	wskey2,\n	wsKey3\n	) \nVALUES(\n	ENCODE(\"e0cb4ec8dae3\",\"sdbc:mysql:odbc:FazzGlassGestion\"),\n	ENCODE(\"005\",\"sdbc:mysql:odbc:FazzGlassGestion\")\n	ENCODE(\"20120531\",\"sdbc:mysql:odbc:FazzGlassGestion\")\n	)\n</pre></small>\n\'\'\'Corroborar ACL\'\'\'\n<small><pre>\nSELECT\n	wskey1 AS Cantidad,\n	wskey2 AS Usuarios,\n	wskey2 AS Limite,\n	CAST(DECODE(wskey1,\'sdbc:mysql:odbc:FazzGlassGestion\') AS Char(12)),\n	CAST(DECODE(wskey2,\'sdbc:mysql:odbc:FazzGlassGestion\') AS Char(03))\n	CAST(DECODE(wskey3,\'sdbc:mysql:odbc:FazzGlassGestion\') AS Char(08)),\nFROM\n	wscontrol\n</pre></small>\n{{tecla|Ctrl|A}}','utf-8'),(98,'== Gestión Retail Aberturas ==\n*[[Gestión Retail Aberturas: Bitácora]]\n*[[Gestión Retail Aberturas: Pendientes]]\n*[[Gestión Retail Aberturas: Relaciones]]\n=== Gestión de Magnitudes ===\n\n==== Definiciones ====\n*Coeficiente: Por defecto, el valor es 1. Si necesita sumar al valor original, el coeficiente tiene que tener la parte entera al menos en 1. En el caso de magnitudes no estándar, los valores del precio del producto puede estar incluido en el mismo, por lo que hay que verificar en este caso los valores que se ingresen en la [[Tabla:precios]]\n*Offset: Por defecto, el valor es 0\n\n==== Atributos de Productos/Elementos ====\n* M2 = Metro Cuadrado\nPrecio Unitario = Precio determinado por tipo de cliente * (((((Ancho + OffsetAncho)*Coeficiente Ancho) * ((Alto + OffsetAlto)*Coeficiente Alto))/100000) * Coeficiente Elemento)\n\n* ML = Metro Lineal\nPrecio Unitario = Precio determinado por tipo de cliente * (((((Ancho + OffsetAncho) * 2 * Coeficiente Ancho) + ((Alto + OffsetAlto) * 2 * Coeficiente Alto)) / 1000) * Coeficiente Elemento)\n\n* MG = Magnitud Galarza\nPrecio Unitario = Precio determinado por tipo de cliente * ((((Alto + OffsetAlto) * CoeficienteAlto) + (Ancho + OffsetAncho) * CoeficienteAncho)) / 1000) * Coeficiente Elemento)\n\n* UN = Unidad\nPrecio Unitario = Precio determinado por tipo de cliente * Coeficiente Elemento\n\n=== Triggers ===\n<small>\n{| style=\"border-spacing:0;\"\n| style=\"background-color:#c0c0c0;border-top:0.05pt double #808080;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| Trigger\n| style=\"background-color:#c0c0c0;border-top:0.05pt double #808080;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| Event\n| style=\"background-color:#c0c0c0;border-top:0.05pt double #808080;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| Table\n| style=\"background-color:#c0c0c0;border-top:0.05pt double #808080;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| Statement\n| style=\"background-color:#c0c0c0;border:0.05pt double #808080;padding:0.0194in;\"| Timing\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| Alta_ListasPrecios\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| INSERT\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| listasprecios\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| <nowiki>BEGIN DECLARE vListaVieja,vListaNueva INT(5); DECLARE vFechaModificacion DATE; DECLARE vHoraModificacion TIME; SET vListaNueva = (SELECT Lista FROM listavigente); SET vListaVieja = (SELECT MAX(listasprecios.Lista) FROM listasprecios WHERE listasprecios.Lista <> NEW.Lista); SET vFechaModificacion = CURDATE(); SET vHoraModificacion = CURTIME(); INSERT INTO precios ( `precios`.`Lista`, `precios`.`ProductoID`, `precios`.`PrecioProd01`, `precios`.`PrecioProd02`, `precios`.`PrecioProd03`, `precios`.`FechaModificacion`, `precios`.`HoraModificacion`)( SELECT vListaNueva, `precios`.`ProductoID`, `precios`.`PrecioProd01`, `precios`.`PrecioProd02`, `precios`.`PrecioProd03`, vFechaModificacion, vHoraModificacion FROM precios WHERE `precios`.`Lista` = vListaVieja); END</nowiki>\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:0.05pt double #808080;padding:0.0194in;\"| AFTER\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| Alta_LogPrecios\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| INSERT\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| logprecios\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| BEGIN DECLARE vCategoriaID,vProveedorID,vPaso VARCHAR(5); SET vCategoriaID = IF(ISNULL(`NEW`.`CategoriaID`),\' \',`NEW`.`CategoriaID`); SET vProveedorID = IF(ISNULL(`NEW`.`ProveedorID`),\' \',`NEW`.`ProveedorID`); SET `NEW`.`FechaModificacion` = CURDATE(); SET `NEW`.`HoraModificacion` = CURTIME(); SET `NEW`.`Lista` = (SELECT max(`listasprecios`.`Lista`) FROM `listasprecios`); IF ISNULL(NEW.CategoriaID) THEN IF ISNULL(NEW.ProveedorID) THEN UPDATE `precios`,`productos` SET `precios`.`PrecioProd01` = `precios`.`PrecioProd01` * `NEW`.`Coeficiente`, `precios`.`PrecioProd02` = `precios`.`PrecioProd02` * `NEW`.`Coeficiente`, `precios`.`PrecioProd03` = `precios`.`PrecioProd03` * `NEW`.`Coeficiente`, `precios`.`FechaModificacion` = CURDATE(), `precios`.`HoraModificacion` = CURTIME() WHERE `precios`.`ProductoID` = `productos`.`ProductoID` AND `precios`.`Lista` = `NEW`.`Lista`; SET vPaso=\'A\'; ELSE UPDATE `precios`,`productos` SET `precios`.`PrecioProd01` = `precios`.`PrecioProd01` * `NEW`.`Coeficiente`, `precios`.`PrecioProd02` = `precios`.`PrecioProd02` * `NEW`.`Coeficiente`, `precios`.`PrecioProd03` = `precios`.`PrecioProd03` * `NEW`.`Coeficiente`, `precios`.`FechaModificacion` = CURDATE(), `precios`.`HoraModificacion` = CURTIME() WHERE `precios`.`ProductoID` = `productos`.`ProductoID` AND `precios`.`Lista` = `NEW`.`Lista` AND `productos`.`ProveedorID` = NEW.ProveedorID; SET vPaso=\'B\'; END IF; ELSE IF ISNULL(NEW.ProveedorID) THEN UPDATE `precios`,`productos` SET `precios`.`PrecioProd01` = `precios`.`PrecioProd01` * `NEW`.`Coeficiente`, `precios`.`PrecioProd02` = `precios`.`PrecioProd02` * `NEW`.`Coeficiente`, `precios`.`PrecioProd03` = `precios`.`PrecioProd03` * `NEW`.`Coeficiente`, `precios`.`FechaModificacion` = CURDATE(), `precios`.`HoraModificacion` = CURTIME() WHERE `precios`.`ProductoID` = `productos`.`ProductoID` AND `precios`.`Lista` = `NEW`.`Lista` AND `productos`.`CategoriaID` = NEW.CategoriaID; SET vPaso=\'C\'; ELSE UPDATE `precios`,`productos` SET `precios`.`PrecioProd01` = `precios`.`PrecioProd01` * `NEW`.`Coeficiente`, `precios`.`PrecioProd02` = `precios`.`PrecioProd02` * `NEW`.`Coeficiente`, `precios`.`PrecioProd03` = `precios`.`PrecioProd03` * `NEW`.`Coeficiente`, `precios`.`FechaModificacion` = CURDATE(), `precios`.`HoraModificacion` = CURTIME() WHERE `precios`.`ProductoID` = `productos`.`ProductoID` AND `precios`.`Lista` = `NEW`.`Lista` AND `productos`.`CategoriaID` = vCategoriaID AND `productos`.`ProveedorID` = vProveedorID; SET vPaso=\'D\'; END IF; END IF; SET `NEW`.`RowsMod` = ROW_COUNT(); END\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:0.05pt double #808080;padding:0.0194in;\"| BEFORE\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| Alta_Precio\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| INSERT\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| precios\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| BEGIN SET NEW.FechaModificacion = CURDATE(), NEW.HoraModificacion = CURTIME(); END\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:0.05pt double #808080;padding:0.0194in;\"| BEFORE\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| Actualiza_Precio\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| UPDATE\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| precios\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| BEGIN SET NEW.FechaModificacion = CURDATE(), NEW.HoraModificacion = CURTIME(); END\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:0.05pt double #808080;padding:0.0194in;\"| BEFORE\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| AltaTransaccion\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| INSERT\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| transacciones\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| BEGIN SET NEW.TransaccFecha = CURDATE(), NEW.TransaccHora = CURTIME(); END\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:0.05pt double #808080;padding:0.0194in;\"| BEFORE\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| Baja_Presupuesto\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| DELETE\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| vidquoten1\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| BEGIN DELETE FROM vidquoten2 WHERE vidquoten2.VidQuoteID=OLD.VidQuoteID; DELETE FROM vidquoten3 WHERE vidquoten3.VidQuoteID=OLD.VidQuoteID; END\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:0.05pt double #808080;padding:0.0194in;\"| AFTER\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| Alta_Item_Presupuesto\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| INSERT\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| vidquoten2\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| BEGIN INSERT INTO vidquoten3 ( VidQuoteID, VidQuoteLPre, VidQuoteItem, VidQuoteProdID, VidQuoteProdCantidad, VidQuoteAncho, VidQuoteAlto, VidQuoteElementoID, VidQuotePrecio, VidQuotePrecioP) SELECT NEW.`VidQuoteID`, NEW.`VidQuoteLPre`, NEW.`VidQuoteItem`, NEW.`VidQuoteProdID`, NEW.`VidQuoteProdCantidad`, NEW.`VidQuoteAncho`, NEW.`VidQuoteAlto`, visintdetpre.`ElementoID`, visintdetpre.`PrecioBase`, visintdetpre.`PrecioBase` * NEW.`VidQuoteProdCantidad` FROM visintdetpre WHERE visintdetpre.`ElementoPM`=1 AND visintdetpre.`VidQuoteProdID`=NEW.`VidQuoteProdID`; END\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:0.05pt double #808080;padding:0.0194in;\"| AFTER\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| Actualiza_Item_Presupuesto\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| UPDATE\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| vidquoten2\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| <nowiki>BEGIN IF OLD.VidQuoteProdID <> NEW.VidQuoteProdID THEN DELETE FROM vidquoten3 WHERE vidquoten3.VidQuoteID=OLD.VidQuoteID AND vidquoten3.VidQuoteItem=OLD.VidQuoteItem; INSERT INTO vidquoten3 ( VidQuoteID, VidQuoteLPre, VidQuoteItem, VidQuoteProdID, VidQuoteProdCantidad, VidQuoteAncho, VidQuoteAlto, VidQuoteElementoID, VidQuotePrecio, VidQuotePrecioP) SELECT NEW.`VidQuoteID`, NEW.`VidQuoteLPre`, NEW.`VidQuoteItem`, NEW.`VidQuoteProdID`, NEW.`VidQuoteProdCantidad`, NEW.`VidQuoteAncho`, NEW.`VidQuoteAlto`, visintdetpre.`ElementoID`, visintdetpre.`PrecioBase`, visintdetpre.`PrecioBase` * NEW.`VidQuoteProdCantidad` FROM visintdetpre WHERE visintdetpre.`ElementoPM`=1 AND visintdetpre.`VidQuoteProdID`=NEW.`VidQuoteProdID`; ELSE UPDATE `fzggestion`.`vidquoten3` AS `T3`,`fzggestion`.`visintdetpre` AS `TV` SET T3.VidQuoteProdCantidad = NEW.`VidQuoteProdCantidad`, T3.VidQuoteAncho = NEW.`VidQuoteAncho`, T3.VidQuoteAlto = NEW.`VidQuoteAlto`, T3.VidQuotePrecio = TV.`PrecioBase`, T3.VidQuotePrecioP = TV.`PrecioBase` * NEW.`VidQuoteProdCantidad` WHERE T3.`VidQuoteID` = TV.`VidQuoteID` AND T3.`VidQuoteItem` = TV.`VidQuoteItem` AND T3.`VidQuoteItem` = NEW.`VidQuoteItem` AND T3.`VidQuoteProdID` = TV.`VidQuoteProdID` AND T3.`VidQuoteElementoID` = TV.`ElementoID`; END IF; END</nowiki>\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:0.05pt double #808080;padding:0.0194in;\"| AFTER\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| Baja_Item_Presupuesto\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| DELETE\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| vidquoten2\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| BEGIN DELETE FROM vidquoten3 WHERE vidquoten3.VidQuoteID=OLD.VidQuoteID AND vidquoten3.VidQuoteItem=OLD.VidQuoteItem; END\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:0.05pt double #808080;padding:0.0194in;\"| AFTER\n\n|}\n</small>\n\n=== Vistas ===\n{| style=\"border-spacing:0;\"\n| style=\"border-top:0.05pt solid #000000;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| <center>\'\'\'Nombre\'\'\'</center>\n| style=\"border-top:0.05pt solid #000000;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| <center>\'\'\'Comando\'\'\'</center>\n| style=\"border-top:0.05pt solid #000000;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| <center>\'\'\'Uso\'\'\'</center>\n| style=\"border:0.05pt solid #000000;padding:0.0382in;\"| <center>\'\'\'Cross\'\'\'</center>\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Viscabdetalla\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.viscabdetalla.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Vista utilizada para agregar la información de cual es la lista de precios a utilizar para el cliente del presupuesto en tiempo real.\n\nFORM: Presupuesto\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Contactos, Vidquoten1\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Proveedores\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.proveedores.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Visualización de Contactos “Proveedores”\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Contactos\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Clientes\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.clientes.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Visualización de Contactos “Clientes”\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Contactos\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Visreppres\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.visreppres.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Vista Reporte Presupuesto Individual. Para generar una línea completa con la información de detalle de los presupuestos con las combinaciones de información a incluir en el mismo. No contiene la información estática del cliente.\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Vislineabs, Visdetaobs\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Viscompodis\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.viscompodis.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Vista de productos (DISTINCT productos) dentro de la tabla de composición ordenada por alfabéticamente.\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| \n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Viscoposimpl\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.viscomposimpl.sql\n\n\n\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Vista de los elementos de composicion con información para query\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Productos, Composición\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Visdetaobs\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.visdetaobs.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Une todas las Observaciones de cada item para los casos que se encuentren señaladas con la Descripción del Producto-Item\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Productos, Vidquoten3\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Visintdetpre\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.visintdetpre.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Reducción de vista Visprodadic aplicable al cálculo de presupuesto con los datos en tiempo real del presupuesto activo en formulario y calculando el precio correcto de acuerdo al cliente y el cálculo del valor del elemento de acuerdo al los valores de Alto y Ancho del Vano en tiempo real\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Visprodadic, Vidquoten2\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Vislineabs\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.vislineabs.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Define linea básica para reporte teniendo como base Vidquoten2, agregando la información de la cabecera + datos de descrpción de producto + el subtotal por Producto-Item\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Vidquoten1, Vidquoten2, Productos, Vissubxitem\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Visprodadic\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.visproadic.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Vista de tabla de componentes con la información de cada elemento como producto y de los precios vigentes.\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Productos, Composicion, PreciosVigentes\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Vissubxitem\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.vissubxitem.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Subtotal por Item de Presupuesto en tiempo real\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Vidquoten3\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Listavigente\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| \n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Selecciona solo el primer registro ordenado en forma descendente de la tabla de listasprecios\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Listasprecios\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Preciosvigentes\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.preciosvigentes.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Es la selección de la tabla de precios referenciando el mayor valor dentro de la tabla de listasprecios\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Listasprecios, Precios\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Preciosvigact\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.preciosvigact.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Vista de lista de precios vigentes con datos de productos para actualización columnar.\n\nFORM: Actualización por tipo de lista\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Preciosvigentes, Productos\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Visprestot\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.visprestot.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Vista de Presupuestos Totalizados por Cliente\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Visreppres\n\n|}\n\n=== Reportes ===\n<small>\n{| style=\"border-spacing:0;\"\n| style=\"border-top:0.05pt solid #000000;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| <center>\'\'\'Nombre\'\'\'</center>\n| style=\"border-top:0.05pt solid #000000;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| <center>\'\'\'Comando\'\'\'</center>\n| style=\"border-top:0.05pt solid #000000;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| <center>\'\'\'Uso\'\'\'</center>\n| style=\"border:0.05pt solid #000000;padding:0.0382in;\"| <center>\'\'\'Observaciones\'\'\'</center>\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Presupuesto\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| SELECT `visreppres`.`VidQuoteID`, `visreppres`.`VidQuoteObra`, `visreppres`.`VidQuoteCliente`, `visreppres`.`VidQuoteFecha`, `visreppres`.`VidQuoteItem`, `visreppres`.`VidQuoteProdCantidad`, `visreppres`.`VidQuoteProdID`, `visreppres`.`VidQuoteDetalle`, `visreppres`.`VidQuotePrecioS`, `clientes`.`RazonSocial`, `clientes`.`Direccion`, `clientes`.`Localidad`, `clientes`.`Provincia` FROM `fzggestion`.`clientes` AS `clientes`, `fzggestion`.`visreppres` AS `visreppres` WHERE `clientes`.`ClienteID` = `visreppres`.`VidQuoteCliente` ORDER BY `visreppres`.`VidQuoteID` ASC, `visreppres`.`VidQuoteObra` ASC, `visreppres`.`VidQuoteCliente` ASC, `visreppres`.`VidQuoteItem` ASC\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Reporte de Presupuesto Individual\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Filtra por Presupuesto. Visreppres\n\n\n\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Productos\n\n\n\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| SELECT `productos`.`ProductoID`, `productos`.`CategoriaID`, `productos`.`Descripcion`, `productos`.`Magnitud`, `productos`.`InsumoIMG` FROM `fzggestion`.`productos` `productos` ORDER BY `productos`.`CategoriaID`, `productos`.`ProductoID`\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Reporte de Productos\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| \n|}\n</small>\n=== Procedimientos ===\n<small>\n{| class=\"wikitable\"\n| Nombre\n| Comando\n| Uso\n|-\n| CrearNuevaListaPrecios\n| FZG.Procedure.CrearNuevaListaPrecios.sql\n| align=\"right\"| 500.00\n|-\n| Butter\n| Ice cream\n| Agrega registración al tiempo de generar una nueva lista de precios.\n|}\n\n{| style=\"border-spacing:0;\"\n| style=\"border-top:0.05pt solid #000000;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| <center>\'\'\'Nombre\'\'\'</center>\n| style=\"border-top:0.05pt solid #000000;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| <center>\'\'\'Comando\'\'\'</center>\n| style=\"border-top:0.05pt solid #000000;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| <center>\'\'\'Uso\'\'\'</center>\n| style=\"border:0.05pt solid #000000;padding:0.0382in;\"| <center>\'\'\'Observaciones\'\'\'</center>\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| \n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| \n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| \n\nFORM: Crear Nueva Lista\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| \n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| DuplicaProductoCompo\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Procedure.DuplicaProductoCompo.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Copia las registraciones de un producto dentro de la tabla de composición con el atrubuto ProductoID diferente al original.\n\nFORM: Copia Composicion\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| \n\n|}\n</small>\n\n=== ACL ===\n# Verificar que la ODB esté registrada en el profile de LO/OO (el getcontext hace referencia a eso)\n# Grabar con semilla de nombre de datasource con el texto -> \"sdbc:mysql:odbc:\'\'<datasource>\'\'\"\n\'\'\'Ingreso de Registro en Tabla\'\'\'\n<small><pre>\nINSERT INTO wscontrol (\n	wskey1,\n	wskey2,\n	wsKey3\n	) \nVALUES(\n	ENCODE(<MAC Address en minúscula sin separadores>,\"sdbc:mysql:odbc:<datasource>\"),\n	ENCODE(<Cantidad de Usuarios en formato fill 0 de 3 dígitos>,\"sdbc:mysql:odbc:<datasource>\")\n	ENCODE(<FechaLimite en ISO Format>,\"sdbc:mysql:odbc:<datasource>\")\n	)\n</pre></small>\n\'\'\'Ejemplo\'\'\'\n<small><pre>\nINSERT INTO wscontrol (\n	wskey1,\n	wskey2,\n	wsKey3\n	) \nVALUES(\n	ENCODE(\"e0cb4ec8dae3\",\"sdbc:mysql:odbc:FazzGlassGestion\"),\n	ENCODE(\"005\",\"sdbc:mysql:odbc:FazzGlassGestion\")\n	ENCODE(\"20120531\",\"sdbc:mysql:odbc:FazzGlassGestion\")\n	)\n</pre></small>\n\'\'\'Corroborar ACL\'\'\'\n<small><pre>\nSELECT\n	wskey1 AS Cantidad,\n	wskey2 AS Usuarios,\n	wskey2 AS Limite,\n	CAST(DECODE(wskey1,\'sdbc:mysql:odbc:FazzGlassGestion\') AS Char(12)),\n	CAST(DECODE(wskey2,\'sdbc:mysql:odbc:FazzGlassGestion\') AS Char(03))\n	CAST(DECODE(wskey3,\'sdbc:mysql:odbc:FazzGlassGestion\') AS Char(08)),\nFROM\n	wscontrol\n</pre></small>\n{{tecla|Ctrl|A}}','utf-8'),(99,'== Gestión Retail Aberturas ==\n*[[Gestión Retail Aberturas: Bitácora]]\n*[[Gestión Retail Aberturas: Pendientes]]\n*[[Gestión Retail Aberturas: Relaciones]]\n=== Gestión de Magnitudes ===\n\n==== Definiciones ====\n*Coeficiente: Por defecto, el valor es 1. Si necesita sumar al valor original, el coeficiente tiene que tener la parte entera al menos en 1. En el caso de magnitudes no estándar, los valores del precio del producto puede estar incluido en el mismo, por lo que hay que verificar en este caso los valores que se ingresen en la [[Tabla:precios]]\n*Offset: Por defecto, el valor es 0\n\n==== Atributos de Productos/Elementos ====\n* M2 = Metro Cuadrado\nPrecio Unitario = Precio determinado por tipo de cliente * (((((Ancho + OffsetAncho)*Coeficiente Ancho) * ((Alto + OffsetAlto)*Coeficiente Alto))/100000) * Coeficiente Elemento)\n\n* ML = Metro Lineal\nPrecio Unitario = Precio determinado por tipo de cliente * (((((Ancho + OffsetAncho) * 2 * Coeficiente Ancho) + ((Alto + OffsetAlto) * 2 * Coeficiente Alto)) / 1000) * Coeficiente Elemento)\n\n* MG = Magnitud Galarza\nPrecio Unitario = Precio determinado por tipo de cliente * ((((Alto + OffsetAlto) * CoeficienteAlto) + (Ancho + OffsetAncho) * CoeficienteAncho)) / 1000) * Coeficiente Elemento)\n\n* UN = Unidad\nPrecio Unitario = Precio determinado por tipo de cliente * Coeficiente Elemento\n\n=== Triggers ===\n<small>\n{| style=\"border-spacing:0;\"\n| style=\"background-color:#c0c0c0;border-top:0.05pt double #808080;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| Trigger\n| style=\"background-color:#c0c0c0;border-top:0.05pt double #808080;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| Event\n| style=\"background-color:#c0c0c0;border-top:0.05pt double #808080;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| Table\n| style=\"background-color:#c0c0c0;border-top:0.05pt double #808080;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| Statement\n| style=\"background-color:#c0c0c0;border:0.05pt double #808080;padding:0.0194in;\"| Timing\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| Alta_ListasPrecios\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| INSERT\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| listasprecios\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| <nowiki>BEGIN DECLARE vListaVieja,vListaNueva INT(5); DECLARE vFechaModificacion DATE; DECLARE vHoraModificacion TIME; SET vListaNueva = (SELECT Lista FROM listavigente); SET vListaVieja = (SELECT MAX(listasprecios.Lista) FROM listasprecios WHERE listasprecios.Lista <> NEW.Lista); SET vFechaModificacion = CURDATE(); SET vHoraModificacion = CURTIME(); INSERT INTO precios ( `precios`.`Lista`, `precios`.`ProductoID`, `precios`.`PrecioProd01`, `precios`.`PrecioProd02`, `precios`.`PrecioProd03`, `precios`.`FechaModificacion`, `precios`.`HoraModificacion`)( SELECT vListaNueva, `precios`.`ProductoID`, `precios`.`PrecioProd01`, `precios`.`PrecioProd02`, `precios`.`PrecioProd03`, vFechaModificacion, vHoraModificacion FROM precios WHERE `precios`.`Lista` = vListaVieja); END</nowiki>\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:0.05pt double #808080;padding:0.0194in;\"| AFTER\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| Alta_LogPrecios\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| INSERT\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| logprecios\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| BEGIN DECLARE vCategoriaID,vProveedorID,vPaso VARCHAR(5); SET vCategoriaID = IF(ISNULL(`NEW`.`CategoriaID`),\' \',`NEW`.`CategoriaID`); SET vProveedorID = IF(ISNULL(`NEW`.`ProveedorID`),\' \',`NEW`.`ProveedorID`); SET `NEW`.`FechaModificacion` = CURDATE(); SET `NEW`.`HoraModificacion` = CURTIME(); SET `NEW`.`Lista` = (SELECT max(`listasprecios`.`Lista`) FROM `listasprecios`); IF ISNULL(NEW.CategoriaID) THEN IF ISNULL(NEW.ProveedorID) THEN UPDATE `precios`,`productos` SET `precios`.`PrecioProd01` = `precios`.`PrecioProd01` * `NEW`.`Coeficiente`, `precios`.`PrecioProd02` = `precios`.`PrecioProd02` * `NEW`.`Coeficiente`, `precios`.`PrecioProd03` = `precios`.`PrecioProd03` * `NEW`.`Coeficiente`, `precios`.`FechaModificacion` = CURDATE(), `precios`.`HoraModificacion` = CURTIME() WHERE `precios`.`ProductoID` = `productos`.`ProductoID` AND `precios`.`Lista` = `NEW`.`Lista`; SET vPaso=\'A\'; ELSE UPDATE `precios`,`productos` SET `precios`.`PrecioProd01` = `precios`.`PrecioProd01` * `NEW`.`Coeficiente`, `precios`.`PrecioProd02` = `precios`.`PrecioProd02` * `NEW`.`Coeficiente`, `precios`.`PrecioProd03` = `precios`.`PrecioProd03` * `NEW`.`Coeficiente`, `precios`.`FechaModificacion` = CURDATE(), `precios`.`HoraModificacion` = CURTIME() WHERE `precios`.`ProductoID` = `productos`.`ProductoID` AND `precios`.`Lista` = `NEW`.`Lista` AND `productos`.`ProveedorID` = NEW.ProveedorID; SET vPaso=\'B\'; END IF; ELSE IF ISNULL(NEW.ProveedorID) THEN UPDATE `precios`,`productos` SET `precios`.`PrecioProd01` = `precios`.`PrecioProd01` * `NEW`.`Coeficiente`, `precios`.`PrecioProd02` = `precios`.`PrecioProd02` * `NEW`.`Coeficiente`, `precios`.`PrecioProd03` = `precios`.`PrecioProd03` * `NEW`.`Coeficiente`, `precios`.`FechaModificacion` = CURDATE(), `precios`.`HoraModificacion` = CURTIME() WHERE `precios`.`ProductoID` = `productos`.`ProductoID` AND `precios`.`Lista` = `NEW`.`Lista` AND `productos`.`CategoriaID` = NEW.CategoriaID; SET vPaso=\'C\'; ELSE UPDATE `precios`,`productos` SET `precios`.`PrecioProd01` = `precios`.`PrecioProd01` * `NEW`.`Coeficiente`, `precios`.`PrecioProd02` = `precios`.`PrecioProd02` * `NEW`.`Coeficiente`, `precios`.`PrecioProd03` = `precios`.`PrecioProd03` * `NEW`.`Coeficiente`, `precios`.`FechaModificacion` = CURDATE(), `precios`.`HoraModificacion` = CURTIME() WHERE `precios`.`ProductoID` = `productos`.`ProductoID` AND `precios`.`Lista` = `NEW`.`Lista` AND `productos`.`CategoriaID` = vCategoriaID AND `productos`.`ProveedorID` = vProveedorID; SET vPaso=\'D\'; END IF; END IF; SET `NEW`.`RowsMod` = ROW_COUNT(); END\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:0.05pt double #808080;padding:0.0194in;\"| BEFORE\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| Alta_Precio\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| INSERT\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| precios\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| BEGIN SET NEW.FechaModificacion = CURDATE(), NEW.HoraModificacion = CURTIME(); END\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:0.05pt double #808080;padding:0.0194in;\"| BEFORE\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| Actualiza_Precio\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| UPDATE\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| precios\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| BEGIN SET NEW.FechaModificacion = CURDATE(), NEW.HoraModificacion = CURTIME(); END\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:0.05pt double #808080;padding:0.0194in;\"| BEFORE\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| AltaTransaccion\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| INSERT\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| transacciones\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| BEGIN SET NEW.TransaccFecha = CURDATE(), NEW.TransaccHora = CURTIME(); END\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:0.05pt double #808080;padding:0.0194in;\"| BEFORE\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| Baja_Presupuesto\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| DELETE\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| vidquoten1\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| BEGIN DELETE FROM vidquoten2 WHERE vidquoten2.VidQuoteID=OLD.VidQuoteID; DELETE FROM vidquoten3 WHERE vidquoten3.VidQuoteID=OLD.VidQuoteID; END\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:0.05pt double #808080;padding:0.0194in;\"| AFTER\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| Alta_Item_Presupuesto\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| INSERT\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| vidquoten2\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| BEGIN INSERT INTO vidquoten3 ( VidQuoteID, VidQuoteLPre, VidQuoteItem, VidQuoteProdID, VidQuoteProdCantidad, VidQuoteAncho, VidQuoteAlto, VidQuoteElementoID, VidQuotePrecio, VidQuotePrecioP) SELECT NEW.`VidQuoteID`, NEW.`VidQuoteLPre`, NEW.`VidQuoteItem`, NEW.`VidQuoteProdID`, NEW.`VidQuoteProdCantidad`, NEW.`VidQuoteAncho`, NEW.`VidQuoteAlto`, visintdetpre.`ElementoID`, visintdetpre.`PrecioBase`, visintdetpre.`PrecioBase` * NEW.`VidQuoteProdCantidad` FROM visintdetpre WHERE visintdetpre.`ElementoPM`=1 AND visintdetpre.`VidQuoteProdID`=NEW.`VidQuoteProdID`; END\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:0.05pt double #808080;padding:0.0194in;\"| AFTER\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| Actualiza_Item_Presupuesto\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| UPDATE\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| vidquoten2\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| <nowiki>BEGIN IF OLD.VidQuoteProdID <> NEW.VidQuoteProdID THEN DELETE FROM vidquoten3 WHERE vidquoten3.VidQuoteID=OLD.VidQuoteID AND vidquoten3.VidQuoteItem=OLD.VidQuoteItem; INSERT INTO vidquoten3 ( VidQuoteID, VidQuoteLPre, VidQuoteItem, VidQuoteProdID, VidQuoteProdCantidad, VidQuoteAncho, VidQuoteAlto, VidQuoteElementoID, VidQuotePrecio, VidQuotePrecioP) SELECT NEW.`VidQuoteID`, NEW.`VidQuoteLPre`, NEW.`VidQuoteItem`, NEW.`VidQuoteProdID`, NEW.`VidQuoteProdCantidad`, NEW.`VidQuoteAncho`, NEW.`VidQuoteAlto`, visintdetpre.`ElementoID`, visintdetpre.`PrecioBase`, visintdetpre.`PrecioBase` * NEW.`VidQuoteProdCantidad` FROM visintdetpre WHERE visintdetpre.`ElementoPM`=1 AND visintdetpre.`VidQuoteProdID`=NEW.`VidQuoteProdID`; ELSE UPDATE `fzggestion`.`vidquoten3` AS `T3`,`fzggestion`.`visintdetpre` AS `TV` SET T3.VidQuoteProdCantidad = NEW.`VidQuoteProdCantidad`, T3.VidQuoteAncho = NEW.`VidQuoteAncho`, T3.VidQuoteAlto = NEW.`VidQuoteAlto`, T3.VidQuotePrecio = TV.`PrecioBase`, T3.VidQuotePrecioP = TV.`PrecioBase` * NEW.`VidQuoteProdCantidad` WHERE T3.`VidQuoteID` = TV.`VidQuoteID` AND T3.`VidQuoteItem` = TV.`VidQuoteItem` AND T3.`VidQuoteItem` = NEW.`VidQuoteItem` AND T3.`VidQuoteProdID` = TV.`VidQuoteProdID` AND T3.`VidQuoteElementoID` = TV.`ElementoID`; END IF; END</nowiki>\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:0.05pt double #808080;padding:0.0194in;\"| AFTER\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| Baja_Item_Presupuesto\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| DELETE\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| vidquoten2\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| BEGIN DELETE FROM vidquoten3 WHERE vidquoten3.VidQuoteID=OLD.VidQuoteID AND vidquoten3.VidQuoteItem=OLD.VidQuoteItem; END\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:0.05pt double #808080;padding:0.0194in;\"| AFTER\n\n|}\n</small>\n\n=== Vistas ===\n{| style=\"border-spacing:0;\"\n| style=\"border-top:0.05pt solid #000000;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| <center>\'\'\'Nombre\'\'\'</center>\n| style=\"border-top:0.05pt solid #000000;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| <center>\'\'\'Comando\'\'\'</center>\n| style=\"border-top:0.05pt solid #000000;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| <center>\'\'\'Uso\'\'\'</center>\n| style=\"border:0.05pt solid #000000;padding:0.0382in;\"| <center>\'\'\'Cross\'\'\'</center>\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Viscabdetalla\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.viscabdetalla.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Vista utilizada para agregar la información de cual es la lista de precios a utilizar para el cliente del presupuesto en tiempo real.\n\nFORM: Presupuesto\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Contactos, Vidquoten1\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Proveedores\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.proveedores.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Visualización de Contactos “Proveedores”\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Contactos\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Clientes\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.clientes.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Visualización de Contactos “Clientes”\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Contactos\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Visreppres\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.visreppres.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Vista Reporte Presupuesto Individual. Para generar una línea completa con la información de detalle de los presupuestos con las combinaciones de información a incluir en el mismo. No contiene la información estática del cliente.\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Vislineabs, Visdetaobs\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Viscompodis\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.viscompodis.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Vista de productos (DISTINCT productos) dentro de la tabla de composición ordenada por alfabéticamente.\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| \n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Viscoposimpl\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.viscomposimpl.sql\n\n\n\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Vista de los elementos de composicion con información para query\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Productos, Composición\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Visdetaobs\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.visdetaobs.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Une todas las Observaciones de cada item para los casos que se encuentren señaladas con la Descripción del Producto-Item\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Productos, Vidquoten3\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Visintdetpre\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.visintdetpre.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Reducción de vista Visprodadic aplicable al cálculo de presupuesto con los datos en tiempo real del presupuesto activo en formulario y calculando el precio correcto de acuerdo al cliente y el cálculo del valor del elemento de acuerdo al los valores de Alto y Ancho del Vano en tiempo real\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Visprodadic, Vidquoten2\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Vislineabs\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.vislineabs.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Define linea básica para reporte teniendo como base Vidquoten2, agregando la información de la cabecera + datos de descrpción de producto + el subtotal por Producto-Item\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Vidquoten1, Vidquoten2, Productos, Vissubxitem\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Visprodadic\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.visproadic.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Vista de tabla de componentes con la información de cada elemento como producto y de los precios vigentes.\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Productos, Composicion, PreciosVigentes\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Vissubxitem\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.vissubxitem.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Subtotal por Item de Presupuesto en tiempo real\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Vidquoten3\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Listavigente\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| \n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Selecciona solo el primer registro ordenado en forma descendente de la tabla de listasprecios\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Listasprecios\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Preciosvigentes\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.preciosvigentes.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Es la selección de la tabla de precios referenciando el mayor valor dentro de la tabla de listasprecios\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Listasprecios, Precios\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Preciosvigact\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.preciosvigact.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Vista de lista de precios vigentes con datos de productos para actualización columnar.\n\nFORM: Actualización por tipo de lista\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Preciosvigentes, Productos\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Visprestot\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.visprestot.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Vista de Presupuestos Totalizados por Cliente\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Visreppres\n\n|}\n\n=== Reportes ===\n<small>\n{| style=\"border-spacing:0;\"\n| style=\"border-top:0.05pt solid #000000;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| <center>\'\'\'Nombre\'\'\'</center>\n| style=\"border-top:0.05pt solid #000000;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| <center>\'\'\'Comando\'\'\'</center>\n| style=\"border-top:0.05pt solid #000000;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| <center>\'\'\'Uso\'\'\'</center>\n| style=\"border:0.05pt solid #000000;padding:0.0382in;\"| <center>\'\'\'Observaciones\'\'\'</center>\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Presupuesto\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| SELECT `visreppres`.`VidQuoteID`, `visreppres`.`VidQuoteObra`, `visreppres`.`VidQuoteCliente`, `visreppres`.`VidQuoteFecha`, `visreppres`.`VidQuoteItem`, `visreppres`.`VidQuoteProdCantidad`, `visreppres`.`VidQuoteProdID`, `visreppres`.`VidQuoteDetalle`, `visreppres`.`VidQuotePrecioS`, `clientes`.`RazonSocial`, `clientes`.`Direccion`, `clientes`.`Localidad`, `clientes`.`Provincia` FROM `fzggestion`.`clientes` AS `clientes`, `fzggestion`.`visreppres` AS `visreppres` WHERE `clientes`.`ClienteID` = `visreppres`.`VidQuoteCliente` ORDER BY `visreppres`.`VidQuoteID` ASC, `visreppres`.`VidQuoteObra` ASC, `visreppres`.`VidQuoteCliente` ASC, `visreppres`.`VidQuoteItem` ASC\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Reporte de Presupuesto Individual\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Filtra por Presupuesto. Visreppres\n\n\n\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Productos\n\n\n\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| SELECT `productos`.`ProductoID`, `productos`.`CategoriaID`, `productos`.`Descripcion`, `productos`.`Magnitud`, `productos`.`InsumoIMG` FROM `fzggestion`.`productos` `productos` ORDER BY `productos`.`CategoriaID`, `productos`.`ProductoID`\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Reporte de Productos\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| \n|}\n</small>\n=== Procedimientos ===\n<small>\n{| class=\"wikitable\"\n| <center>\'\'\'Nombre\'\'\'</center>\n| <center>\'\'\'Comando\'\'\'</center>\n| <center>\'\'\'Uso\'\'\'</center>\n|-\n| CrearNuevaListaPrecios\n| FZG.Procedure.CrearNuevaListaPrecios.sql\n| Agrega registración al tiempo de generar una nueva lista de precios.\n|-\n| DuplicaProductoCompo\n| FZG.Procedure.DuplicaProductoCompo.sql\n| Copia las registraciones de un producto dentro de la tabla de composición con el atrubuto ProductoID diferente al original.\n|}\n\nFORM: Crear Nueva Lista\n\nFORM: Copia Composicion\n\n</small>\n\n=== ACL ===\n# Verificar que la ODB esté registrada en el profile de LO/OO (el getcontext hace referencia a eso)\n# Grabar con semilla de nombre de datasource con el texto -> \"sdbc:mysql:odbc:\'\'<datasource>\'\'\"\n\'\'\'Ingreso de Registro en Tabla\'\'\'\n<small><pre>\nINSERT INTO wscontrol (\n	wskey1,\n	wskey2,\n	wsKey3\n	) \nVALUES(\n	ENCODE(<MAC Address en minúscula sin separadores>,\"sdbc:mysql:odbc:<datasource>\"),\n	ENCODE(<Cantidad de Usuarios en formato fill 0 de 3 dígitos>,\"sdbc:mysql:odbc:<datasource>\")\n	ENCODE(<FechaLimite en ISO Format>,\"sdbc:mysql:odbc:<datasource>\")\n	)\n</pre></small>\n\'\'\'Ejemplo\'\'\'\n<small><pre>\nINSERT INTO wscontrol (\n	wskey1,\n	wskey2,\n	wsKey3\n	) \nVALUES(\n	ENCODE(\"e0cb4ec8dae3\",\"sdbc:mysql:odbc:FazzGlassGestion\"),\n	ENCODE(\"005\",\"sdbc:mysql:odbc:FazzGlassGestion\")\n	ENCODE(\"20120531\",\"sdbc:mysql:odbc:FazzGlassGestion\")\n	)\n</pre></small>\n\'\'\'Corroborar ACL\'\'\'\n<small><pre>\nSELECT\n	wskey1 AS Cantidad,\n	wskey2 AS Usuarios,\n	wskey2 AS Limite,\n	CAST(DECODE(wskey1,\'sdbc:mysql:odbc:FazzGlassGestion\') AS Char(12)),\n	CAST(DECODE(wskey2,\'sdbc:mysql:odbc:FazzGlassGestion\') AS Char(03))\n	CAST(DECODE(wskey3,\'sdbc:mysql:odbc:FazzGlassGestion\') AS Char(08)),\nFROM\n	wscontrol\n</pre></small>\n{{tecla|Ctrl|A}}','utf-8'),(100,'== Gestión Retail Aberturas ==\n*[[Gestión Retail Aberturas: Bitácora]]\n*[[Gestión Retail Aberturas: Pendientes]]\n*[[Gestión Retail Aberturas: Relaciones]]\n=== Gestión de Magnitudes ===\n\n==== Definiciones ====\n*Coeficiente: Por defecto, el valor es 1. Si necesita sumar al valor original, el coeficiente tiene que tener la parte entera al menos en 1. En el caso de magnitudes no estándar, los valores del precio del producto puede estar incluido en el mismo, por lo que hay que verificar en este caso los valores que se ingresen en la [[Tabla:precios]]\n*Offset: Por defecto, el valor es 0\n\n==== Atributos de Productos/Elementos ====\n* M2 = Metro Cuadrado\nPrecio Unitario = Precio determinado por tipo de cliente * (((((Ancho + OffsetAncho)*Coeficiente Ancho) * ((Alto + OffsetAlto)*Coeficiente Alto))/100000) * Coeficiente Elemento)\n\n* ML = Metro Lineal\nPrecio Unitario = Precio determinado por tipo de cliente * (((((Ancho + OffsetAncho) * 2 * Coeficiente Ancho) + ((Alto + OffsetAlto) * 2 * Coeficiente Alto)) / 1000) * Coeficiente Elemento)\n\n* MG = Magnitud Galarza\nPrecio Unitario = Precio determinado por tipo de cliente * ((((Alto + OffsetAlto) * CoeficienteAlto) + (Ancho + OffsetAncho) * CoeficienteAncho)) / 1000) * Coeficiente Elemento)\n\n* UN = Unidad\nPrecio Unitario = Precio determinado por tipo de cliente * Coeficiente Elemento\n\n=== Triggers ===\n<small>\n{| style=\"border-spacing:0;\"\n| style=\"background-color:#c0c0c0;border-top:0.05pt double #808080;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| Trigger\n| style=\"background-color:#c0c0c0;border-top:0.05pt double #808080;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| Event\n| style=\"background-color:#c0c0c0;border-top:0.05pt double #808080;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| Table\n| style=\"background-color:#c0c0c0;border-top:0.05pt double #808080;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| Statement\n| style=\"background-color:#c0c0c0;border:0.05pt double #808080;padding:0.0194in;\"| Timing\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| Alta_ListasPrecios\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| INSERT\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| listasprecios\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| <nowiki>BEGIN DECLARE vListaVieja,vListaNueva INT(5); DECLARE vFechaModificacion DATE; DECLARE vHoraModificacion TIME; SET vListaNueva = (SELECT Lista FROM listavigente); SET vListaVieja = (SELECT MAX(listasprecios.Lista) FROM listasprecios WHERE listasprecios.Lista <> NEW.Lista); SET vFechaModificacion = CURDATE(); SET vHoraModificacion = CURTIME(); INSERT INTO precios ( `precios`.`Lista`, `precios`.`ProductoID`, `precios`.`PrecioProd01`, `precios`.`PrecioProd02`, `precios`.`PrecioProd03`, `precios`.`FechaModificacion`, `precios`.`HoraModificacion`)( SELECT vListaNueva, `precios`.`ProductoID`, `precios`.`PrecioProd01`, `precios`.`PrecioProd02`, `precios`.`PrecioProd03`, vFechaModificacion, vHoraModificacion FROM precios WHERE `precios`.`Lista` = vListaVieja); END</nowiki>\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:0.05pt double #808080;padding:0.0194in;\"| AFTER\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| Alta_LogPrecios\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| INSERT\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| logprecios\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| BEGIN DECLARE vCategoriaID,vProveedorID,vPaso VARCHAR(5); SET vCategoriaID = IF(ISNULL(`NEW`.`CategoriaID`),\' \',`NEW`.`CategoriaID`); SET vProveedorID = IF(ISNULL(`NEW`.`ProveedorID`),\' \',`NEW`.`ProveedorID`); SET `NEW`.`FechaModificacion` = CURDATE(); SET `NEW`.`HoraModificacion` = CURTIME(); SET `NEW`.`Lista` = (SELECT max(`listasprecios`.`Lista`) FROM `listasprecios`); IF ISNULL(NEW.CategoriaID) THEN IF ISNULL(NEW.ProveedorID) THEN UPDATE `precios`,`productos` SET `precios`.`PrecioProd01` = `precios`.`PrecioProd01` * `NEW`.`Coeficiente`, `precios`.`PrecioProd02` = `precios`.`PrecioProd02` * `NEW`.`Coeficiente`, `precios`.`PrecioProd03` = `precios`.`PrecioProd03` * `NEW`.`Coeficiente`, `precios`.`FechaModificacion` = CURDATE(), `precios`.`HoraModificacion` = CURTIME() WHERE `precios`.`ProductoID` = `productos`.`ProductoID` AND `precios`.`Lista` = `NEW`.`Lista`; SET vPaso=\'A\'; ELSE UPDATE `precios`,`productos` SET `precios`.`PrecioProd01` = `precios`.`PrecioProd01` * `NEW`.`Coeficiente`, `precios`.`PrecioProd02` = `precios`.`PrecioProd02` * `NEW`.`Coeficiente`, `precios`.`PrecioProd03` = `precios`.`PrecioProd03` * `NEW`.`Coeficiente`, `precios`.`FechaModificacion` = CURDATE(), `precios`.`HoraModificacion` = CURTIME() WHERE `precios`.`ProductoID` = `productos`.`ProductoID` AND `precios`.`Lista` = `NEW`.`Lista` AND `productos`.`ProveedorID` = NEW.ProveedorID; SET vPaso=\'B\'; END IF; ELSE IF ISNULL(NEW.ProveedorID) THEN UPDATE `precios`,`productos` SET `precios`.`PrecioProd01` = `precios`.`PrecioProd01` * `NEW`.`Coeficiente`, `precios`.`PrecioProd02` = `precios`.`PrecioProd02` * `NEW`.`Coeficiente`, `precios`.`PrecioProd03` = `precios`.`PrecioProd03` * `NEW`.`Coeficiente`, `precios`.`FechaModificacion` = CURDATE(), `precios`.`HoraModificacion` = CURTIME() WHERE `precios`.`ProductoID` = `productos`.`ProductoID` AND `precios`.`Lista` = `NEW`.`Lista` AND `productos`.`CategoriaID` = NEW.CategoriaID; SET vPaso=\'C\'; ELSE UPDATE `precios`,`productos` SET `precios`.`PrecioProd01` = `precios`.`PrecioProd01` * `NEW`.`Coeficiente`, `precios`.`PrecioProd02` = `precios`.`PrecioProd02` * `NEW`.`Coeficiente`, `precios`.`PrecioProd03` = `precios`.`PrecioProd03` * `NEW`.`Coeficiente`, `precios`.`FechaModificacion` = CURDATE(), `precios`.`HoraModificacion` = CURTIME() WHERE `precios`.`ProductoID` = `productos`.`ProductoID` AND `precios`.`Lista` = `NEW`.`Lista` AND `productos`.`CategoriaID` = vCategoriaID AND `productos`.`ProveedorID` = vProveedorID; SET vPaso=\'D\'; END IF; END IF; SET `NEW`.`RowsMod` = ROW_COUNT(); END\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:0.05pt double #808080;padding:0.0194in;\"| BEFORE\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| Alta_Precio\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| INSERT\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| precios\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| BEGIN SET NEW.FechaModificacion = CURDATE(), NEW.HoraModificacion = CURTIME(); END\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:0.05pt double #808080;padding:0.0194in;\"| BEFORE\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| Actualiza_Precio\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| UPDATE\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| precios\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| BEGIN SET NEW.FechaModificacion = CURDATE(), NEW.HoraModificacion = CURTIME(); END\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:0.05pt double #808080;padding:0.0194in;\"| BEFORE\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| AltaTransaccion\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| INSERT\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| transacciones\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| BEGIN SET NEW.TransaccFecha = CURDATE(), NEW.TransaccHora = CURTIME(); END\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:0.05pt double #808080;padding:0.0194in;\"| BEFORE\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| Baja_Presupuesto\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| DELETE\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| vidquoten1\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| BEGIN DELETE FROM vidquoten2 WHERE vidquoten2.VidQuoteID=OLD.VidQuoteID; DELETE FROM vidquoten3 WHERE vidquoten3.VidQuoteID=OLD.VidQuoteID; END\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:0.05pt double #808080;padding:0.0194in;\"| AFTER\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| Alta_Item_Presupuesto\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| INSERT\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| vidquoten2\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| BEGIN INSERT INTO vidquoten3 ( VidQuoteID, VidQuoteLPre, VidQuoteItem, VidQuoteProdID, VidQuoteProdCantidad, VidQuoteAncho, VidQuoteAlto, VidQuoteElementoID, VidQuotePrecio, VidQuotePrecioP) SELECT NEW.`VidQuoteID`, NEW.`VidQuoteLPre`, NEW.`VidQuoteItem`, NEW.`VidQuoteProdID`, NEW.`VidQuoteProdCantidad`, NEW.`VidQuoteAncho`, NEW.`VidQuoteAlto`, visintdetpre.`ElementoID`, visintdetpre.`PrecioBase`, visintdetpre.`PrecioBase` * NEW.`VidQuoteProdCantidad` FROM visintdetpre WHERE visintdetpre.`ElementoPM`=1 AND visintdetpre.`VidQuoteProdID`=NEW.`VidQuoteProdID`; END\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:0.05pt double #808080;padding:0.0194in;\"| AFTER\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| Actualiza_Item_Presupuesto\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| UPDATE\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| vidquoten2\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| <nowiki>BEGIN IF OLD.VidQuoteProdID <> NEW.VidQuoteProdID THEN DELETE FROM vidquoten3 WHERE vidquoten3.VidQuoteID=OLD.VidQuoteID AND vidquoten3.VidQuoteItem=OLD.VidQuoteItem; INSERT INTO vidquoten3 ( VidQuoteID, VidQuoteLPre, VidQuoteItem, VidQuoteProdID, VidQuoteProdCantidad, VidQuoteAncho, VidQuoteAlto, VidQuoteElementoID, VidQuotePrecio, VidQuotePrecioP) SELECT NEW.`VidQuoteID`, NEW.`VidQuoteLPre`, NEW.`VidQuoteItem`, NEW.`VidQuoteProdID`, NEW.`VidQuoteProdCantidad`, NEW.`VidQuoteAncho`, NEW.`VidQuoteAlto`, visintdetpre.`ElementoID`, visintdetpre.`PrecioBase`, visintdetpre.`PrecioBase` * NEW.`VidQuoteProdCantidad` FROM visintdetpre WHERE visintdetpre.`ElementoPM`=1 AND visintdetpre.`VidQuoteProdID`=NEW.`VidQuoteProdID`; ELSE UPDATE `fzggestion`.`vidquoten3` AS `T3`,`fzggestion`.`visintdetpre` AS `TV` SET T3.VidQuoteProdCantidad = NEW.`VidQuoteProdCantidad`, T3.VidQuoteAncho = NEW.`VidQuoteAncho`, T3.VidQuoteAlto = NEW.`VidQuoteAlto`, T3.VidQuotePrecio = TV.`PrecioBase`, T3.VidQuotePrecioP = TV.`PrecioBase` * NEW.`VidQuoteProdCantidad` WHERE T3.`VidQuoteID` = TV.`VidQuoteID` AND T3.`VidQuoteItem` = TV.`VidQuoteItem` AND T3.`VidQuoteItem` = NEW.`VidQuoteItem` AND T3.`VidQuoteProdID` = TV.`VidQuoteProdID` AND T3.`VidQuoteElementoID` = TV.`ElementoID`; END IF; END</nowiki>\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:0.05pt double #808080;padding:0.0194in;\"| AFTER\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| Baja_Item_Presupuesto\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| DELETE\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| vidquoten2\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| BEGIN DELETE FROM vidquoten3 WHERE vidquoten3.VidQuoteID=OLD.VidQuoteID AND vidquoten3.VidQuoteItem=OLD.VidQuoteItem; END\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:0.05pt double #808080;padding:0.0194in;\"| AFTER\n\n|}\n</small>\n\n=== Vistas ===\n{| style=\"border-spacing:0;\"\n| style=\"border-top:0.05pt solid #000000;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| <center>\'\'\'Nombre\'\'\'</center>\n| style=\"border-top:0.05pt solid #000000;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| <center>\'\'\'Comando\'\'\'</center>\n| style=\"border-top:0.05pt solid #000000;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| <center>\'\'\'Uso\'\'\'</center>\n| style=\"border:0.05pt solid #000000;padding:0.0382in;\"| <center>\'\'\'Cross\'\'\'</center>\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Viscabdetalla\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.viscabdetalla.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Vista utilizada para agregar la información de cual es la lista de precios a utilizar para el cliente del presupuesto en tiempo real.\n\nFORM: Presupuesto\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Contactos, Vidquoten1\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Proveedores\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.proveedores.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Visualización de Contactos “Proveedores”\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Contactos\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Clientes\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.clientes.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Visualización de Contactos “Clientes”\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Contactos\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Visreppres\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.visreppres.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Vista Reporte Presupuesto Individual. Para generar una línea completa con la información de detalle de los presupuestos con las combinaciones de información a incluir en el mismo. No contiene la información estática del cliente.\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Vislineabs, Visdetaobs\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Viscompodis\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.viscompodis.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Vista de productos (DISTINCT productos) dentro de la tabla de composición ordenada por alfabéticamente.\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| \n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Viscoposimpl\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.viscomposimpl.sql\n\n\n\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Vista de los elementos de composicion con información para query\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Productos, Composición\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Visdetaobs\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.visdetaobs.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Une todas las Observaciones de cada item para los casos que se encuentren señaladas con la Descripción del Producto-Item\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Productos, Vidquoten3\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Visintdetpre\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.visintdetpre.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Reducción de vista Visprodadic aplicable al cálculo de presupuesto con los datos en tiempo real del presupuesto activo en formulario y calculando el precio correcto de acuerdo al cliente y el cálculo del valor del elemento de acuerdo al los valores de Alto y Ancho del Vano en tiempo real\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Visprodadic, Vidquoten2\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Vislineabs\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.vislineabs.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Define linea básica para reporte teniendo como base Vidquoten2, agregando la información de la cabecera + datos de descrpción de producto + el subtotal por Producto-Item\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Vidquoten1, Vidquoten2, Productos, Vissubxitem\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Visprodadic\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.visproadic.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Vista de tabla de componentes con la información de cada elemento como producto y de los precios vigentes.\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Productos, Composicion, PreciosVigentes\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Vissubxitem\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.vissubxitem.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Subtotal por Item de Presupuesto en tiempo real\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Vidquoten3\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Listavigente\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| \n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Selecciona solo el primer registro ordenado en forma descendente de la tabla de listasprecios\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Listasprecios\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Preciosvigentes\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.preciosvigentes.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Es la selección de la tabla de precios referenciando el mayor valor dentro de la tabla de listasprecios\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Listasprecios, Precios\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Preciosvigact\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.preciosvigact.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Vista de lista de precios vigentes con datos de productos para actualización columnar.\n\nFORM: Actualización por tipo de lista\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Preciosvigentes, Productos\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Visprestot\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.visprestot.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Vista de Presupuestos Totalizados por Cliente\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Visreppres\n\n|}\n\n=== Reportes ===\n<small>\n{| style=\"border-spacing:0;\"\n| style=\"border-top:0.05pt solid #000000;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| <center>\'\'\'Nombre\'\'\'</center>\n| style=\"border-top:0.05pt solid #000000;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| <center>\'\'\'Comando\'\'\'</center>\n| style=\"border-top:0.05pt solid #000000;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| <center>\'\'\'Uso\'\'\'</center>\n| style=\"border:0.05pt solid #000000;padding:0.0382in;\"| <center>\'\'\'Observaciones\'\'\'</center>\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Presupuesto\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| SELECT `visreppres`.`VidQuoteID`, `visreppres`.`VidQuoteObra`, `visreppres`.`VidQuoteCliente`, `visreppres`.`VidQuoteFecha`, `visreppres`.`VidQuoteItem`, `visreppres`.`VidQuoteProdCantidad`, `visreppres`.`VidQuoteProdID`, `visreppres`.`VidQuoteDetalle`, `visreppres`.`VidQuotePrecioS`, `clientes`.`RazonSocial`, `clientes`.`Direccion`, `clientes`.`Localidad`, `clientes`.`Provincia` FROM `fzggestion`.`clientes` AS `clientes`, `fzggestion`.`visreppres` AS `visreppres` WHERE `clientes`.`ClienteID` = `visreppres`.`VidQuoteCliente` ORDER BY `visreppres`.`VidQuoteID` ASC, `visreppres`.`VidQuoteObra` ASC, `visreppres`.`VidQuoteCliente` ASC, `visreppres`.`VidQuoteItem` ASC\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Reporte de Presupuesto Individual\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Filtra por Presupuesto. Visreppres\n\n\n\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Productos\n\n\n\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| SELECT `productos`.`ProductoID`, `productos`.`CategoriaID`, `productos`.`Descripcion`, `productos`.`Magnitud`, `productos`.`InsumoIMG` FROM `fzggestion`.`productos` `productos` ORDER BY `productos`.`CategoriaID`, `productos`.`ProductoID`\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Reporte de Productos\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| \n|}\n</small>\n=== Procedimientos ===\n<small>\n{| class=\"wikitable\"\n| <center>\'\'\'Nombre\'\'\'</center>\n| <center>\'\'\'Comando\'\'\'</center>\n| <center>\'\'\'Uso\'\'\'</center>\n| <center>\'\'\'Observaciones\'\'\'</center>\n|-\n| CrearNuevaListaPrecios\n| FZG.Procedure.CrearNuevaListaPrecios.sql\n| FORM: Crear Nueva Lista\n| Agrega registración al tiempo de generar una nueva lista de precios.\n|-\n| DuplicaProductoCompo\n| FZG.Procedure.DuplicaProductoCompo.sql\n| FORM: Copia Composicion\n| Copia las registraciones de un producto dentro de la tabla de composición con el atrubuto ProductoID diferente al original.\n|}\n</small>\n\n=== ACL ===\n# Verificar que la ODB esté registrada en el profile de LO/OO (el getcontext hace referencia a eso)\n# Grabar con semilla de nombre de datasource con el texto -> \"sdbc:mysql:odbc:\'\'<datasource>\'\'\"\n\'\'\'Ingreso de Registro en Tabla\'\'\'\n<small><pre>\nINSERT INTO wscontrol (\n	wskey1,\n	wskey2,\n	wsKey3\n	) \nVALUES(\n	ENCODE(<MAC Address en minúscula sin separadores>,\"sdbc:mysql:odbc:<datasource>\"),\n	ENCODE(<Cantidad de Usuarios en formato fill 0 de 3 dígitos>,\"sdbc:mysql:odbc:<datasource>\")\n	ENCODE(<FechaLimite en ISO Format>,\"sdbc:mysql:odbc:<datasource>\")\n	)\n</pre></small>\n\'\'\'Ejemplo\'\'\'\n<small><pre>\nINSERT INTO wscontrol (\n	wskey1,\n	wskey2,\n	wsKey3\n	) \nVALUES(\n	ENCODE(\"e0cb4ec8dae3\",\"sdbc:mysql:odbc:FazzGlassGestion\"),\n	ENCODE(\"005\",\"sdbc:mysql:odbc:FazzGlassGestion\")\n	ENCODE(\"20120531\",\"sdbc:mysql:odbc:FazzGlassGestion\")\n	)\n</pre></small>\n\'\'\'Corroborar ACL\'\'\'\n<small><pre>\nSELECT\n	wskey1 AS Cantidad,\n	wskey2 AS Usuarios,\n	wskey2 AS Limite,\n	CAST(DECODE(wskey1,\'sdbc:mysql:odbc:FazzGlassGestion\') AS Char(12)),\n	CAST(DECODE(wskey2,\'sdbc:mysql:odbc:FazzGlassGestion\') AS Char(03))\n	CAST(DECODE(wskey3,\'sdbc:mysql:odbc:FazzGlassGestion\') AS Char(08)),\nFROM\n	wscontrol\n</pre></small>\n{{tecla|Ctrl|A}}','utf-8'),(101,'== Gestión Retail Aberturas ==\n*[[Gestión Retail Aberturas: Bitácora]]\n*[[Gestión Retail Aberturas: Pendientes]]\n*[[Gestión Retail Aberturas: Relaciones]]\n=== Gestión de Magnitudes ===\n\n==== Definiciones ====\n*Coeficiente: Por defecto, el valor es 1. Si necesita sumar al valor original, el coeficiente tiene que tener la parte entera al menos en 1. En el caso de magnitudes no estándar, los valores del precio del producto puede estar incluido en el mismo, por lo que hay que verificar en este caso los valores que se ingresen en la [[Tabla:precios]]\n*Offset: Por defecto, el valor es 0\n\n==== Atributos de Productos/Elementos ====\n* M2 = Metro Cuadrado\nPrecio Unitario = Precio determinado por tipo de cliente * (((((Ancho + OffsetAncho)*Coeficiente Ancho) * ((Alto + OffsetAlto)*Coeficiente Alto))/100000) * Coeficiente Elemento)\n\n* ML = Metro Lineal\nPrecio Unitario = Precio determinado por tipo de cliente * (((((Ancho + OffsetAncho) * 2 * Coeficiente Ancho) + ((Alto + OffsetAlto) * 2 * Coeficiente Alto)) / 1000) * Coeficiente Elemento)\n\n* MG = Magnitud Galarza\nPrecio Unitario = Precio determinado por tipo de cliente * ((((Alto + OffsetAlto) * CoeficienteAlto) + (Ancho + OffsetAncho) * CoeficienteAncho)) / 1000) * Coeficiente Elemento)\n\n* UN = Unidad\nPrecio Unitario = Precio determinado por tipo de cliente * Coeficiente Elemento\n\n=== Triggers ===\n<small>\n{| style=\"border-spacing:0;\"\n| style=\"background-color:#c0c0c0;border-top:0.05pt double #808080;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| Trigger\n| style=\"background-color:#c0c0c0;border-top:0.05pt double #808080;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| Event\n| style=\"background-color:#c0c0c0;border-top:0.05pt double #808080;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| Table\n| style=\"background-color:#c0c0c0;border-top:0.05pt double #808080;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| Statement\n| style=\"background-color:#c0c0c0;border:0.05pt double #808080;padding:0.0194in;\"| Timing\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| Alta_ListasPrecios\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| INSERT\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| listasprecios\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| <nowiki>BEGIN DECLARE vListaVieja,vListaNueva INT(5); DECLARE vFechaModificacion DATE; DECLARE vHoraModificacion TIME; SET vListaNueva = (SELECT Lista FROM listavigente); SET vListaVieja = (SELECT MAX(listasprecios.Lista) FROM listasprecios WHERE listasprecios.Lista <> NEW.Lista); SET vFechaModificacion = CURDATE(); SET vHoraModificacion = CURTIME(); INSERT INTO precios ( `precios`.`Lista`, `precios`.`ProductoID`, `precios`.`PrecioProd01`, `precios`.`PrecioProd02`, `precios`.`PrecioProd03`, `precios`.`FechaModificacion`, `precios`.`HoraModificacion`)( SELECT vListaNueva, `precios`.`ProductoID`, `precios`.`PrecioProd01`, `precios`.`PrecioProd02`, `precios`.`PrecioProd03`, vFechaModificacion, vHoraModificacion FROM precios WHERE `precios`.`Lista` = vListaVieja); END</nowiki>\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:0.05pt double #808080;padding:0.0194in;\"| AFTER\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| Alta_LogPrecios\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| INSERT\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| logprecios\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| BEGIN DECLARE vCategoriaID,vProveedorID,vPaso VARCHAR(5); SET vCategoriaID = IF(ISNULL(`NEW`.`CategoriaID`),\' \',`NEW`.`CategoriaID`); SET vProveedorID = IF(ISNULL(`NEW`.`ProveedorID`),\' \',`NEW`.`ProveedorID`); SET `NEW`.`FechaModificacion` = CURDATE(); SET `NEW`.`HoraModificacion` = CURTIME(); SET `NEW`.`Lista` = (SELECT max(`listasprecios`.`Lista`) FROM `listasprecios`); IF ISNULL(NEW.CategoriaID) THEN IF ISNULL(NEW.ProveedorID) THEN UPDATE `precios`,`productos` SET `precios`.`PrecioProd01` = `precios`.`PrecioProd01` * `NEW`.`Coeficiente`, `precios`.`PrecioProd02` = `precios`.`PrecioProd02` * `NEW`.`Coeficiente`, `precios`.`PrecioProd03` = `precios`.`PrecioProd03` * `NEW`.`Coeficiente`, `precios`.`FechaModificacion` = CURDATE(), `precios`.`HoraModificacion` = CURTIME() WHERE `precios`.`ProductoID` = `productos`.`ProductoID` AND `precios`.`Lista` = `NEW`.`Lista`; SET vPaso=\'A\'; ELSE UPDATE `precios`,`productos` SET `precios`.`PrecioProd01` = `precios`.`PrecioProd01` * `NEW`.`Coeficiente`, `precios`.`PrecioProd02` = `precios`.`PrecioProd02` * `NEW`.`Coeficiente`, `precios`.`PrecioProd03` = `precios`.`PrecioProd03` * `NEW`.`Coeficiente`, `precios`.`FechaModificacion` = CURDATE(), `precios`.`HoraModificacion` = CURTIME() WHERE `precios`.`ProductoID` = `productos`.`ProductoID` AND `precios`.`Lista` = `NEW`.`Lista` AND `productos`.`ProveedorID` = NEW.ProveedorID; SET vPaso=\'B\'; END IF; ELSE IF ISNULL(NEW.ProveedorID) THEN UPDATE `precios`,`productos` SET `precios`.`PrecioProd01` = `precios`.`PrecioProd01` * `NEW`.`Coeficiente`, `precios`.`PrecioProd02` = `precios`.`PrecioProd02` * `NEW`.`Coeficiente`, `precios`.`PrecioProd03` = `precios`.`PrecioProd03` * `NEW`.`Coeficiente`, `precios`.`FechaModificacion` = CURDATE(), `precios`.`HoraModificacion` = CURTIME() WHERE `precios`.`ProductoID` = `productos`.`ProductoID` AND `precios`.`Lista` = `NEW`.`Lista` AND `productos`.`CategoriaID` = NEW.CategoriaID; SET vPaso=\'C\'; ELSE UPDATE `precios`,`productos` SET `precios`.`PrecioProd01` = `precios`.`PrecioProd01` * `NEW`.`Coeficiente`, `precios`.`PrecioProd02` = `precios`.`PrecioProd02` * `NEW`.`Coeficiente`, `precios`.`PrecioProd03` = `precios`.`PrecioProd03` * `NEW`.`Coeficiente`, `precios`.`FechaModificacion` = CURDATE(), `precios`.`HoraModificacion` = CURTIME() WHERE `precios`.`ProductoID` = `productos`.`ProductoID` AND `precios`.`Lista` = `NEW`.`Lista` AND `productos`.`CategoriaID` = vCategoriaID AND `productos`.`ProveedorID` = vProveedorID; SET vPaso=\'D\'; END IF; END IF; SET `NEW`.`RowsMod` = ROW_COUNT(); END\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:0.05pt double #808080;padding:0.0194in;\"| BEFORE\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| Alta_Precio\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| INSERT\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| precios\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| BEGIN SET NEW.FechaModificacion = CURDATE(), NEW.HoraModificacion = CURTIME(); END\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:0.05pt double #808080;padding:0.0194in;\"| BEFORE\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| Actualiza_Precio\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| UPDATE\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| precios\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| BEGIN SET NEW.FechaModificacion = CURDATE(), NEW.HoraModificacion = CURTIME(); END\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:0.05pt double #808080;padding:0.0194in;\"| BEFORE\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| AltaTransaccion\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| INSERT\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| transacciones\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| BEGIN SET NEW.TransaccFecha = CURDATE(), NEW.TransaccHora = CURTIME(); END\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:0.05pt double #808080;padding:0.0194in;\"| BEFORE\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| Baja_Presupuesto\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| DELETE\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| vidquoten1\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| BEGIN DELETE FROM vidquoten2 WHERE vidquoten2.VidQuoteID=OLD.VidQuoteID; DELETE FROM vidquoten3 WHERE vidquoten3.VidQuoteID=OLD.VidQuoteID; END\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:0.05pt double #808080;padding:0.0194in;\"| AFTER\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| Alta_Item_Presupuesto\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| INSERT\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| vidquoten2\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| BEGIN INSERT INTO vidquoten3 ( VidQuoteID, VidQuoteLPre, VidQuoteItem, VidQuoteProdID, VidQuoteProdCantidad, VidQuoteAncho, VidQuoteAlto, VidQuoteElementoID, VidQuotePrecio, VidQuotePrecioP) SELECT NEW.`VidQuoteID`, NEW.`VidQuoteLPre`, NEW.`VidQuoteItem`, NEW.`VidQuoteProdID`, NEW.`VidQuoteProdCantidad`, NEW.`VidQuoteAncho`, NEW.`VidQuoteAlto`, visintdetpre.`ElementoID`, visintdetpre.`PrecioBase`, visintdetpre.`PrecioBase` * NEW.`VidQuoteProdCantidad` FROM visintdetpre WHERE visintdetpre.`ElementoPM`=1 AND visintdetpre.`VidQuoteProdID`=NEW.`VidQuoteProdID`; END\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:0.05pt double #808080;padding:0.0194in;\"| AFTER\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| Actualiza_Item_Presupuesto\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| UPDATE\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| vidquoten2\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| <nowiki>BEGIN IF OLD.VidQuoteProdID <> NEW.VidQuoteProdID THEN DELETE FROM vidquoten3 WHERE vidquoten3.VidQuoteID=OLD.VidQuoteID AND vidquoten3.VidQuoteItem=OLD.VidQuoteItem; INSERT INTO vidquoten3 ( VidQuoteID, VidQuoteLPre, VidQuoteItem, VidQuoteProdID, VidQuoteProdCantidad, VidQuoteAncho, VidQuoteAlto, VidQuoteElementoID, VidQuotePrecio, VidQuotePrecioP) SELECT NEW.`VidQuoteID`, NEW.`VidQuoteLPre`, NEW.`VidQuoteItem`, NEW.`VidQuoteProdID`, NEW.`VidQuoteProdCantidad`, NEW.`VidQuoteAncho`, NEW.`VidQuoteAlto`, visintdetpre.`ElementoID`, visintdetpre.`PrecioBase`, visintdetpre.`PrecioBase` * NEW.`VidQuoteProdCantidad` FROM visintdetpre WHERE visintdetpre.`ElementoPM`=1 AND visintdetpre.`VidQuoteProdID`=NEW.`VidQuoteProdID`; ELSE UPDATE `fzggestion`.`vidquoten3` AS `T3`,`fzggestion`.`visintdetpre` AS `TV` SET T3.VidQuoteProdCantidad = NEW.`VidQuoteProdCantidad`, T3.VidQuoteAncho = NEW.`VidQuoteAncho`, T3.VidQuoteAlto = NEW.`VidQuoteAlto`, T3.VidQuotePrecio = TV.`PrecioBase`, T3.VidQuotePrecioP = TV.`PrecioBase` * NEW.`VidQuoteProdCantidad` WHERE T3.`VidQuoteID` = TV.`VidQuoteID` AND T3.`VidQuoteItem` = TV.`VidQuoteItem` AND T3.`VidQuoteItem` = NEW.`VidQuoteItem` AND T3.`VidQuoteProdID` = TV.`VidQuoteProdID` AND T3.`VidQuoteElementoID` = TV.`ElementoID`; END IF; END</nowiki>\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:0.05pt double #808080;padding:0.0194in;\"| AFTER\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| Baja_Item_Presupuesto\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| DELETE\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| vidquoten2\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| BEGIN DELETE FROM vidquoten3 WHERE vidquoten3.VidQuoteID=OLD.VidQuoteID AND vidquoten3.VidQuoteItem=OLD.VidQuoteItem; END\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:0.05pt double #808080;padding:0.0194in;\"| AFTER\n\n|}\n</small>\n\n=== Vistas ===\n{| style=\"border-spacing:0;\"\n| style=\"border-top:0.05pt solid #000000;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| <center>\'\'\'Nombre\'\'\'</center>\n| style=\"border-top:0.05pt solid #000000;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| <center>\'\'\'Comando\'\'\'</center>\n| style=\"border-top:0.05pt solid #000000;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| <center>\'\'\'Uso\'\'\'</center>\n| style=\"border:0.05pt solid #000000;padding:0.0382in;\"| <center>\'\'\'Cross\'\'\'</center>\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Viscabdetalla\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.viscabdetalla.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Vista utilizada para agregar la información de cual es la lista de precios a utilizar para el cliente del presupuesto en tiempo real.\n\nFORM: Presupuesto\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Contactos, Vidquoten1\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Proveedores\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.proveedores.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Visualización de Contactos “Proveedores”\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Contactos\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Clientes\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.clientes.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Visualización de Contactos “Clientes”\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Contactos\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Visreppres\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.visreppres.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Vista Reporte Presupuesto Individual. Para generar una línea completa con la información de detalle de los presupuestos con las combinaciones de información a incluir en el mismo. No contiene la información estática del cliente.\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Vislineabs, Visdetaobs\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Viscompodis\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.viscompodis.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Vista de productos (DISTINCT productos) dentro de la tabla de composición ordenada por alfabéticamente.\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| \n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Viscoposimpl\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.viscomposimpl.sql\n\n\n\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Vista de los elementos de composicion con información para query\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Productos, Composición\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Visdetaobs\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.visdetaobs.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Une todas las Observaciones de cada item para los casos que se encuentren señaladas con la Descripción del Producto-Item\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Productos, Vidquoten3\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Visintdetpre\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.visintdetpre.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Reducción de vista Visprodadic aplicable al cálculo de presupuesto con los datos en tiempo real del presupuesto activo en formulario y calculando el precio correcto de acuerdo al cliente y el cálculo del valor del elemento de acuerdo al los valores de Alto y Ancho del Vano en tiempo real\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Visprodadic, Vidquoten2\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Vislineabs\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.vislineabs.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Define linea básica para reporte teniendo como base Vidquoten2, agregando la información de la cabecera + datos de descrpción de producto + el subtotal por Producto-Item\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Vidquoten1, Vidquoten2, Productos, Vissubxitem\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Visprodadic\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.visproadic.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Vista de tabla de componentes con la información de cada elemento como producto y de los precios vigentes.\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Productos, Composicion, PreciosVigentes\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Vissubxitem\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.vissubxitem.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Subtotal por Item de Presupuesto en tiempo real\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Vidquoten3\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Listavigente\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| \n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Selecciona solo el primer registro ordenado en forma descendente de la tabla de listasprecios\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Listasprecios\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Preciosvigentes\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.preciosvigentes.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Es la selección de la tabla de precios referenciando el mayor valor dentro de la tabla de listasprecios\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Listasprecios, Precios\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Preciosvigact\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.preciosvigact.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Vista de lista de precios vigentes con datos de productos para actualización columnar.\n\nFORM: Actualización por tipo de lista\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Preciosvigentes, Productos\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Visprestot\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.visprestot.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Vista de Presupuestos Totalizados por Cliente\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Visreppres\n\n|}\n\n=== Reportes ===\n<pre>\nSELECT \n    visreppres.VidQuoteID,\n    visreppres.VidQuoteObra,\n    visreppres.VidQuoteCliente,\n    visreppres.VidQuoteFecha,\n    visreppres.VidQuoteItem,\n    visreppres.VidQuoteProdCantidad,\n    visreppres.VidQuoteProdID,\n    visreppres.VidQuoteDetalle,\n    visreppres.VidQuotePrecioS,\n    clientes.RazonSocial,\n    clientes.Direccion,\n    clientes.Localidad,\n    clientes.Provincia\nFROM\n    fzggestion.clientes AS clientes,\n    fzggestion.visreppres AS visreppres\nWHERE\n    clientes.ClienteID = visreppres.VidQuoteCliente\nORDER BY \n    visreppres.VidQuoteID ASC ,\n    visreppres.VidQuoteObra ASC ,\n    visreppres.VidQuoteCliente ASC ,\n    visreppres.VidQuoteItem ASC \n</pre>\n\n\n<small>\n{| style=\"border-spacing:0;\"\n| style=\"border-top:0.05pt solid #000000;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| <center>\'\'\'Nombre\'\'\'</center>\n| style=\"border-top:0.05pt solid #000000;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| <center>\'\'\'Comando\'\'\'</center>\n| style=\"border-top:0.05pt solid #000000;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| <center>\'\'\'Uso\'\'\'</center>\n| style=\"border:0.05pt solid #000000;padding:0.0382in;\"| <center>\'\'\'Observaciones\'\'\'</center>\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Presupuesto\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| <pre>\n<pre>\nSELECT \n    visreppres.VidQuoteID,\n    visreppres.VidQuoteObra,\n    visreppres.VidQuoteCliente,\n    visreppres.VidQuoteFecha,\n    visreppres.VidQuoteItem,\n    visreppres.VidQuoteProdCantidad,\n    visreppres.VidQuoteProdID,\n    visreppres.VidQuoteDetalle,\n    visreppres.VidQuotePrecioS,\n    clientes.RazonSocial,\n    clientes.Direccion,\n    clientes.Localidad,\n    clientes.Provincia\nFROM\n    fzggestion.clientes AS clientes,\n    fzggestion.visreppres AS visreppres\nWHERE\n    clientes.ClienteID = visreppres.VidQuoteCliente\nORDER BY \n    visreppres.VidQuoteID ASC ,\n    visreppres.VidQuoteObra ASC ,\n    visreppres.VidQuoteCliente ASC ,\n    visreppres.VidQuoteItem ASC \n</pre>\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Reporte de Presupuesto Individual\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Filtra por Presupuesto. Visreppres\n\n\n\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Productos\n\n\n\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| SELECT `productos`.`ProductoID`, `productos`.`CategoriaID`, `productos`.`Descripcion`, `productos`.`Magnitud`, `productos`.`InsumoIMG` FROM `fzggestion`.`productos` `productos` ORDER BY `productos`.`CategoriaID`, `productos`.`ProductoID`\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Reporte de Productos\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| \n|}\n</small>\n\n=== Procedimientos ===\n<small>\n{| class=\"wikitable\"\n| <center>\'\'\'Nombre\'\'\'</center>\n| <center>\'\'\'Comando\'\'\'</center>\n| <center>\'\'\'Uso\'\'\'</center>\n| <center>\'\'\'Observaciones\'\'\'</center>\n|-\n| CrearNuevaListaPrecios\n| FZG.Procedure.CrearNuevaListaPrecios.sql\n| FORM: Crear Nueva Lista\n| Agrega registración al tiempo de generar una nueva lista de precios.\n|-\n| DuplicaProductoCompo\n| FZG.Procedure.DuplicaProductoCompo.sql\n| FORM: Copia Composicion\n| Copia las registraciones de un producto dentro de la tabla de composición con el atrubuto ProductoID diferente al original.\n|}\n</small>\n\n=== ACL ===\n# Verificar que la ODB esté registrada en el profile de LO/OO (el getcontext hace referencia a eso)\n# Grabar con semilla de nombre de datasource con el texto -> \"sdbc:mysql:odbc:\'\'<datasource>\'\'\"\n\'\'\'Ingreso de Registro en Tabla\'\'\'\n<small><pre>\nINSERT INTO wscontrol (\n	wskey1,\n	wskey2,\n	wsKey3\n	) \nVALUES(\n	ENCODE(<MAC Address en minúscula sin separadores>,\"sdbc:mysql:odbc:<datasource>\"),\n	ENCODE(<Cantidad de Usuarios en formato fill 0 de 3 dígitos>,\"sdbc:mysql:odbc:<datasource>\")\n	ENCODE(<FechaLimite en ISO Format>,\"sdbc:mysql:odbc:<datasource>\")\n	)\n</pre></small>\n\'\'\'Ejemplo\'\'\'\n<small><pre>\nINSERT INTO wscontrol (\n	wskey1,\n	wskey2,\n	wsKey3\n	) \nVALUES(\n	ENCODE(\"e0cb4ec8dae3\",\"sdbc:mysql:odbc:FazzGlassGestion\"),\n	ENCODE(\"005\",\"sdbc:mysql:odbc:FazzGlassGestion\")\n	ENCODE(\"20120531\",\"sdbc:mysql:odbc:FazzGlassGestion\")\n	)\n</pre></small>\n\'\'\'Corroborar ACL\'\'\'\n<small><pre>\nSELECT\n	wskey1 AS Cantidad,\n	wskey2 AS Usuarios,\n	wskey2 AS Limite,\n	CAST(DECODE(wskey1,\'sdbc:mysql:odbc:FazzGlassGestion\') AS Char(12)),\n	CAST(DECODE(wskey2,\'sdbc:mysql:odbc:FazzGlassGestion\') AS Char(03))\n	CAST(DECODE(wskey3,\'sdbc:mysql:odbc:FazzGlassGestion\') AS Char(08)),\nFROM\n	wscontrol\n</pre></small>\n{{tecla|Ctrl|A}}','utf-8'),(102,'== Gestión Retail Aberturas ==\n*[[Gestión Retail Aberturas: Bitácora]]\n*[[Gestión Retail Aberturas: Pendientes]]\n*[[Gestión Retail Aberturas: Relaciones]]\n=== Gestión de Magnitudes ===\n\n==== Definiciones ====\n*Coeficiente: Por defecto, el valor es 1. Si necesita sumar al valor original, el coeficiente tiene que tener la parte entera al menos en 1. En el caso de magnitudes no estándar, los valores del precio del producto puede estar incluido en el mismo, por lo que hay que verificar en este caso los valores que se ingresen en la [[Tabla:precios]]\n*Offset: Por defecto, el valor es 0\n\n==== Atributos de Productos/Elementos ====\n* M2 = Metro Cuadrado\nPrecio Unitario = Precio determinado por tipo de cliente * (((((Ancho + OffsetAncho)*Coeficiente Ancho) * ((Alto + OffsetAlto)*Coeficiente Alto))/100000) * Coeficiente Elemento)\n\n* ML = Metro Lineal\nPrecio Unitario = Precio determinado por tipo de cliente * (((((Ancho + OffsetAncho) * 2 * Coeficiente Ancho) + ((Alto + OffsetAlto) * 2 * Coeficiente Alto)) / 1000) * Coeficiente Elemento)\n\n* MG = Magnitud Galarza\nPrecio Unitario = Precio determinado por tipo de cliente * ((((Alto + OffsetAlto) * CoeficienteAlto) + (Ancho + OffsetAncho) * CoeficienteAncho)) / 1000) * Coeficiente Elemento)\n\n* UN = Unidad\nPrecio Unitario = Precio determinado por tipo de cliente * Coeficiente Elemento\n\n=== Triggers ===\n<small>\n{| style=\"border-spacing:0;\"\n| style=\"background-color:#c0c0c0;border-top:0.05pt double #808080;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| Trigger\n| style=\"background-color:#c0c0c0;border-top:0.05pt double #808080;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| Event\n| style=\"background-color:#c0c0c0;border-top:0.05pt double #808080;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| Table\n| style=\"background-color:#c0c0c0;border-top:0.05pt double #808080;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| Statement\n| style=\"background-color:#c0c0c0;border:0.05pt double #808080;padding:0.0194in;\"| Timing\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| Alta_ListasPrecios\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| INSERT\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| listasprecios\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| <nowiki>BEGIN DECLARE vListaVieja,vListaNueva INT(5); DECLARE vFechaModificacion DATE; DECLARE vHoraModificacion TIME; SET vListaNueva = (SELECT Lista FROM listavigente); SET vListaVieja = (SELECT MAX(listasprecios.Lista) FROM listasprecios WHERE listasprecios.Lista <> NEW.Lista); SET vFechaModificacion = CURDATE(); SET vHoraModificacion = CURTIME(); INSERT INTO precios ( `precios`.`Lista`, `precios`.`ProductoID`, `precios`.`PrecioProd01`, `precios`.`PrecioProd02`, `precios`.`PrecioProd03`, `precios`.`FechaModificacion`, `precios`.`HoraModificacion`)( SELECT vListaNueva, `precios`.`ProductoID`, `precios`.`PrecioProd01`, `precios`.`PrecioProd02`, `precios`.`PrecioProd03`, vFechaModificacion, vHoraModificacion FROM precios WHERE `precios`.`Lista` = vListaVieja); END</nowiki>\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:0.05pt double #808080;padding:0.0194in;\"| AFTER\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| Alta_LogPrecios\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| INSERT\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| logprecios\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| BEGIN DECLARE vCategoriaID,vProveedorID,vPaso VARCHAR(5); SET vCategoriaID = IF(ISNULL(`NEW`.`CategoriaID`),\' \',`NEW`.`CategoriaID`); SET vProveedorID = IF(ISNULL(`NEW`.`ProveedorID`),\' \',`NEW`.`ProveedorID`); SET `NEW`.`FechaModificacion` = CURDATE(); SET `NEW`.`HoraModificacion` = CURTIME(); SET `NEW`.`Lista` = (SELECT max(`listasprecios`.`Lista`) FROM `listasprecios`); IF ISNULL(NEW.CategoriaID) THEN IF ISNULL(NEW.ProveedorID) THEN UPDATE `precios`,`productos` SET `precios`.`PrecioProd01` = `precios`.`PrecioProd01` * `NEW`.`Coeficiente`, `precios`.`PrecioProd02` = `precios`.`PrecioProd02` * `NEW`.`Coeficiente`, `precios`.`PrecioProd03` = `precios`.`PrecioProd03` * `NEW`.`Coeficiente`, `precios`.`FechaModificacion` = CURDATE(), `precios`.`HoraModificacion` = CURTIME() WHERE `precios`.`ProductoID` = `productos`.`ProductoID` AND `precios`.`Lista` = `NEW`.`Lista`; SET vPaso=\'A\'; ELSE UPDATE `precios`,`productos` SET `precios`.`PrecioProd01` = `precios`.`PrecioProd01` * `NEW`.`Coeficiente`, `precios`.`PrecioProd02` = `precios`.`PrecioProd02` * `NEW`.`Coeficiente`, `precios`.`PrecioProd03` = `precios`.`PrecioProd03` * `NEW`.`Coeficiente`, `precios`.`FechaModificacion` = CURDATE(), `precios`.`HoraModificacion` = CURTIME() WHERE `precios`.`ProductoID` = `productos`.`ProductoID` AND `precios`.`Lista` = `NEW`.`Lista` AND `productos`.`ProveedorID` = NEW.ProveedorID; SET vPaso=\'B\'; END IF; ELSE IF ISNULL(NEW.ProveedorID) THEN UPDATE `precios`,`productos` SET `precios`.`PrecioProd01` = `precios`.`PrecioProd01` * `NEW`.`Coeficiente`, `precios`.`PrecioProd02` = `precios`.`PrecioProd02` * `NEW`.`Coeficiente`, `precios`.`PrecioProd03` = `precios`.`PrecioProd03` * `NEW`.`Coeficiente`, `precios`.`FechaModificacion` = CURDATE(), `precios`.`HoraModificacion` = CURTIME() WHERE `precios`.`ProductoID` = `productos`.`ProductoID` AND `precios`.`Lista` = `NEW`.`Lista` AND `productos`.`CategoriaID` = NEW.CategoriaID; SET vPaso=\'C\'; ELSE UPDATE `precios`,`productos` SET `precios`.`PrecioProd01` = `precios`.`PrecioProd01` * `NEW`.`Coeficiente`, `precios`.`PrecioProd02` = `precios`.`PrecioProd02` * `NEW`.`Coeficiente`, `precios`.`PrecioProd03` = `precios`.`PrecioProd03` * `NEW`.`Coeficiente`, `precios`.`FechaModificacion` = CURDATE(), `precios`.`HoraModificacion` = CURTIME() WHERE `precios`.`ProductoID` = `productos`.`ProductoID` AND `precios`.`Lista` = `NEW`.`Lista` AND `productos`.`CategoriaID` = vCategoriaID AND `productos`.`ProveedorID` = vProveedorID; SET vPaso=\'D\'; END IF; END IF; SET `NEW`.`RowsMod` = ROW_COUNT(); END\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:0.05pt double #808080;padding:0.0194in;\"| BEFORE\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| Alta_Precio\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| INSERT\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| precios\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| BEGIN SET NEW.FechaModificacion = CURDATE(), NEW.HoraModificacion = CURTIME(); END\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:0.05pt double #808080;padding:0.0194in;\"| BEFORE\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| Actualiza_Precio\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| UPDATE\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| precios\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| BEGIN SET NEW.FechaModificacion = CURDATE(), NEW.HoraModificacion = CURTIME(); END\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:0.05pt double #808080;padding:0.0194in;\"| BEFORE\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| AltaTransaccion\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| INSERT\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| transacciones\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| BEGIN SET NEW.TransaccFecha = CURDATE(), NEW.TransaccHora = CURTIME(); END\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:0.05pt double #808080;padding:0.0194in;\"| BEFORE\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| Baja_Presupuesto\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| DELETE\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| vidquoten1\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| BEGIN DELETE FROM vidquoten2 WHERE vidquoten2.VidQuoteID=OLD.VidQuoteID; DELETE FROM vidquoten3 WHERE vidquoten3.VidQuoteID=OLD.VidQuoteID; END\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:0.05pt double #808080;padding:0.0194in;\"| AFTER\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| Alta_Item_Presupuesto\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| INSERT\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| vidquoten2\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| BEGIN INSERT INTO vidquoten3 ( VidQuoteID, VidQuoteLPre, VidQuoteItem, VidQuoteProdID, VidQuoteProdCantidad, VidQuoteAncho, VidQuoteAlto, VidQuoteElementoID, VidQuotePrecio, VidQuotePrecioP) SELECT NEW.`VidQuoteID`, NEW.`VidQuoteLPre`, NEW.`VidQuoteItem`, NEW.`VidQuoteProdID`, NEW.`VidQuoteProdCantidad`, NEW.`VidQuoteAncho`, NEW.`VidQuoteAlto`, visintdetpre.`ElementoID`, visintdetpre.`PrecioBase`, visintdetpre.`PrecioBase` * NEW.`VidQuoteProdCantidad` FROM visintdetpre WHERE visintdetpre.`ElementoPM`=1 AND visintdetpre.`VidQuoteProdID`=NEW.`VidQuoteProdID`; END\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:0.05pt double #808080;padding:0.0194in;\"| AFTER\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| Actualiza_Item_Presupuesto\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| UPDATE\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| vidquoten2\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| <nowiki>BEGIN IF OLD.VidQuoteProdID <> NEW.VidQuoteProdID THEN DELETE FROM vidquoten3 WHERE vidquoten3.VidQuoteID=OLD.VidQuoteID AND vidquoten3.VidQuoteItem=OLD.VidQuoteItem; INSERT INTO vidquoten3 ( VidQuoteID, VidQuoteLPre, VidQuoteItem, VidQuoteProdID, VidQuoteProdCantidad, VidQuoteAncho, VidQuoteAlto, VidQuoteElementoID, VidQuotePrecio, VidQuotePrecioP) SELECT NEW.`VidQuoteID`, NEW.`VidQuoteLPre`, NEW.`VidQuoteItem`, NEW.`VidQuoteProdID`, NEW.`VidQuoteProdCantidad`, NEW.`VidQuoteAncho`, NEW.`VidQuoteAlto`, visintdetpre.`ElementoID`, visintdetpre.`PrecioBase`, visintdetpre.`PrecioBase` * NEW.`VidQuoteProdCantidad` FROM visintdetpre WHERE visintdetpre.`ElementoPM`=1 AND visintdetpre.`VidQuoteProdID`=NEW.`VidQuoteProdID`; ELSE UPDATE `fzggestion`.`vidquoten3` AS `T3`,`fzggestion`.`visintdetpre` AS `TV` SET T3.VidQuoteProdCantidad = NEW.`VidQuoteProdCantidad`, T3.VidQuoteAncho = NEW.`VidQuoteAncho`, T3.VidQuoteAlto = NEW.`VidQuoteAlto`, T3.VidQuotePrecio = TV.`PrecioBase`, T3.VidQuotePrecioP = TV.`PrecioBase` * NEW.`VidQuoteProdCantidad` WHERE T3.`VidQuoteID` = TV.`VidQuoteID` AND T3.`VidQuoteItem` = TV.`VidQuoteItem` AND T3.`VidQuoteItem` = NEW.`VidQuoteItem` AND T3.`VidQuoteProdID` = TV.`VidQuoteProdID` AND T3.`VidQuoteElementoID` = TV.`ElementoID`; END IF; END</nowiki>\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:0.05pt double #808080;padding:0.0194in;\"| AFTER\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| Baja_Item_Presupuesto\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| DELETE\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| vidquoten2\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| BEGIN DELETE FROM vidquoten3 WHERE vidquoten3.VidQuoteID=OLD.VidQuoteID AND vidquoten3.VidQuoteItem=OLD.VidQuoteItem; END\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:0.05pt double #808080;padding:0.0194in;\"| AFTER\n\n|}\n</small>\n\n=== Vistas ===\n{| style=\"border-spacing:0;\"\n| style=\"border-top:0.05pt solid #000000;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| <center>\'\'\'Nombre\'\'\'</center>\n| style=\"border-top:0.05pt solid #000000;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| <center>\'\'\'Comando\'\'\'</center>\n| style=\"border-top:0.05pt solid #000000;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| <center>\'\'\'Uso\'\'\'</center>\n| style=\"border:0.05pt solid #000000;padding:0.0382in;\"| <center>\'\'\'Cross\'\'\'</center>\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Viscabdetalla\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.viscabdetalla.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Vista utilizada para agregar la información de cual es la lista de precios a utilizar para el cliente del presupuesto en tiempo real.\n\nFORM: Presupuesto\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Contactos, Vidquoten1\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Proveedores\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.proveedores.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Visualización de Contactos “Proveedores”\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Contactos\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Clientes\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.clientes.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Visualización de Contactos “Clientes”\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Contactos\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Visreppres\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.visreppres.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Vista Reporte Presupuesto Individual. Para generar una línea completa con la información de detalle de los presupuestos con las combinaciones de información a incluir en el mismo. No contiene la información estática del cliente.\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Vislineabs, Visdetaobs\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Viscompodis\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.viscompodis.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Vista de productos (DISTINCT productos) dentro de la tabla de composición ordenada por alfabéticamente.\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| \n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Viscoposimpl\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.viscomposimpl.sql\n\n\n\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Vista de los elementos de composicion con información para query\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Productos, Composición\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Visdetaobs\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.visdetaobs.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Une todas las Observaciones de cada item para los casos que se encuentren señaladas con la Descripción del Producto-Item\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Productos, Vidquoten3\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Visintdetpre\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.visintdetpre.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Reducción de vista Visprodadic aplicable al cálculo de presupuesto con los datos en tiempo real del presupuesto activo en formulario y calculando el precio correcto de acuerdo al cliente y el cálculo del valor del elemento de acuerdo al los valores de Alto y Ancho del Vano en tiempo real\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Visprodadic, Vidquoten2\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Vislineabs\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.vislineabs.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Define linea básica para reporte teniendo como base Vidquoten2, agregando la información de la cabecera + datos de descrpción de producto + el subtotal por Producto-Item\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Vidquoten1, Vidquoten2, Productos, Vissubxitem\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Visprodadic\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.visproadic.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Vista de tabla de componentes con la información de cada elemento como producto y de los precios vigentes.\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Productos, Composicion, PreciosVigentes\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Vissubxitem\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.vissubxitem.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Subtotal por Item de Presupuesto en tiempo real\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Vidquoten3\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Listavigente\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| \n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Selecciona solo el primer registro ordenado en forma descendente de la tabla de listasprecios\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Listasprecios\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Preciosvigentes\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.preciosvigentes.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Es la selección de la tabla de precios referenciando el mayor valor dentro de la tabla de listasprecios\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Listasprecios, Precios\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Preciosvigact\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.preciosvigact.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Vista de lista de precios vigentes con datos de productos para actualización columnar.\n\nFORM: Actualización por tipo de lista\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Preciosvigentes, Productos\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Visprestot\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.visprestot.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Vista de Presupuestos Totalizados por Cliente\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Visreppres\n\n|}\n\n=== Reportes ===\n<small>\n{| style=\"border-spacing:0;\"\n| <center>\'\'\'Nombre\'\'\'</center>\n| <center>\'\'\'Comando\'\'\'</center>\n| <center>\'\'\'Uso\'\'\'</center>\n| <center>\'\'\'Observaciones\'\'\'</center>\n\n|-\n| Presupuesto\n| <pre>\nSELECT \n    visreppres.VidQuoteID,\n    visreppres.VidQuoteObra,\n    visreppres.VidQuoteCliente,\n    visreppres.VidQuoteFecha,\n    visreppres.VidQuoteItem,\n    visreppres.VidQuoteProdCantidad,\n    visreppres.VidQuoteProdID,\n    visreppres.VidQuoteDetalle,\n    visreppres.VidQuotePrecioS,\n    clientes.RazonSocial,\n    clientes.Direccion,\n    clientes.Localidad,\n    clientes.Provincia\nFROM\n    fzggestion.clientes AS clientes,\n    fzggestion.visreppres AS visreppres\nWHERE\n    clientes.ClienteID = visreppres.VidQuoteCliente\nORDER BY \n    visreppres.VidQuoteID ASC ,\n    visreppres.VidQuoteObra ASC ,\n    visreppres.VidQuoteCliente ASC ,\n    visreppres.VidQuoteItem ASC \n</pre>\n| Reporte de Presupuesto Individual\n| Filtra por Presupuesto. Visreppres\n\n|-\n| Productos\n| SELECT `productos`.`ProductoID`, `productos`.`CategoriaID`, `productos`.`Descripcion`, `productos`.`Magnitud`, `productos`.`InsumoIMG` FROM `fzggestion`.`productos` `productos` ORDER BY `productos`.`CategoriaID`, `productos`.`ProductoID`\n| Reporte de Productos\n| \n|}\n</small>\n\n=== Procedimientos ===\n<small>\n{| class=\"wikitable\"\n| <center>\'\'\'Nombre\'\'\'</center>\n| <center>\'\'\'Comando\'\'\'</center>\n| <center>\'\'\'Uso\'\'\'</center>\n| <center>\'\'\'Observaciones\'\'\'</center>\n|-\n| CrearNuevaListaPrecios\n| FZG.Procedure.CrearNuevaListaPrecios.sql\n| FORM: Crear Nueva Lista\n| Agrega registración al tiempo de generar una nueva lista de precios.\n|-\n| DuplicaProductoCompo\n| FZG.Procedure.DuplicaProductoCompo.sql\n| FORM: Copia Composicion\n| Copia las registraciones de un producto dentro de la tabla de composición con el atrubuto ProductoID diferente al original.\n|}\n</small>\n\n=== ACL ===\n# Verificar que la ODB esté registrada en el profile de LO/OO (el getcontext hace referencia a eso)\n# Grabar con semilla de nombre de datasource con el texto -> \"sdbc:mysql:odbc:\'\'<datasource>\'\'\"\n\'\'\'Ingreso de Registro en Tabla\'\'\'\n<small><pre>\nINSERT INTO wscontrol (\n	wskey1,\n	wskey2,\n	wsKey3\n	) \nVALUES(\n	ENCODE(<MAC Address en minúscula sin separadores>,\"sdbc:mysql:odbc:<datasource>\"),\n	ENCODE(<Cantidad de Usuarios en formato fill 0 de 3 dígitos>,\"sdbc:mysql:odbc:<datasource>\")\n	ENCODE(<FechaLimite en ISO Format>,\"sdbc:mysql:odbc:<datasource>\")\n	)\n</pre></small>\n\'\'\'Ejemplo\'\'\'\n<small><pre>\nINSERT INTO wscontrol (\n	wskey1,\n	wskey2,\n	wsKey3\n	) \nVALUES(\n	ENCODE(\"e0cb4ec8dae3\",\"sdbc:mysql:odbc:FazzGlassGestion\"),\n	ENCODE(\"005\",\"sdbc:mysql:odbc:FazzGlassGestion\")\n	ENCODE(\"20120531\",\"sdbc:mysql:odbc:FazzGlassGestion\")\n	)\n</pre></small>\n\'\'\'Corroborar ACL\'\'\'\n<small><pre>\nSELECT\n	wskey1 AS Cantidad,\n	wskey2 AS Usuarios,\n	wskey2 AS Limite,\n	CAST(DECODE(wskey1,\'sdbc:mysql:odbc:FazzGlassGestion\') AS Char(12)),\n	CAST(DECODE(wskey2,\'sdbc:mysql:odbc:FazzGlassGestion\') AS Char(03))\n	CAST(DECODE(wskey3,\'sdbc:mysql:odbc:FazzGlassGestion\') AS Char(08)),\nFROM\n	wscontrol\n</pre></small>\n{{tecla|Ctrl|A}}','utf-8'),(103,'== Gestión Retail Aberturas ==\n*[[Gestión Retail Aberturas: Bitácora]]\n*[[Gestión Retail Aberturas: Pendientes]]\n*[[Gestión Retail Aberturas: Relaciones]]\n=== Gestión de Magnitudes ===\n\n==== Definiciones ====\n*Coeficiente: Por defecto, el valor es 1. Si necesita sumar al valor original, el coeficiente tiene que tener la parte entera al menos en 1. En el caso de magnitudes no estándar, los valores del precio del producto puede estar incluido en el mismo, por lo que hay que verificar en este caso los valores que se ingresen en la [[Tabla:precios]]\n*Offset: Por defecto, el valor es 0\n\n==== Atributos de Productos/Elementos ====\n* M2 = Metro Cuadrado\nPrecio Unitario = Precio determinado por tipo de cliente * (((((Ancho + OffsetAncho)*Coeficiente Ancho) * ((Alto + OffsetAlto)*Coeficiente Alto))/100000) * Coeficiente Elemento)\n\n* ML = Metro Lineal\nPrecio Unitario = Precio determinado por tipo de cliente * (((((Ancho + OffsetAncho) * 2 * Coeficiente Ancho) + ((Alto + OffsetAlto) * 2 * Coeficiente Alto)) / 1000) * Coeficiente Elemento)\n\n* MG = Magnitud Galarza\nPrecio Unitario = Precio determinado por tipo de cliente * ((((Alto + OffsetAlto) * CoeficienteAlto) + (Ancho + OffsetAncho) * CoeficienteAncho)) / 1000) * Coeficiente Elemento)\n\n* UN = Unidad\nPrecio Unitario = Precio determinado por tipo de cliente * Coeficiente Elemento\n\n=== Triggers ===\n<small>\n{| style=\"border-spacing:0;\"\n| style=\"background-color:#c0c0c0;border-top:0.05pt double #808080;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| Trigger\n| style=\"background-color:#c0c0c0;border-top:0.05pt double #808080;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| Event\n| style=\"background-color:#c0c0c0;border-top:0.05pt double #808080;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| Table\n| style=\"background-color:#c0c0c0;border-top:0.05pt double #808080;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| Statement\n| style=\"background-color:#c0c0c0;border:0.05pt double #808080;padding:0.0194in;\"| Timing\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| Alta_ListasPrecios\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| INSERT\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| listasprecios\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| <nowiki>BEGIN DECLARE vListaVieja,vListaNueva INT(5); DECLARE vFechaModificacion DATE; DECLARE vHoraModificacion TIME; SET vListaNueva = (SELECT Lista FROM listavigente); SET vListaVieja = (SELECT MAX(listasprecios.Lista) FROM listasprecios WHERE listasprecios.Lista <> NEW.Lista); SET vFechaModificacion = CURDATE(); SET vHoraModificacion = CURTIME(); INSERT INTO precios ( `precios`.`Lista`, `precios`.`ProductoID`, `precios`.`PrecioProd01`, `precios`.`PrecioProd02`, `precios`.`PrecioProd03`, `precios`.`FechaModificacion`, `precios`.`HoraModificacion`)( SELECT vListaNueva, `precios`.`ProductoID`, `precios`.`PrecioProd01`, `precios`.`PrecioProd02`, `precios`.`PrecioProd03`, vFechaModificacion, vHoraModificacion FROM precios WHERE `precios`.`Lista` = vListaVieja); END</nowiki>\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:0.05pt double #808080;padding:0.0194in;\"| AFTER\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| Alta_LogPrecios\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| INSERT\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| logprecios\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| BEGIN DECLARE vCategoriaID,vProveedorID,vPaso VARCHAR(5); SET vCategoriaID = IF(ISNULL(`NEW`.`CategoriaID`),\' \',`NEW`.`CategoriaID`); SET vProveedorID = IF(ISNULL(`NEW`.`ProveedorID`),\' \',`NEW`.`ProveedorID`); SET `NEW`.`FechaModificacion` = CURDATE(); SET `NEW`.`HoraModificacion` = CURTIME(); SET `NEW`.`Lista` = (SELECT max(`listasprecios`.`Lista`) FROM `listasprecios`); IF ISNULL(NEW.CategoriaID) THEN IF ISNULL(NEW.ProveedorID) THEN UPDATE `precios`,`productos` SET `precios`.`PrecioProd01` = `precios`.`PrecioProd01` * `NEW`.`Coeficiente`, `precios`.`PrecioProd02` = `precios`.`PrecioProd02` * `NEW`.`Coeficiente`, `precios`.`PrecioProd03` = `precios`.`PrecioProd03` * `NEW`.`Coeficiente`, `precios`.`FechaModificacion` = CURDATE(), `precios`.`HoraModificacion` = CURTIME() WHERE `precios`.`ProductoID` = `productos`.`ProductoID` AND `precios`.`Lista` = `NEW`.`Lista`; SET vPaso=\'A\'; ELSE UPDATE `precios`,`productos` SET `precios`.`PrecioProd01` = `precios`.`PrecioProd01` * `NEW`.`Coeficiente`, `precios`.`PrecioProd02` = `precios`.`PrecioProd02` * `NEW`.`Coeficiente`, `precios`.`PrecioProd03` = `precios`.`PrecioProd03` * `NEW`.`Coeficiente`, `precios`.`FechaModificacion` = CURDATE(), `precios`.`HoraModificacion` = CURTIME() WHERE `precios`.`ProductoID` = `productos`.`ProductoID` AND `precios`.`Lista` = `NEW`.`Lista` AND `productos`.`ProveedorID` = NEW.ProveedorID; SET vPaso=\'B\'; END IF; ELSE IF ISNULL(NEW.ProveedorID) THEN UPDATE `precios`,`productos` SET `precios`.`PrecioProd01` = `precios`.`PrecioProd01` * `NEW`.`Coeficiente`, `precios`.`PrecioProd02` = `precios`.`PrecioProd02` * `NEW`.`Coeficiente`, `precios`.`PrecioProd03` = `precios`.`PrecioProd03` * `NEW`.`Coeficiente`, `precios`.`FechaModificacion` = CURDATE(), `precios`.`HoraModificacion` = CURTIME() WHERE `precios`.`ProductoID` = `productos`.`ProductoID` AND `precios`.`Lista` = `NEW`.`Lista` AND `productos`.`CategoriaID` = NEW.CategoriaID; SET vPaso=\'C\'; ELSE UPDATE `precios`,`productos` SET `precios`.`PrecioProd01` = `precios`.`PrecioProd01` * `NEW`.`Coeficiente`, `precios`.`PrecioProd02` = `precios`.`PrecioProd02` * `NEW`.`Coeficiente`, `precios`.`PrecioProd03` = `precios`.`PrecioProd03` * `NEW`.`Coeficiente`, `precios`.`FechaModificacion` = CURDATE(), `precios`.`HoraModificacion` = CURTIME() WHERE `precios`.`ProductoID` = `productos`.`ProductoID` AND `precios`.`Lista` = `NEW`.`Lista` AND `productos`.`CategoriaID` = vCategoriaID AND `productos`.`ProveedorID` = vProveedorID; SET vPaso=\'D\'; END IF; END IF; SET `NEW`.`RowsMod` = ROW_COUNT(); END\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:0.05pt double #808080;padding:0.0194in;\"| BEFORE\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| Alta_Precio\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| INSERT\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| precios\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| BEGIN SET NEW.FechaModificacion = CURDATE(), NEW.HoraModificacion = CURTIME(); END\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:0.05pt double #808080;padding:0.0194in;\"| BEFORE\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| Actualiza_Precio\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| UPDATE\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| precios\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| BEGIN SET NEW.FechaModificacion = CURDATE(), NEW.HoraModificacion = CURTIME(); END\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:0.05pt double #808080;padding:0.0194in;\"| BEFORE\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| AltaTransaccion\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| INSERT\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| transacciones\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| BEGIN SET NEW.TransaccFecha = CURDATE(), NEW.TransaccHora = CURTIME(); END\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:0.05pt double #808080;padding:0.0194in;\"| BEFORE\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| Baja_Presupuesto\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| DELETE\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| vidquoten1\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| BEGIN DELETE FROM vidquoten2 WHERE vidquoten2.VidQuoteID=OLD.VidQuoteID; DELETE FROM vidquoten3 WHERE vidquoten3.VidQuoteID=OLD.VidQuoteID; END\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:0.05pt double #808080;padding:0.0194in;\"| AFTER\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| Alta_Item_Presupuesto\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| INSERT\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| vidquoten2\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| BEGIN INSERT INTO vidquoten3 ( VidQuoteID, VidQuoteLPre, VidQuoteItem, VidQuoteProdID, VidQuoteProdCantidad, VidQuoteAncho, VidQuoteAlto, VidQuoteElementoID, VidQuotePrecio, VidQuotePrecioP) SELECT NEW.`VidQuoteID`, NEW.`VidQuoteLPre`, NEW.`VidQuoteItem`, NEW.`VidQuoteProdID`, NEW.`VidQuoteProdCantidad`, NEW.`VidQuoteAncho`, NEW.`VidQuoteAlto`, visintdetpre.`ElementoID`, visintdetpre.`PrecioBase`, visintdetpre.`PrecioBase` * NEW.`VidQuoteProdCantidad` FROM visintdetpre WHERE visintdetpre.`ElementoPM`=1 AND visintdetpre.`VidQuoteProdID`=NEW.`VidQuoteProdID`; END\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:0.05pt double #808080;padding:0.0194in;\"| AFTER\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| Actualiza_Item_Presupuesto\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| UPDATE\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| vidquoten2\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| <nowiki>BEGIN IF OLD.VidQuoteProdID <> NEW.VidQuoteProdID THEN DELETE FROM vidquoten3 WHERE vidquoten3.VidQuoteID=OLD.VidQuoteID AND vidquoten3.VidQuoteItem=OLD.VidQuoteItem; INSERT INTO vidquoten3 ( VidQuoteID, VidQuoteLPre, VidQuoteItem, VidQuoteProdID, VidQuoteProdCantidad, VidQuoteAncho, VidQuoteAlto, VidQuoteElementoID, VidQuotePrecio, VidQuotePrecioP) SELECT NEW.`VidQuoteID`, NEW.`VidQuoteLPre`, NEW.`VidQuoteItem`, NEW.`VidQuoteProdID`, NEW.`VidQuoteProdCantidad`, NEW.`VidQuoteAncho`, NEW.`VidQuoteAlto`, visintdetpre.`ElementoID`, visintdetpre.`PrecioBase`, visintdetpre.`PrecioBase` * NEW.`VidQuoteProdCantidad` FROM visintdetpre WHERE visintdetpre.`ElementoPM`=1 AND visintdetpre.`VidQuoteProdID`=NEW.`VidQuoteProdID`; ELSE UPDATE `fzggestion`.`vidquoten3` AS `T3`,`fzggestion`.`visintdetpre` AS `TV` SET T3.VidQuoteProdCantidad = NEW.`VidQuoteProdCantidad`, T3.VidQuoteAncho = NEW.`VidQuoteAncho`, T3.VidQuoteAlto = NEW.`VidQuoteAlto`, T3.VidQuotePrecio = TV.`PrecioBase`, T3.VidQuotePrecioP = TV.`PrecioBase` * NEW.`VidQuoteProdCantidad` WHERE T3.`VidQuoteID` = TV.`VidQuoteID` AND T3.`VidQuoteItem` = TV.`VidQuoteItem` AND T3.`VidQuoteItem` = NEW.`VidQuoteItem` AND T3.`VidQuoteProdID` = TV.`VidQuoteProdID` AND T3.`VidQuoteElementoID` = TV.`ElementoID`; END IF; END</nowiki>\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:0.05pt double #808080;padding:0.0194in;\"| AFTER\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| Baja_Item_Presupuesto\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| DELETE\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| vidquoten2\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| BEGIN DELETE FROM vidquoten3 WHERE vidquoten3.VidQuoteID=OLD.VidQuoteID AND vidquoten3.VidQuoteItem=OLD.VidQuoteItem; END\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:0.05pt double #808080;padding:0.0194in;\"| AFTER\n\n|}\n</small>\n\n=== Vistas ===\n{| style=\"border-spacing:0;\"\n| style=\"border-top:0.05pt solid #000000;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| <center>\'\'\'Nombre\'\'\'</center>\n| style=\"border-top:0.05pt solid #000000;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| <center>\'\'\'Comando\'\'\'</center>\n| style=\"border-top:0.05pt solid #000000;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| <center>\'\'\'Uso\'\'\'</center>\n| style=\"border:0.05pt solid #000000;padding:0.0382in;\"| <center>\'\'\'Cross\'\'\'</center>\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Viscabdetalla\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.viscabdetalla.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Vista utilizada para agregar la información de cual es la lista de precios a utilizar para el cliente del presupuesto en tiempo real.\n\nFORM: Presupuesto\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Contactos, Vidquoten1\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Proveedores\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.proveedores.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Visualización de Contactos “Proveedores”\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Contactos\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Clientes\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.clientes.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Visualización de Contactos “Clientes”\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Contactos\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Visreppres\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.visreppres.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Vista Reporte Presupuesto Individual. Para generar una línea completa con la información de detalle de los presupuestos con las combinaciones de información a incluir en el mismo. No contiene la información estática del cliente.\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Vislineabs, Visdetaobs\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Viscompodis\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.viscompodis.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Vista de productos (DISTINCT productos) dentro de la tabla de composición ordenada por alfabéticamente.\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| \n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Viscoposimpl\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.viscomposimpl.sql\n\n\n\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Vista de los elementos de composicion con información para query\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Productos, Composición\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Visdetaobs\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.visdetaobs.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Une todas las Observaciones de cada item para los casos que se encuentren señaladas con la Descripción del Producto-Item\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Productos, Vidquoten3\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Visintdetpre\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.visintdetpre.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Reducción de vista Visprodadic aplicable al cálculo de presupuesto con los datos en tiempo real del presupuesto activo en formulario y calculando el precio correcto de acuerdo al cliente y el cálculo del valor del elemento de acuerdo al los valores de Alto y Ancho del Vano en tiempo real\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Visprodadic, Vidquoten2\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Vislineabs\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.vislineabs.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Define linea básica para reporte teniendo como base Vidquoten2, agregando la información de la cabecera + datos de descrpción de producto + el subtotal por Producto-Item\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Vidquoten1, Vidquoten2, Productos, Vissubxitem\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Visprodadic\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.visproadic.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Vista de tabla de componentes con la información de cada elemento como producto y de los precios vigentes.\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Productos, Composicion, PreciosVigentes\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Vissubxitem\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.vissubxitem.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Subtotal por Item de Presupuesto en tiempo real\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Vidquoten3\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Listavigente\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| \n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Selecciona solo el primer registro ordenado en forma descendente de la tabla de listasprecios\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Listasprecios\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Preciosvigentes\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.preciosvigentes.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Es la selección de la tabla de precios referenciando el mayor valor dentro de la tabla de listasprecios\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Listasprecios, Precios\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Preciosvigact\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.preciosvigact.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Vista de lista de precios vigentes con datos de productos para actualización columnar.\n\nFORM: Actualización por tipo de lista\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Preciosvigentes, Productos\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Visprestot\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.visprestot.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Vista de Presupuestos Totalizados por Cliente\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Visreppres\n\n|}\n\n=== Reportes ===\n<small>\n{| style=\"border-spacing:0;\"\n| <center>\'\'\'Nombre\'\'\'</center>\n| <center>\'\'\'Comando\'\'\'</center>\n| <center>\'\'\'Uso\'\'\'</center>\n| <center>\'\'\'Observaciones\'\'\'</center>\n\n|-\n| Presupuesto\n| <pre>\nSELECT \n    visreppres.VidQuoteID,\n    visreppres.VidQuoteObra,\n    visreppres.VidQuoteCliente,\n    visreppres.VidQuoteFecha,\n    visreppres.VidQuoteItem,\n    visreppres.VidQuoteProdCantidad,\n    visreppres.VidQuoteProdID,\n    visreppres.VidQuoteDetalle,\n    visreppres.VidQuotePrecioS,\n    clientes.RazonSocial,\n    clientes.Direccion,\n    clientes.Localidad,\n    clientes.Provincia\nFROM\n    fzggestion.clientes AS clientes,\n    fzggestion.visreppres AS visreppres\nWHERE\n    clientes.ClienteID = visreppres.VidQuoteCliente\nORDER BY \n    visreppres.VidQuoteID ASC ,\n    visreppres.VidQuoteObra ASC ,\n    visreppres.VidQuoteCliente ASC ,\n    visreppres.VidQuoteItem ASC \n</pre>\n| Reporte de Presupuesto Individual\n| Filtra por Presupuesto. Visreppres\n\n|-\n| Productos\n| <pre>SELECT \n    productos.ProductoID,\n    productos.CategoriaID,\n    productos.Descripcion,\n    productos.Magnitud,\n    productos.InsumoIMG\nFROM\n    fzggestion.productos productos\nORDER BY \n    productos.CategoriaID,\n    productos.ProductoID</pre>\n| Reporte de Productos\n| \n|}\n</small>\n\n=== Procedimientos ===\n<small>\n{| class=\"wikitable\"\n| <center>\'\'\'Nombre\'\'\'</center>\n| <center>\'\'\'Comando\'\'\'</center>\n| <center>\'\'\'Uso\'\'\'</center>\n| <center>\'\'\'Observaciones\'\'\'</center>\n|-\n| CrearNuevaListaPrecios\n| FZG.Procedure.CrearNuevaListaPrecios.sql\n| FORM: Crear Nueva Lista\n| Agrega registración al tiempo de generar una nueva lista de precios.\n|-\n| DuplicaProductoCompo\n| FZG.Procedure.DuplicaProductoCompo.sql\n| FORM: Copia Composicion\n| Copia las registraciones de un producto dentro de la tabla de composición con el atrubuto ProductoID diferente al original.\n|}\n</small>\n\n=== ACL ===\n# Verificar que la ODB esté registrada en el profile de LO/OO (el getcontext hace referencia a eso)\n# Grabar con semilla de nombre de datasource con el texto -> \"sdbc:mysql:odbc:\'\'<datasource>\'\'\"\n\'\'\'Ingreso de Registro en Tabla\'\'\'\n<small><pre>\nINSERT INTO wscontrol (\n	wskey1,\n	wskey2,\n	wsKey3\n	) \nVALUES(\n	ENCODE(<MAC Address en minúscula sin separadores>,\"sdbc:mysql:odbc:<datasource>\"),\n	ENCODE(<Cantidad de Usuarios en formato fill 0 de 3 dígitos>,\"sdbc:mysql:odbc:<datasource>\")\n	ENCODE(<FechaLimite en ISO Format>,\"sdbc:mysql:odbc:<datasource>\")\n	)\n</pre></small>\n\'\'\'Ejemplo\'\'\'\n<small><pre>\nINSERT INTO wscontrol (\n	wskey1,\n	wskey2,\n	wsKey3\n	) \nVALUES(\n	ENCODE(\"e0cb4ec8dae3\",\"sdbc:mysql:odbc:FazzGlassGestion\"),\n	ENCODE(\"005\",\"sdbc:mysql:odbc:FazzGlassGestion\")\n	ENCODE(\"20120531\",\"sdbc:mysql:odbc:FazzGlassGestion\")\n	)\n</pre></small>\n\'\'\'Corroborar ACL\'\'\'\n<small><pre>\nSELECT\n	wskey1 AS Cantidad,\n	wskey2 AS Usuarios,\n	wskey2 AS Limite,\n	CAST(DECODE(wskey1,\'sdbc:mysql:odbc:FazzGlassGestion\') AS Char(12)),\n	CAST(DECODE(wskey2,\'sdbc:mysql:odbc:FazzGlassGestion\') AS Char(03))\n	CAST(DECODE(wskey3,\'sdbc:mysql:odbc:FazzGlassGestion\') AS Char(08)),\nFROM\n	wscontrol\n</pre></small>\n{{tecla|Ctrl|A}}','utf-8'),(104,'== Gestión Retail Aberturas ==\n*[[Gestión Retail Aberturas: Bitácora]]\n*[[Gestión Retail Aberturas: Pendientes]]\n*[[Gestión Retail Aberturas: Relaciones]]\n=== Gestión de Magnitudes ===\n\n==== Definiciones ====\n*Coeficiente: Por defecto, el valor es 1. Si necesita sumar al valor original, el coeficiente tiene que tener la parte entera al menos en 1. En el caso de magnitudes no estándar, los valores del precio del producto puede estar incluido en el mismo, por lo que hay que verificar en este caso los valores que se ingresen en la [[Tabla:precios]]\n*Offset: Por defecto, el valor es 0\n\n==== Atributos de Productos/Elementos ====\n* M2 = Metro Cuadrado\nPrecio Unitario = Precio determinado por tipo de cliente * (((((Ancho + OffsetAncho)*Coeficiente Ancho) * ((Alto + OffsetAlto)*Coeficiente Alto))/100000) * Coeficiente Elemento)\n\n* ML = Metro Lineal\nPrecio Unitario = Precio determinado por tipo de cliente * (((((Ancho + OffsetAncho) * 2 * Coeficiente Ancho) + ((Alto + OffsetAlto) * 2 * Coeficiente Alto)) / 1000) * Coeficiente Elemento)\n\n* MG = Magnitud Galarza\nPrecio Unitario = Precio determinado por tipo de cliente * ((((Alto + OffsetAlto) * CoeficienteAlto) + (Ancho + OffsetAncho) * CoeficienteAncho)) / 1000) * Coeficiente Elemento)\n\n* UN = Unidad\nPrecio Unitario = Precio determinado por tipo de cliente * Coeficiente Elemento\n\n=== Triggers ===\n<small>\n{| style=\"border-spacing:0;\"\n| style=\"background-color:#c0c0c0;border-top:0.05pt double #808080;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| Trigger\n| style=\"background-color:#c0c0c0;border-top:0.05pt double #808080;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| Event\n| style=\"background-color:#c0c0c0;border-top:0.05pt double #808080;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| Table\n| style=\"background-color:#c0c0c0;border-top:0.05pt double #808080;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| Statement\n| style=\"background-color:#c0c0c0;border:0.05pt double #808080;padding:0.0194in;\"| Timing\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| Alta_ListasPrecios\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| INSERT\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| listasprecios\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| <nowiki>BEGIN DECLARE vListaVieja,vListaNueva INT(5); DECLARE vFechaModificacion DATE; DECLARE vHoraModificacion TIME; SET vListaNueva = (SELECT Lista FROM listavigente); SET vListaVieja = (SELECT MAX(listasprecios.Lista) FROM listasprecios WHERE listasprecios.Lista <> NEW.Lista); SET vFechaModificacion = CURDATE(); SET vHoraModificacion = CURTIME(); INSERT INTO precios ( `precios`.`Lista`, `precios`.`ProductoID`, `precios`.`PrecioProd01`, `precios`.`PrecioProd02`, `precios`.`PrecioProd03`, `precios`.`FechaModificacion`, `precios`.`HoraModificacion`)( SELECT vListaNueva, `precios`.`ProductoID`, `precios`.`PrecioProd01`, `precios`.`PrecioProd02`, `precios`.`PrecioProd03`, vFechaModificacion, vHoraModificacion FROM precios WHERE `precios`.`Lista` = vListaVieja); END</nowiki>\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:0.05pt double #808080;padding:0.0194in;\"| AFTER\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| Alta_LogPrecios\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| INSERT\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| logprecios\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| BEGIN DECLARE vCategoriaID,vProveedorID,vPaso VARCHAR(5); SET vCategoriaID = IF(ISNULL(`NEW`.`CategoriaID`),\' \',`NEW`.`CategoriaID`); SET vProveedorID = IF(ISNULL(`NEW`.`ProveedorID`),\' \',`NEW`.`ProveedorID`); SET `NEW`.`FechaModificacion` = CURDATE(); SET `NEW`.`HoraModificacion` = CURTIME(); SET `NEW`.`Lista` = (SELECT max(`listasprecios`.`Lista`) FROM `listasprecios`); IF ISNULL(NEW.CategoriaID) THEN IF ISNULL(NEW.ProveedorID) THEN UPDATE `precios`,`productos` SET `precios`.`PrecioProd01` = `precios`.`PrecioProd01` * `NEW`.`Coeficiente`, `precios`.`PrecioProd02` = `precios`.`PrecioProd02` * `NEW`.`Coeficiente`, `precios`.`PrecioProd03` = `precios`.`PrecioProd03` * `NEW`.`Coeficiente`, `precios`.`FechaModificacion` = CURDATE(), `precios`.`HoraModificacion` = CURTIME() WHERE `precios`.`ProductoID` = `productos`.`ProductoID` AND `precios`.`Lista` = `NEW`.`Lista`; SET vPaso=\'A\'; ELSE UPDATE `precios`,`productos` SET `precios`.`PrecioProd01` = `precios`.`PrecioProd01` * `NEW`.`Coeficiente`, `precios`.`PrecioProd02` = `precios`.`PrecioProd02` * `NEW`.`Coeficiente`, `precios`.`PrecioProd03` = `precios`.`PrecioProd03` * `NEW`.`Coeficiente`, `precios`.`FechaModificacion` = CURDATE(), `precios`.`HoraModificacion` = CURTIME() WHERE `precios`.`ProductoID` = `productos`.`ProductoID` AND `precios`.`Lista` = `NEW`.`Lista` AND `productos`.`ProveedorID` = NEW.ProveedorID; SET vPaso=\'B\'; END IF; ELSE IF ISNULL(NEW.ProveedorID) THEN UPDATE `precios`,`productos` SET `precios`.`PrecioProd01` = `precios`.`PrecioProd01` * `NEW`.`Coeficiente`, `precios`.`PrecioProd02` = `precios`.`PrecioProd02` * `NEW`.`Coeficiente`, `precios`.`PrecioProd03` = `precios`.`PrecioProd03` * `NEW`.`Coeficiente`, `precios`.`FechaModificacion` = CURDATE(), `precios`.`HoraModificacion` = CURTIME() WHERE `precios`.`ProductoID` = `productos`.`ProductoID` AND `precios`.`Lista` = `NEW`.`Lista` AND `productos`.`CategoriaID` = NEW.CategoriaID; SET vPaso=\'C\'; ELSE UPDATE `precios`,`productos` SET `precios`.`PrecioProd01` = `precios`.`PrecioProd01` * `NEW`.`Coeficiente`, `precios`.`PrecioProd02` = `precios`.`PrecioProd02` * `NEW`.`Coeficiente`, `precios`.`PrecioProd03` = `precios`.`PrecioProd03` * `NEW`.`Coeficiente`, `precios`.`FechaModificacion` = CURDATE(), `precios`.`HoraModificacion` = CURTIME() WHERE `precios`.`ProductoID` = `productos`.`ProductoID` AND `precios`.`Lista` = `NEW`.`Lista` AND `productos`.`CategoriaID` = vCategoriaID AND `productos`.`ProveedorID` = vProveedorID; SET vPaso=\'D\'; END IF; END IF; SET `NEW`.`RowsMod` = ROW_COUNT(); END\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:0.05pt double #808080;padding:0.0194in;\"| BEFORE\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| Alta_Precio\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| INSERT\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| precios\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| BEGIN SET NEW.FechaModificacion = CURDATE(), NEW.HoraModificacion = CURTIME(); END\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:0.05pt double #808080;padding:0.0194in;\"| BEFORE\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| Actualiza_Precio\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| UPDATE\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| precios\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| BEGIN SET NEW.FechaModificacion = CURDATE(), NEW.HoraModificacion = CURTIME(); END\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:0.05pt double #808080;padding:0.0194in;\"| BEFORE\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| AltaTransaccion\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| INSERT\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| transacciones\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| BEGIN SET NEW.TransaccFecha = CURDATE(), NEW.TransaccHora = CURTIME(); END\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:0.05pt double #808080;padding:0.0194in;\"| BEFORE\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| Baja_Presupuesto\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| DELETE\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| vidquoten1\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| BEGIN DELETE FROM vidquoten2 WHERE vidquoten2.VidQuoteID=OLD.VidQuoteID; DELETE FROM vidquoten3 WHERE vidquoten3.VidQuoteID=OLD.VidQuoteID; END\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:0.05pt double #808080;padding:0.0194in;\"| AFTER\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| Alta_Item_Presupuesto\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| INSERT\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| vidquoten2\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| BEGIN INSERT INTO vidquoten3 ( VidQuoteID, VidQuoteLPre, VidQuoteItem, VidQuoteProdID, VidQuoteProdCantidad, VidQuoteAncho, VidQuoteAlto, VidQuoteElementoID, VidQuotePrecio, VidQuotePrecioP) SELECT NEW.`VidQuoteID`, NEW.`VidQuoteLPre`, NEW.`VidQuoteItem`, NEW.`VidQuoteProdID`, NEW.`VidQuoteProdCantidad`, NEW.`VidQuoteAncho`, NEW.`VidQuoteAlto`, visintdetpre.`ElementoID`, visintdetpre.`PrecioBase`, visintdetpre.`PrecioBase` * NEW.`VidQuoteProdCantidad` FROM visintdetpre WHERE visintdetpre.`ElementoPM`=1 AND visintdetpre.`VidQuoteProdID`=NEW.`VidQuoteProdID`; END\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:0.05pt double #808080;padding:0.0194in;\"| AFTER\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| Actualiza_Item_Presupuesto\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| UPDATE\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| vidquoten2\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| <nowiki>BEGIN IF OLD.VidQuoteProdID <> NEW.VidQuoteProdID THEN DELETE FROM vidquoten3 WHERE vidquoten3.VidQuoteID=OLD.VidQuoteID AND vidquoten3.VidQuoteItem=OLD.VidQuoteItem; INSERT INTO vidquoten3 ( VidQuoteID, VidQuoteLPre, VidQuoteItem, VidQuoteProdID, VidQuoteProdCantidad, VidQuoteAncho, VidQuoteAlto, VidQuoteElementoID, VidQuotePrecio, VidQuotePrecioP) SELECT NEW.`VidQuoteID`, NEW.`VidQuoteLPre`, NEW.`VidQuoteItem`, NEW.`VidQuoteProdID`, NEW.`VidQuoteProdCantidad`, NEW.`VidQuoteAncho`, NEW.`VidQuoteAlto`, visintdetpre.`ElementoID`, visintdetpre.`PrecioBase`, visintdetpre.`PrecioBase` * NEW.`VidQuoteProdCantidad` FROM visintdetpre WHERE visintdetpre.`ElementoPM`=1 AND visintdetpre.`VidQuoteProdID`=NEW.`VidQuoteProdID`; ELSE UPDATE `fzggestion`.`vidquoten3` AS `T3`,`fzggestion`.`visintdetpre` AS `TV` SET T3.VidQuoteProdCantidad = NEW.`VidQuoteProdCantidad`, T3.VidQuoteAncho = NEW.`VidQuoteAncho`, T3.VidQuoteAlto = NEW.`VidQuoteAlto`, T3.VidQuotePrecio = TV.`PrecioBase`, T3.VidQuotePrecioP = TV.`PrecioBase` * NEW.`VidQuoteProdCantidad` WHERE T3.`VidQuoteID` = TV.`VidQuoteID` AND T3.`VidQuoteItem` = TV.`VidQuoteItem` AND T3.`VidQuoteItem` = NEW.`VidQuoteItem` AND T3.`VidQuoteProdID` = TV.`VidQuoteProdID` AND T3.`VidQuoteElementoID` = TV.`ElementoID`; END IF; END</nowiki>\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:0.05pt double #808080;padding:0.0194in;\"| AFTER\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| Baja_Item_Presupuesto\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| DELETE\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| vidquoten2\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| BEGIN DELETE FROM vidquoten3 WHERE vidquoten3.VidQuoteID=OLD.VidQuoteID AND vidquoten3.VidQuoteItem=OLD.VidQuoteItem; END\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:0.05pt double #808080;padding:0.0194in;\"| AFTER\n\n|}\n</small>\n\n=== Vistas ===\n{| style=\"border-spacing:0;\"\n| style=\"border-top:0.05pt solid #000000;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| <center>\'\'\'Nombre\'\'\'</center>\n| style=\"border-top:0.05pt solid #000000;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| <center>\'\'\'Comando\'\'\'</center>\n| style=\"border-top:0.05pt solid #000000;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| <center>\'\'\'Uso\'\'\'</center>\n| style=\"border:0.05pt solid #000000;padding:0.0382in;\"| <center>\'\'\'Cross\'\'\'</center>\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Viscabdetalla\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.viscabdetalla.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Vista utilizada para agregar la información de cual es la lista de precios a utilizar para el cliente del presupuesto en tiempo real.\n\nFORM: Presupuesto\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Contactos, Vidquoten1\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Proveedores\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.proveedores.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Visualización de Contactos “Proveedores”\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Contactos\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Clientes\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.clientes.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Visualización de Contactos “Clientes”\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Contactos\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Visreppres\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.visreppres.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Vista Reporte Presupuesto Individual. Para generar una línea completa con la información de detalle de los presupuestos con las combinaciones de información a incluir en el mismo. No contiene la información estática del cliente.\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Vislineabs, Visdetaobs\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Viscompodis\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.viscompodis.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Vista de productos (DISTINCT productos) dentro de la tabla de composición ordenada por alfabéticamente.\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| \n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Viscoposimpl\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.viscomposimpl.sql\n\n\n\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Vista de los elementos de composicion con información para query\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Productos, Composición\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Visdetaobs\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.visdetaobs.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Une todas las Observaciones de cada item para los casos que se encuentren señaladas con la Descripción del Producto-Item\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Productos, Vidquoten3\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Visintdetpre\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.visintdetpre.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Reducción de vista Visprodadic aplicable al cálculo de presupuesto con los datos en tiempo real del presupuesto activo en formulario y calculando el precio correcto de acuerdo al cliente y el cálculo del valor del elemento de acuerdo al los valores de Alto y Ancho del Vano en tiempo real\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Visprodadic, Vidquoten2\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Vislineabs\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.vislineabs.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Define linea básica para reporte teniendo como base Vidquoten2, agregando la información de la cabecera + datos de descrpción de producto + el subtotal por Producto-Item\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Vidquoten1, Vidquoten2, Productos, Vissubxitem\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Visprodadic\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.visproadic.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Vista de tabla de componentes con la información de cada elemento como producto y de los precios vigentes.\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Productos, Composicion, PreciosVigentes\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Vissubxitem\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.vissubxitem.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Subtotal por Item de Presupuesto en tiempo real\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Vidquoten3\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Listavigente\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| \n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Selecciona solo el primer registro ordenado en forma descendente de la tabla de listasprecios\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Listasprecios\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Preciosvigentes\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.preciosvigentes.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Es la selección de la tabla de precios referenciando el mayor valor dentro de la tabla de listasprecios\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Listasprecios, Precios\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Preciosvigact\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.preciosvigact.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Vista de lista de precios vigentes con datos de productos para actualización columnar.\n\nFORM: Actualización por tipo de lista\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Preciosvigentes, Productos\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Visprestot\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.visprestot.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Vista de Presupuestos Totalizados por Cliente\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Visreppres\n\n|}\n\n=== Reportes ===\n<small>\n{| class=\"wikitable\"\n| <center>\'\'\'Nombre\'\'\'</center>\n| <center>\'\'\'Comando\'\'\'</center>\n| <center>\'\'\'Uso\'\'\'</center>\n| <center>\'\'\'Observaciones\'\'\'</center>\n|-\n| Presupuesto\n| <pre>\nSELECT \n    visreppres.VidQuoteID,\n    visreppres.VidQuoteObra,\n    visreppres.VidQuoteCliente,\n    visreppres.VidQuoteFecha,\n    visreppres.VidQuoteItem,\n    visreppres.VidQuoteProdCantidad,\n    visreppres.VidQuoteProdID,\n    visreppres.VidQuoteDetalle,\n    visreppres.VidQuotePrecioS,\n    clientes.RazonSocial,\n    clientes.Direccion,\n    clientes.Localidad,\n    clientes.Provincia\nFROM\n    fzggestion.clientes AS clientes,\n    fzggestion.visreppres AS visreppres\nWHERE\n    clientes.ClienteID = visreppres.VidQuoteCliente\nORDER BY \n    visreppres.VidQuoteID ASC ,\n    visreppres.VidQuoteObra ASC ,\n    visreppres.VidQuoteCliente ASC ,\n    visreppres.VidQuoteItem ASC \n</pre>\n| Reporte de Presupuesto Individual\n| Filtra por Presupuesto. Visreppres\n|-\n| Productos\n| <pre>SELECT \n    productos.ProductoID,\n    productos.CategoriaID,\n    productos.Descripcion,\n    productos.Magnitud,\n    productos.InsumoIMG\nFROM\n    fzggestion.productos productos\nORDER BY \n    productos.CategoriaID,\n    productos.ProductoID</pre>\n| Reporte de Productos\n| \n|}\n</small>\n\n=== Procedimientos ===\n<small>\n{| class=\"wikitable\"\n| <center>\'\'\'Nombre\'\'\'</center>\n| <center>\'\'\'Comando\'\'\'</center>\n| <center>\'\'\'Uso\'\'\'</center>\n| <center>\'\'\'Observaciones\'\'\'</center>\n|-\n| CrearNuevaListaPrecios\n| FZG.Procedure.CrearNuevaListaPrecios.sql\n| FORM: Crear Nueva Lista\n| Agrega registración al tiempo de generar una nueva lista de precios.\n|-\n| DuplicaProductoCompo\n| FZG.Procedure.DuplicaProductoCompo.sql\n| FORM: Copia Composicion\n| Copia las registraciones de un producto dentro de la tabla de composición con el atrubuto ProductoID diferente al original.\n|}\n</small>\n\n=== ACL ===\n# Verificar que la ODB esté registrada en el profile de LO/OO (el getcontext hace referencia a eso)\n# Grabar con semilla de nombre de datasource con el texto -> \"sdbc:mysql:odbc:\'\'<datasource>\'\'\"\n\'\'\'Ingreso de Registro en Tabla\'\'\'\n<small><pre>\nINSERT INTO wscontrol (\n	wskey1,\n	wskey2,\n	wsKey3\n	) \nVALUES(\n	ENCODE(<MAC Address en minúscula sin separadores>,\"sdbc:mysql:odbc:<datasource>\"),\n	ENCODE(<Cantidad de Usuarios en formato fill 0 de 3 dígitos>,\"sdbc:mysql:odbc:<datasource>\")\n	ENCODE(<FechaLimite en ISO Format>,\"sdbc:mysql:odbc:<datasource>\")\n	)\n</pre></small>\n\'\'\'Ejemplo\'\'\'\n<small><pre>\nINSERT INTO wscontrol (\n	wskey1,\n	wskey2,\n	wsKey3\n	) \nVALUES(\n	ENCODE(\"e0cb4ec8dae3\",\"sdbc:mysql:odbc:FazzGlassGestion\"),\n	ENCODE(\"005\",\"sdbc:mysql:odbc:FazzGlassGestion\")\n	ENCODE(\"20120531\",\"sdbc:mysql:odbc:FazzGlassGestion\")\n	)\n</pre></small>\n\'\'\'Corroborar ACL\'\'\'\n<small><pre>\nSELECT\n	wskey1 AS Cantidad,\n	wskey2 AS Usuarios,\n	wskey2 AS Limite,\n	CAST(DECODE(wskey1,\'sdbc:mysql:odbc:FazzGlassGestion\') AS Char(12)),\n	CAST(DECODE(wskey2,\'sdbc:mysql:odbc:FazzGlassGestion\') AS Char(03))\n	CAST(DECODE(wskey3,\'sdbc:mysql:odbc:FazzGlassGestion\') AS Char(08)),\nFROM\n	wscontrol\n</pre></small>\n{{tecla|Ctrl|A}}','utf-8'),(105,'== Gestión Retail Aberturas ==\n*[[Gestión Retail Aberturas: Bitácora]]\n*[[Gestión Retail Aberturas: Pendientes]]\n*[[Gestión Retail Aberturas: Relaciones]]\n=== Gestión de Magnitudes ===\n\n==== Definiciones ====\n*Coeficiente: Por defecto, el valor es 1. Si necesita sumar al valor original, el coeficiente tiene que tener la parte entera al menos en 1. En el caso de magnitudes no estándar, los valores del precio del producto puede estar incluido en el mismo, por lo que hay que verificar en este caso los valores que se ingresen en la [[Tabla:precios]]\n*Offset: Por defecto, el valor es 0\n\n==== Atributos de Productos/Elementos ====\n* M2 = Metro Cuadrado\nPrecio Unitario = Precio determinado por tipo de cliente * (((((Ancho + OffsetAncho)*Coeficiente Ancho) * ((Alto + OffsetAlto)*Coeficiente Alto))/100000) * Coeficiente Elemento)\n\n* ML = Metro Lineal\nPrecio Unitario = Precio determinado por tipo de cliente * (((((Ancho + OffsetAncho) * 2 * Coeficiente Ancho) + ((Alto + OffsetAlto) * 2 * Coeficiente Alto)) / 1000) * Coeficiente Elemento)\n\n* MG = Magnitud Galarza\nPrecio Unitario = Precio determinado por tipo de cliente * ((((Alto + OffsetAlto) * CoeficienteAlto) + (Ancho + OffsetAncho) * CoeficienteAncho)) / 1000) * Coeficiente Elemento)\n\n* UN = Unidad\nPrecio Unitario = Precio determinado por tipo de cliente * Coeficiente Elemento\n\n=== Triggers ===\n<small>\n{| style=\"border-spacing:0;\"\n| style=\"background-color:#c0c0c0;border-top:0.05pt double #808080;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| Trigger\n| style=\"background-color:#c0c0c0;border-top:0.05pt double #808080;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| Event\n| style=\"background-color:#c0c0c0;border-top:0.05pt double #808080;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| Table\n| style=\"background-color:#c0c0c0;border-top:0.05pt double #808080;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| Statement\n| style=\"background-color:#c0c0c0;border:0.05pt double #808080;padding:0.0194in;\"| Timing\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| Alta_ListasPrecios\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| INSERT\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| listasprecios\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| <nowiki>BEGIN DECLARE vListaVieja,vListaNueva INT(5); DECLARE vFechaModificacion DATE; DECLARE vHoraModificacion TIME; SET vListaNueva = (SELECT Lista FROM listavigente); SET vListaVieja = (SELECT MAX(listasprecios.Lista) FROM listasprecios WHERE listasprecios.Lista <> NEW.Lista); SET vFechaModificacion = CURDATE(); SET vHoraModificacion = CURTIME(); INSERT INTO precios ( `precios`.`Lista`, `precios`.`ProductoID`, `precios`.`PrecioProd01`, `precios`.`PrecioProd02`, `precios`.`PrecioProd03`, `precios`.`FechaModificacion`, `precios`.`HoraModificacion`)( SELECT vListaNueva, `precios`.`ProductoID`, `precios`.`PrecioProd01`, `precios`.`PrecioProd02`, `precios`.`PrecioProd03`, vFechaModificacion, vHoraModificacion FROM precios WHERE `precios`.`Lista` = vListaVieja); END</nowiki>\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:0.05pt double #808080;padding:0.0194in;\"| AFTER\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| Alta_LogPrecios\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| INSERT\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| logprecios\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| BEGIN DECLARE vCategoriaID,vProveedorID,vPaso VARCHAR(5); SET vCategoriaID = IF(ISNULL(`NEW`.`CategoriaID`),\' \',`NEW`.`CategoriaID`); SET vProveedorID = IF(ISNULL(`NEW`.`ProveedorID`),\' \',`NEW`.`ProveedorID`); SET `NEW`.`FechaModificacion` = CURDATE(); SET `NEW`.`HoraModificacion` = CURTIME(); SET `NEW`.`Lista` = (SELECT max(`listasprecios`.`Lista`) FROM `listasprecios`); IF ISNULL(NEW.CategoriaID) THEN IF ISNULL(NEW.ProveedorID) THEN UPDATE `precios`,`productos` SET `precios`.`PrecioProd01` = `precios`.`PrecioProd01` * `NEW`.`Coeficiente`, `precios`.`PrecioProd02` = `precios`.`PrecioProd02` * `NEW`.`Coeficiente`, `precios`.`PrecioProd03` = `precios`.`PrecioProd03` * `NEW`.`Coeficiente`, `precios`.`FechaModificacion` = CURDATE(), `precios`.`HoraModificacion` = CURTIME() WHERE `precios`.`ProductoID` = `productos`.`ProductoID` AND `precios`.`Lista` = `NEW`.`Lista`; SET vPaso=\'A\'; ELSE UPDATE `precios`,`productos` SET `precios`.`PrecioProd01` = `precios`.`PrecioProd01` * `NEW`.`Coeficiente`, `precios`.`PrecioProd02` = `precios`.`PrecioProd02` * `NEW`.`Coeficiente`, `precios`.`PrecioProd03` = `precios`.`PrecioProd03` * `NEW`.`Coeficiente`, `precios`.`FechaModificacion` = CURDATE(), `precios`.`HoraModificacion` = CURTIME() WHERE `precios`.`ProductoID` = `productos`.`ProductoID` AND `precios`.`Lista` = `NEW`.`Lista` AND `productos`.`ProveedorID` = NEW.ProveedorID; SET vPaso=\'B\'; END IF; ELSE IF ISNULL(NEW.ProveedorID) THEN UPDATE `precios`,`productos` SET `precios`.`PrecioProd01` = `precios`.`PrecioProd01` * `NEW`.`Coeficiente`, `precios`.`PrecioProd02` = `precios`.`PrecioProd02` * `NEW`.`Coeficiente`, `precios`.`PrecioProd03` = `precios`.`PrecioProd03` * `NEW`.`Coeficiente`, `precios`.`FechaModificacion` = CURDATE(), `precios`.`HoraModificacion` = CURTIME() WHERE `precios`.`ProductoID` = `productos`.`ProductoID` AND `precios`.`Lista` = `NEW`.`Lista` AND `productos`.`CategoriaID` = NEW.CategoriaID; SET vPaso=\'C\'; ELSE UPDATE `precios`,`productos` SET `precios`.`PrecioProd01` = `precios`.`PrecioProd01` * `NEW`.`Coeficiente`, `precios`.`PrecioProd02` = `precios`.`PrecioProd02` * `NEW`.`Coeficiente`, `precios`.`PrecioProd03` = `precios`.`PrecioProd03` * `NEW`.`Coeficiente`, `precios`.`FechaModificacion` = CURDATE(), `precios`.`HoraModificacion` = CURTIME() WHERE `precios`.`ProductoID` = `productos`.`ProductoID` AND `precios`.`Lista` = `NEW`.`Lista` AND `productos`.`CategoriaID` = vCategoriaID AND `productos`.`ProveedorID` = vProveedorID; SET vPaso=\'D\'; END IF; END IF; SET `NEW`.`RowsMod` = ROW_COUNT(); END\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:0.05pt double #808080;padding:0.0194in;\"| BEFORE\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| Alta_Precio\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| INSERT\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| precios\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| BEGIN SET NEW.FechaModificacion = CURDATE(), NEW.HoraModificacion = CURTIME(); END\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:0.05pt double #808080;padding:0.0194in;\"| BEFORE\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| Actualiza_Precio\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| UPDATE\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| precios\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| BEGIN SET NEW.FechaModificacion = CURDATE(), NEW.HoraModificacion = CURTIME(); END\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:0.05pt double #808080;padding:0.0194in;\"| BEFORE\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| AltaTransaccion\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| INSERT\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| transacciones\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| BEGIN SET NEW.TransaccFecha = CURDATE(), NEW.TransaccHora = CURTIME(); END\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:0.05pt double #808080;padding:0.0194in;\"| BEFORE\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| Baja_Presupuesto\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| DELETE\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| vidquoten1\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| BEGIN DELETE FROM vidquoten2 WHERE vidquoten2.VidQuoteID=OLD.VidQuoteID; DELETE FROM vidquoten3 WHERE vidquoten3.VidQuoteID=OLD.VidQuoteID; END\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:0.05pt double #808080;padding:0.0194in;\"| AFTER\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| Alta_Item_Presupuesto\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| INSERT\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| vidquoten2\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| BEGIN INSERT INTO vidquoten3 ( VidQuoteID, VidQuoteLPre, VidQuoteItem, VidQuoteProdID, VidQuoteProdCantidad, VidQuoteAncho, VidQuoteAlto, VidQuoteElementoID, VidQuotePrecio, VidQuotePrecioP) SELECT NEW.`VidQuoteID`, NEW.`VidQuoteLPre`, NEW.`VidQuoteItem`, NEW.`VidQuoteProdID`, NEW.`VidQuoteProdCantidad`, NEW.`VidQuoteAncho`, NEW.`VidQuoteAlto`, visintdetpre.`ElementoID`, visintdetpre.`PrecioBase`, visintdetpre.`PrecioBase` * NEW.`VidQuoteProdCantidad` FROM visintdetpre WHERE visintdetpre.`ElementoPM`=1 AND visintdetpre.`VidQuoteProdID`=NEW.`VidQuoteProdID`; END\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:0.05pt double #808080;padding:0.0194in;\"| AFTER\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| Actualiza_Item_Presupuesto\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| UPDATE\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| vidquoten2\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| <nowiki>BEGIN IF OLD.VidQuoteProdID <> NEW.VidQuoteProdID THEN DELETE FROM vidquoten3 WHERE vidquoten3.VidQuoteID=OLD.VidQuoteID AND vidquoten3.VidQuoteItem=OLD.VidQuoteItem; INSERT INTO vidquoten3 ( VidQuoteID, VidQuoteLPre, VidQuoteItem, VidQuoteProdID, VidQuoteProdCantidad, VidQuoteAncho, VidQuoteAlto, VidQuoteElementoID, VidQuotePrecio, VidQuotePrecioP) SELECT NEW.`VidQuoteID`, NEW.`VidQuoteLPre`, NEW.`VidQuoteItem`, NEW.`VidQuoteProdID`, NEW.`VidQuoteProdCantidad`, NEW.`VidQuoteAncho`, NEW.`VidQuoteAlto`, visintdetpre.`ElementoID`, visintdetpre.`PrecioBase`, visintdetpre.`PrecioBase` * NEW.`VidQuoteProdCantidad` FROM visintdetpre WHERE visintdetpre.`ElementoPM`=1 AND visintdetpre.`VidQuoteProdID`=NEW.`VidQuoteProdID`; ELSE UPDATE `fzggestion`.`vidquoten3` AS `T3`,`fzggestion`.`visintdetpre` AS `TV` SET T3.VidQuoteProdCantidad = NEW.`VidQuoteProdCantidad`, T3.VidQuoteAncho = NEW.`VidQuoteAncho`, T3.VidQuoteAlto = NEW.`VidQuoteAlto`, T3.VidQuotePrecio = TV.`PrecioBase`, T3.VidQuotePrecioP = TV.`PrecioBase` * NEW.`VidQuoteProdCantidad` WHERE T3.`VidQuoteID` = TV.`VidQuoteID` AND T3.`VidQuoteItem` = TV.`VidQuoteItem` AND T3.`VidQuoteItem` = NEW.`VidQuoteItem` AND T3.`VidQuoteProdID` = TV.`VidQuoteProdID` AND T3.`VidQuoteElementoID` = TV.`ElementoID`; END IF; END</nowiki>\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:0.05pt double #808080;padding:0.0194in;\"| AFTER\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| Baja_Item_Presupuesto\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| DELETE\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| vidquoten2\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| BEGIN DELETE FROM vidquoten3 WHERE vidquoten3.VidQuoteID=OLD.VidQuoteID AND vidquoten3.VidQuoteItem=OLD.VidQuoteItem; END\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:0.05pt double #808080;padding:0.0194in;\"| AFTER\n\n|}\n</small>\n\n=== Vistas ===\n\n<small>\n{| class=\"wikitable\"\n| <center>\'\'\'Nombre\'\'\'</center>\n| <center>\'\'\'Comando\'\'\'</center>\n| <center>\'\'\'Uso\'\'\'</center>\n| <center>\'\'\'Observaciones\'\'\'</center>\n|-\n\n\n{| style=\"border-spacing:0;\"\n| style=\"border-top:0.05pt solid #000000;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| <center>\'\'\'Nombre\'\'\'</center>\n| style=\"border-top:0.05pt solid #000000;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| <center>\'\'\'Comando\'\'\'</center>\n| style=\"border-top:0.05pt solid #000000;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| <center>\'\'\'Uso\'\'\'</center>\n| style=\"border:0.05pt solid #000000;padding:0.0382in;\"| <center>\'\'\'Cross\'\'\'</center>\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Viscabdetalla\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.viscabdetalla.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Vista utilizada para agregar la información de cual es la lista de precios a utilizar para el cliente del presupuesto en tiempo real.\n\nFORM: Presupuesto\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Contactos, Vidquoten1\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Proveedores\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.proveedores.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Visualización de Contactos “Proveedores”\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Contactos\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Clientes\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.clientes.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Visualización de Contactos “Clientes”\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Contactos\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Visreppres\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.visreppres.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Vista Reporte Presupuesto Individual. Para generar una línea completa con la información de detalle de los presupuestos con las combinaciones de información a incluir en el mismo. No contiene la información estática del cliente.\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Vislineabs, Visdetaobs\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Viscompodis\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.viscompodis.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Vista de productos (DISTINCT productos) dentro de la tabla de composición ordenada por alfabéticamente.\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| \n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Viscoposimpl\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.viscomposimpl.sql\n\n\n\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Vista de los elementos de composicion con información para query\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Productos, Composición\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Visdetaobs\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.visdetaobs.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Une todas las Observaciones de cada item para los casos que se encuentren señaladas con la Descripción del Producto-Item\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Productos, Vidquoten3\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Visintdetpre\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.visintdetpre.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Reducción de vista Visprodadic aplicable al cálculo de presupuesto con los datos en tiempo real del presupuesto activo en formulario y calculando el precio correcto de acuerdo al cliente y el cálculo del valor del elemento de acuerdo al los valores de Alto y Ancho del Vano en tiempo real\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Visprodadic, Vidquoten2\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Vislineabs\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.vislineabs.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Define linea básica para reporte teniendo como base Vidquoten2, agregando la información de la cabecera + datos de descrpción de producto + el subtotal por Producto-Item\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Vidquoten1, Vidquoten2, Productos, Vissubxitem\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Visprodadic\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.visproadic.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Vista de tabla de componentes con la información de cada elemento como producto y de los precios vigentes.\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Productos, Composicion, PreciosVigentes\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Vissubxitem\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.vissubxitem.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Subtotal por Item de Presupuesto en tiempo real\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Vidquoten3\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Listavigente\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| \n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Selecciona solo el primer registro ordenado en forma descendente de la tabla de listasprecios\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Listasprecios\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Preciosvigentes\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.preciosvigentes.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Es la selección de la tabla de precios referenciando el mayor valor dentro de la tabla de listasprecios\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Listasprecios, Precios\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Preciosvigact\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.preciosvigact.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Vista de lista de precios vigentes con datos de productos para actualización columnar.\n\nFORM: Actualización por tipo de lista\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Preciosvigentes, Productos\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Visprestot\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| FZG.Vista.visprestot.sql\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.0382in;\"| Vista de Presupuestos Totalizados por Cliente\n| style=\"border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.0382in;\"| Visreppres\n\n|}\n\n=== Reportes ===\n<small>\n{| class=\"wikitable\"\n| <center>\'\'\'Nombre\'\'\'</center>\n| <center>\'\'\'Comando\'\'\'</center>\n| <center>\'\'\'Uso\'\'\'</center>\n| <center>\'\'\'Observaciones\'\'\'</center>\n|-\n| Presupuesto\n| <pre>\nSELECT \n    visreppres.VidQuoteID,\n    visreppres.VidQuoteObra,\n    visreppres.VidQuoteCliente,\n    visreppres.VidQuoteFecha,\n    visreppres.VidQuoteItem,\n    visreppres.VidQuoteProdCantidad,\n    visreppres.VidQuoteProdID,\n    visreppres.VidQuoteDetalle,\n    visreppres.VidQuotePrecioS,\n    clientes.RazonSocial,\n    clientes.Direccion,\n    clientes.Localidad,\n    clientes.Provincia\nFROM\n    fzggestion.clientes AS clientes,\n    fzggestion.visreppres AS visreppres\nWHERE\n    clientes.ClienteID = visreppres.VidQuoteCliente\nORDER BY \n    visreppres.VidQuoteID ASC ,\n    visreppres.VidQuoteObra ASC ,\n    visreppres.VidQuoteCliente ASC ,\n    visreppres.VidQuoteItem ASC \n</pre>\n| Reporte de Presupuesto Individual\n| Filtra por Presupuesto. Visreppres\n|-\n| Productos\n| <pre>SELECT \n    productos.ProductoID,\n    productos.CategoriaID,\n    productos.Descripcion,\n    productos.Magnitud,\n    productos.InsumoIMG\nFROM\n    fzggestion.productos productos\nORDER BY \n    productos.CategoriaID,\n    productos.ProductoID</pre>\n| Reporte de Productos\n| \n|}\n</small>\n\n=== Procedimientos ===\n<small>\n{| class=\"wikitable\"\n| <center>\'\'\'Nombre\'\'\'</center>\n| <center>\'\'\'Comando\'\'\'</center>\n| <center>\'\'\'Uso\'\'\'</center>\n| <center>\'\'\'Observaciones\'\'\'</center>\n|-\n| CrearNuevaListaPrecios\n| FZG.Procedure.CrearNuevaListaPrecios.sql\n| FORM: Crear Nueva Lista\n| Agrega registración al tiempo de generar una nueva lista de precios.\n|-\n| DuplicaProductoCompo\n| FZG.Procedure.DuplicaProductoCompo.sql\n| FORM: Copia Composicion\n| Copia las registraciones de un producto dentro de la tabla de composición con el atrubuto ProductoID diferente al original.\n|}\n</small>\n\n=== ACL ===\n# Verificar que la ODB esté registrada en el profile de LO/OO (el getcontext hace referencia a eso)\n# Grabar con semilla de nombre de datasource con el texto -> \"sdbc:mysql:odbc:\'\'<datasource>\'\'\"\n\'\'\'Ingreso de Registro en Tabla\'\'\'\n<small><pre>\nINSERT INTO wscontrol (\n	wskey1,\n	wskey2,\n	wsKey3\n	) \nVALUES(\n	ENCODE(<MAC Address en minúscula sin separadores>,\"sdbc:mysql:odbc:<datasource>\"),\n	ENCODE(<Cantidad de Usuarios en formato fill 0 de 3 dígitos>,\"sdbc:mysql:odbc:<datasource>\")\n	ENCODE(<FechaLimite en ISO Format>,\"sdbc:mysql:odbc:<datasource>\")\n	)\n</pre></small>\n\'\'\'Ejemplo\'\'\'\n<small><pre>\nINSERT INTO wscontrol (\n	wskey1,\n	wskey2,\n	wsKey3\n	) \nVALUES(\n	ENCODE(\"e0cb4ec8dae3\",\"sdbc:mysql:odbc:FazzGlassGestion\"),\n	ENCODE(\"005\",\"sdbc:mysql:odbc:FazzGlassGestion\")\n	ENCODE(\"20120531\",\"sdbc:mysql:odbc:FazzGlassGestion\")\n	)\n</pre></small>\n\'\'\'Corroborar ACL\'\'\'\n<small><pre>\nSELECT\n	wskey1 AS Cantidad,\n	wskey2 AS Usuarios,\n	wskey2 AS Limite,\n	CAST(DECODE(wskey1,\'sdbc:mysql:odbc:FazzGlassGestion\') AS Char(12)),\n	CAST(DECODE(wskey2,\'sdbc:mysql:odbc:FazzGlassGestion\') AS Char(03))\n	CAST(DECODE(wskey3,\'sdbc:mysql:odbc:FazzGlassGestion\') AS Char(08)),\nFROM\n	wscontrol\n</pre></small>\n{{tecla|Ctrl|A}}','utf-8'),(106,'== Gestión Retail Aberturas ==\n*[[Gestión Retail Aberturas: Bitácora]]\n*[[Gestión Retail Aberturas: Pendientes]]\n*[[Gestión Retail Aberturas: Relaciones]]\n=== Gestión de Magnitudes ===\n\n==== Definiciones ====\n*Coeficiente: Por defecto, el valor es 1. Si necesita sumar al valor original, el coeficiente tiene que tener la parte entera al menos en 1. En el caso de magnitudes no estándar, los valores del precio del producto puede estar incluido en el mismo, por lo que hay que verificar en este caso los valores que se ingresen en la [[Tabla:precios]]\n*Offset: Por defecto, el valor es 0\n\n==== Atributos de Productos/Elementos ====\n* M2 = Metro Cuadrado\nPrecio Unitario = Precio determinado por tipo de cliente * (((((Ancho + OffsetAncho)*Coeficiente Ancho) * ((Alto + OffsetAlto)*Coeficiente Alto))/100000) * Coeficiente Elemento)\n\n* ML = Metro Lineal\nPrecio Unitario = Precio determinado por tipo de cliente * (((((Ancho + OffsetAncho) * 2 * Coeficiente Ancho) + ((Alto + OffsetAlto) * 2 * Coeficiente Alto)) / 1000) * Coeficiente Elemento)\n\n* MG = Magnitud Galarza\nPrecio Unitario = Precio determinado por tipo de cliente * ((((Alto + OffsetAlto) * CoeficienteAlto) + (Ancho + OffsetAncho) * CoeficienteAncho)) / 1000) * Coeficiente Elemento)\n\n* UN = Unidad\nPrecio Unitario = Precio determinado por tipo de cliente * Coeficiente Elemento\n\n=== Triggers ===\n<small>\n{| style=\"border-spacing:0;\"\n| style=\"background-color:#c0c0c0;border-top:0.05pt double #808080;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| Trigger\n| style=\"background-color:#c0c0c0;border-top:0.05pt double #808080;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| Event\n| style=\"background-color:#c0c0c0;border-top:0.05pt double #808080;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| Table\n| style=\"background-color:#c0c0c0;border-top:0.05pt double #808080;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| Statement\n| style=\"background-color:#c0c0c0;border:0.05pt double #808080;padding:0.0194in;\"| Timing\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| Alta_ListasPrecios\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| INSERT\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| listasprecios\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| <nowiki>BEGIN DECLARE vListaVieja,vListaNueva INT(5); DECLARE vFechaModificacion DATE; DECLARE vHoraModificacion TIME; SET vListaNueva = (SELECT Lista FROM listavigente); SET vListaVieja = (SELECT MAX(listasprecios.Lista) FROM listasprecios WHERE listasprecios.Lista <> NEW.Lista); SET vFechaModificacion = CURDATE(); SET vHoraModificacion = CURTIME(); INSERT INTO precios ( `precios`.`Lista`, `precios`.`ProductoID`, `precios`.`PrecioProd01`, `precios`.`PrecioProd02`, `precios`.`PrecioProd03`, `precios`.`FechaModificacion`, `precios`.`HoraModificacion`)( SELECT vListaNueva, `precios`.`ProductoID`, `precios`.`PrecioProd01`, `precios`.`PrecioProd02`, `precios`.`PrecioProd03`, vFechaModificacion, vHoraModificacion FROM precios WHERE `precios`.`Lista` = vListaVieja); END</nowiki>\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:0.05pt double #808080;padding:0.0194in;\"| AFTER\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| Alta_LogPrecios\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| INSERT\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| logprecios\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| BEGIN DECLARE vCategoriaID,vProveedorID,vPaso VARCHAR(5); SET vCategoriaID = IF(ISNULL(`NEW`.`CategoriaID`),\' \',`NEW`.`CategoriaID`); SET vProveedorID = IF(ISNULL(`NEW`.`ProveedorID`),\' \',`NEW`.`ProveedorID`); SET `NEW`.`FechaModificacion` = CURDATE(); SET `NEW`.`HoraModificacion` = CURTIME(); SET `NEW`.`Lista` = (SELECT max(`listasprecios`.`Lista`) FROM `listasprecios`); IF ISNULL(NEW.CategoriaID) THEN IF ISNULL(NEW.ProveedorID) THEN UPDATE `precios`,`productos` SET `precios`.`PrecioProd01` = `precios`.`PrecioProd01` * `NEW`.`Coeficiente`, `precios`.`PrecioProd02` = `precios`.`PrecioProd02` * `NEW`.`Coeficiente`, `precios`.`PrecioProd03` = `precios`.`PrecioProd03` * `NEW`.`Coeficiente`, `precios`.`FechaModificacion` = CURDATE(), `precios`.`HoraModificacion` = CURTIME() WHERE `precios`.`ProductoID` = `productos`.`ProductoID` AND `precios`.`Lista` = `NEW`.`Lista`; SET vPaso=\'A\'; ELSE UPDATE `precios`,`productos` SET `precios`.`PrecioProd01` = `precios`.`PrecioProd01` * `NEW`.`Coeficiente`, `precios`.`PrecioProd02` = `precios`.`PrecioProd02` * `NEW`.`Coeficiente`, `precios`.`PrecioProd03` = `precios`.`PrecioProd03` * `NEW`.`Coeficiente`, `precios`.`FechaModificacion` = CURDATE(), `precios`.`HoraModificacion` = CURTIME() WHERE `precios`.`ProductoID` = `productos`.`ProductoID` AND `precios`.`Lista` = `NEW`.`Lista` AND `productos`.`ProveedorID` = NEW.ProveedorID; SET vPaso=\'B\'; END IF; ELSE IF ISNULL(NEW.ProveedorID) THEN UPDATE `precios`,`productos` SET `precios`.`PrecioProd01` = `precios`.`PrecioProd01` * `NEW`.`Coeficiente`, `precios`.`PrecioProd02` = `precios`.`PrecioProd02` * `NEW`.`Coeficiente`, `precios`.`PrecioProd03` = `precios`.`PrecioProd03` * `NEW`.`Coeficiente`, `precios`.`FechaModificacion` = CURDATE(), `precios`.`HoraModificacion` = CURTIME() WHERE `precios`.`ProductoID` = `productos`.`ProductoID` AND `precios`.`Lista` = `NEW`.`Lista` AND `productos`.`CategoriaID` = NEW.CategoriaID; SET vPaso=\'C\'; ELSE UPDATE `precios`,`productos` SET `precios`.`PrecioProd01` = `precios`.`PrecioProd01` * `NEW`.`Coeficiente`, `precios`.`PrecioProd02` = `precios`.`PrecioProd02` * `NEW`.`Coeficiente`, `precios`.`PrecioProd03` = `precios`.`PrecioProd03` * `NEW`.`Coeficiente`, `precios`.`FechaModificacion` = CURDATE(), `precios`.`HoraModificacion` = CURTIME() WHERE `precios`.`ProductoID` = `productos`.`ProductoID` AND `precios`.`Lista` = `NEW`.`Lista` AND `productos`.`CategoriaID` = vCategoriaID AND `productos`.`ProveedorID` = vProveedorID; SET vPaso=\'D\'; END IF; END IF; SET `NEW`.`RowsMod` = ROW_COUNT(); END\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:0.05pt double #808080;padding:0.0194in;\"| BEFORE\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| Alta_Precio\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| INSERT\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| precios\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| BEGIN SET NEW.FechaModificacion = CURDATE(), NEW.HoraModificacion = CURTIME(); END\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:0.05pt double #808080;padding:0.0194in;\"| BEFORE\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| Actualiza_Precio\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| UPDATE\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| precios\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| BEGIN SET NEW.FechaModificacion = CURDATE(), NEW.HoraModificacion = CURTIME(); END\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:0.05pt double #808080;padding:0.0194in;\"| BEFORE\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| AltaTransaccion\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| INSERT\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| transacciones\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| BEGIN SET NEW.TransaccFecha = CURDATE(), NEW.TransaccHora = CURTIME(); END\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:0.05pt double #808080;padding:0.0194in;\"| BEFORE\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| Baja_Presupuesto\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| DELETE\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| vidquoten1\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| BEGIN DELETE FROM vidquoten2 WHERE vidquoten2.VidQuoteID=OLD.VidQuoteID; DELETE FROM vidquoten3 WHERE vidquoten3.VidQuoteID=OLD.VidQuoteID; END\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:0.05pt double #808080;padding:0.0194in;\"| AFTER\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| Alta_Item_Presupuesto\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| INSERT\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| vidquoten2\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| BEGIN INSERT INTO vidquoten3 ( VidQuoteID, VidQuoteLPre, VidQuoteItem, VidQuoteProdID, VidQuoteProdCantidad, VidQuoteAncho, VidQuoteAlto, VidQuoteElementoID, VidQuotePrecio, VidQuotePrecioP) SELECT NEW.`VidQuoteID`, NEW.`VidQuoteLPre`, NEW.`VidQuoteItem`, NEW.`VidQuoteProdID`, NEW.`VidQuoteProdCantidad`, NEW.`VidQuoteAncho`, NEW.`VidQuoteAlto`, visintdetpre.`ElementoID`, visintdetpre.`PrecioBase`, visintdetpre.`PrecioBase` * NEW.`VidQuoteProdCantidad` FROM visintdetpre WHERE visintdetpre.`ElementoPM`=1 AND visintdetpre.`VidQuoteProdID`=NEW.`VidQuoteProdID`; END\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:0.05pt double #808080;padding:0.0194in;\"| AFTER\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| Actualiza_Item_Presupuesto\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| UPDATE\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| vidquoten2\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| <nowiki>BEGIN IF OLD.VidQuoteProdID <> NEW.VidQuoteProdID THEN DELETE FROM vidquoten3 WHERE vidquoten3.VidQuoteID=OLD.VidQuoteID AND vidquoten3.VidQuoteItem=OLD.VidQuoteItem; INSERT INTO vidquoten3 ( VidQuoteID, VidQuoteLPre, VidQuoteItem, VidQuoteProdID, VidQuoteProdCantidad, VidQuoteAncho, VidQuoteAlto, VidQuoteElementoID, VidQuotePrecio, VidQuotePrecioP) SELECT NEW.`VidQuoteID`, NEW.`VidQuoteLPre`, NEW.`VidQuoteItem`, NEW.`VidQuoteProdID`, NEW.`VidQuoteProdCantidad`, NEW.`VidQuoteAncho`, NEW.`VidQuoteAlto`, visintdetpre.`ElementoID`, visintdetpre.`PrecioBase`, visintdetpre.`PrecioBase` * NEW.`VidQuoteProdCantidad` FROM visintdetpre WHERE visintdetpre.`ElementoPM`=1 AND visintdetpre.`VidQuoteProdID`=NEW.`VidQuoteProdID`; ELSE UPDATE `fzggestion`.`vidquoten3` AS `T3`,`fzggestion`.`visintdetpre` AS `TV` SET T3.VidQuoteProdCantidad = NEW.`VidQuoteProdCantidad`, T3.VidQuoteAncho = NEW.`VidQuoteAncho`, T3.VidQuoteAlto = NEW.`VidQuoteAlto`, T3.VidQuotePrecio = TV.`PrecioBase`, T3.VidQuotePrecioP = TV.`PrecioBase` * NEW.`VidQuoteProdCantidad` WHERE T3.`VidQuoteID` = TV.`VidQuoteID` AND T3.`VidQuoteItem` = TV.`VidQuoteItem` AND T3.`VidQuoteItem` = NEW.`VidQuoteItem` AND T3.`VidQuoteProdID` = TV.`VidQuoteProdID` AND T3.`VidQuoteElementoID` = TV.`ElementoID`; END IF; END</nowiki>\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:0.05pt double #808080;padding:0.0194in;\"| AFTER\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| Baja_Item_Presupuesto\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| DELETE\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| vidquoten2\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| BEGIN DELETE FROM vidquoten3 WHERE vidquoten3.VidQuoteID=OLD.VidQuoteID AND vidquoten3.VidQuoteItem=OLD.VidQuoteItem; END\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:0.05pt double #808080;padding:0.0194in;\"| AFTER\n\n|}\n</small>\n\n=== Vistas ===\n<small>\n{| class=\"wikitable\"\n| <center>\'\'\'Nombre\'\'\'</center>\n| <center>\'\'\'Comando\'\'\'</center>\n| <center>\'\'\'Uso\'\'\'</center>\n| <center>\'\'\'Cross\'\'\'</center>\n\n|-\n| Viscabdetalla\n| FZG.Vista.viscabdetalla.sql\n| Vista utilizada para agregar la información de cual es la lista de precios a utilizar para el cliente del presupuesto en tiempo real.FORM: Presupuesto\n| Contactos, Vidquoten1\n\n|-\n| Proveedores\n| FZG.Vista.proveedores.sql\n| Visualización de Contactos “Proveedores”\n| Contactos\n\n|-\n| Clientes\n| FZG.Vista.clientes.sql\n| Visualización de Contactos “Clientes”\n| Contactos\n\n|-\n| Visreppres\n| FZG.Vista.visreppres.sql\n| Vista Reporte Presupuesto Individual. Para generar una línea completa con la información de detalle de los presupuestos con las combinaciones de información a incluir en el mismo. No contiene la información estática del cliente.\n| Vislineabs, Visdetaobs\n\n|-\n| Viscompodis\n| FZG.Vista.viscompodis.sql\n| Vista de productos (DISTINCT productos) dentro de la tabla de composición ordenada por alfabéticamente.\n| \n\n|-\n| Viscoposimpl\n| FZG.Vista.viscomposimpl.sql\n| Vista de los elementos de composicion con información para query\n| Productos, Composición\n\n|-\n| Visdetaobs\n| FZG.Vista.visdetaobs.sql\n| Une todas las Observaciones de cada item para los casos que se encuentren señaladas con la Descripción del Producto-Item\n| Productos, Vidquoten3\n\n|-\n| Visintdetpre\n| FZG.Vista.visintdetpre.sql\n| Reducción de vista Visprodadic aplicable al cálculo de presupuesto con los datos en tiempo real del presupuesto activo en formulario y calculando el precio correcto de acuerdo al cliente y el cálculo del valor del elemento de acuerdo al los valores de Alto y Ancho del Vano en tiempo real\n| Visprodadic, Vidquoten2\n\n|-\n| Vislineabs\n| FZG.Vista.vislineabs.sql\n| Define linea básica para reporte teniendo como base Vidquoten2, agregando la información de la cabecera + datos de descrpción de producto + el subtotal por Producto-Item\n| Vidquoten1, Vidquoten2, Productos, Vissubxitem\n\n|-\n| Visprodadic\n| FZG.Vista.visproadic.sql\n| Vista de tabla de componentes con la información de cada elemento como producto y de los precios vigentes.\n| Productos, Composicion, PreciosVigentes\n\n|-\n| Vissubxitem\n| FZG.Vista.vissubxitem.sql\n| Subtotal por Item de Presupuesto en tiempo real\n| Vidquoten3\n\n|-\n| Listavigente\n| \n| Selecciona solo el primer registro ordenado en forma descendente de la tabla de listasprecios\n| Listasprecios\n\n|-\n| Preciosvigentes\n| FZG.Vista.preciosvigentes.sql\n| Es la selección de la tabla de precios referenciando el mayor valor dentro de la tabla de listasprecios\n| Listasprecios, Precios\n\n|-\n| Preciosvigact\n| FZG.Vista.preciosvigact.sql\n| Vista de lista de precios vigentes con datos de productos para actualización columnar.FORM: Actualización por tipo de lista\n| Preciosvigentes, Productos\n\n|-\n| Visprestot\n| FZG.Vista.visprestot.sql\n| Vista de Presupuestos Totalizados por Cliente\n| Visreppres\n\n|}\n\n=== Reportes ===\n<small>\n{| class=\"wikitable\"\n| <center>\'\'\'Nombre\'\'\'</center>\n| <center>\'\'\'Comando\'\'\'</center>\n| <center>\'\'\'Uso\'\'\'</center>\n| <center>\'\'\'Observaciones\'\'\'</center>\n|-\n| Presupuesto\n| <pre>\nSELECT \n    visreppres.VidQuoteID,\n    visreppres.VidQuoteObra,\n    visreppres.VidQuoteCliente,\n    visreppres.VidQuoteFecha,\n    visreppres.VidQuoteItem,\n    visreppres.VidQuoteProdCantidad,\n    visreppres.VidQuoteProdID,\n    visreppres.VidQuoteDetalle,\n    visreppres.VidQuotePrecioS,\n    clientes.RazonSocial,\n    clientes.Direccion,\n    clientes.Localidad,\n    clientes.Provincia\nFROM\n    fzggestion.clientes AS clientes,\n    fzggestion.visreppres AS visreppres\nWHERE\n    clientes.ClienteID = visreppres.VidQuoteCliente\nORDER BY \n    visreppres.VidQuoteID ASC ,\n    visreppres.VidQuoteObra ASC ,\n    visreppres.VidQuoteCliente ASC ,\n    visreppres.VidQuoteItem ASC \n</pre>\n| Reporte de Presupuesto Individual\n| Filtra por Presupuesto. Visreppres\n|-\n| Productos\n| <pre>SELECT \n    productos.ProductoID,\n    productos.CategoriaID,\n    productos.Descripcion,\n    productos.Magnitud,\n    productos.InsumoIMG\nFROM\n    fzggestion.productos productos\nORDER BY \n    productos.CategoriaID,\n    productos.ProductoID</pre>\n| Reporte de Productos\n| \n|}\n</small>\n\n=== Procedimientos ===\n<small>\n{| class=\"wikitable\"\n| <center>\'\'\'Nombre\'\'\'</center>\n| <center>\'\'\'Comando\'\'\'</center>\n| <center>\'\'\'Uso\'\'\'</center>\n| <center>\'\'\'Observaciones\'\'\'</center>\n|-\n| CrearNuevaListaPrecios\n| FZG.Procedure.CrearNuevaListaPrecios.sql\n| FORM: Crear Nueva Lista\n| Agrega registración al tiempo de generar una nueva lista de precios.\n|-\n| DuplicaProductoCompo\n| FZG.Procedure.DuplicaProductoCompo.sql\n| FORM: Copia Composicion\n| Copia las registraciones de un producto dentro de la tabla de composición con el atrubuto ProductoID diferente al original.\n|}\n</small>\n\n=== ACL ===\n# Verificar que la ODB esté registrada en el profile de LO/OO (el getcontext hace referencia a eso)\n# Grabar con semilla de nombre de datasource con el texto -> \"sdbc:mysql:odbc:\'\'<datasource>\'\'\"\n\'\'\'Ingreso de Registro en Tabla\'\'\'\n<small><pre>\nINSERT INTO wscontrol (\n	wskey1,\n	wskey2,\n	wsKey3\n	) \nVALUES(\n	ENCODE(<MAC Address en minúscula sin separadores>,\"sdbc:mysql:odbc:<datasource>\"),\n	ENCODE(<Cantidad de Usuarios en formato fill 0 de 3 dígitos>,\"sdbc:mysql:odbc:<datasource>\")\n	ENCODE(<FechaLimite en ISO Format>,\"sdbc:mysql:odbc:<datasource>\")\n	)\n</pre></small>\n\'\'\'Ejemplo\'\'\'\n<small><pre>\nINSERT INTO wscontrol (\n	wskey1,\n	wskey2,\n	wsKey3\n	) \nVALUES(\n	ENCODE(\"e0cb4ec8dae3\",\"sdbc:mysql:odbc:FazzGlassGestion\"),\n	ENCODE(\"005\",\"sdbc:mysql:odbc:FazzGlassGestion\")\n	ENCODE(\"20120531\",\"sdbc:mysql:odbc:FazzGlassGestion\")\n	)\n</pre></small>\n\'\'\'Corroborar ACL\'\'\'\n<small><pre>\nSELECT\n	wskey1 AS Cantidad,\n	wskey2 AS Usuarios,\n	wskey2 AS Limite,\n	CAST(DECODE(wskey1,\'sdbc:mysql:odbc:FazzGlassGestion\') AS Char(12)),\n	CAST(DECODE(wskey2,\'sdbc:mysql:odbc:FazzGlassGestion\') AS Char(03))\n	CAST(DECODE(wskey3,\'sdbc:mysql:odbc:FazzGlassGestion\') AS Char(08)),\nFROM\n	wscontrol\n</pre></small>\n{{tecla|Ctrl|A}}','utf-8'),(107,'== Gestión Retail Aberturas ==\n*[[Gestión Retail Aberturas: Bitácora]]\n*[[Gestión Retail Aberturas: Pendientes]]\n*[[Gestión Retail Aberturas: Relaciones]]\n=== Gestión de Magnitudes ===\n\n==== Definiciones ====\n*Coeficiente: Por defecto, el valor es 1. Si necesita sumar al valor original, el coeficiente tiene que tener la parte entera al menos en 1. En el caso de magnitudes no estándar, los valores del precio del producto puede estar incluido en el mismo, por lo que hay que verificar en este caso los valores que se ingresen en la [[Tabla:precios]]\n*Offset: Por defecto, el valor es 0\n\n==== Atributos de Productos/Elementos ====\n* M2 = Metro Cuadrado\nPrecio Unitario = Precio determinado por tipo de cliente * (((((Ancho + OffsetAncho)*Coeficiente Ancho) * ((Alto + OffsetAlto)*Coeficiente Alto))/100000) * Coeficiente Elemento)\n\n* ML = Metro Lineal\nPrecio Unitario = Precio determinado por tipo de cliente * (((((Ancho + OffsetAncho) * 2 * Coeficiente Ancho) + ((Alto + OffsetAlto) * 2 * Coeficiente Alto)) / 1000) * Coeficiente Elemento)\n\n* MG = Magnitud Galarza\nPrecio Unitario = Precio determinado por tipo de cliente * ((((Alto + OffsetAlto) * CoeficienteAlto) + (Ancho + OffsetAncho) * CoeficienteAncho)) / 1000) * Coeficiente Elemento)\n\n* UN = Unidad\nPrecio Unitario = Precio determinado por tipo de cliente * Coeficiente Elemento\n\n=== Triggers ===\n<small>\n{| style=\"border-spacing:0;\"\n| style=\"background-color:#c0c0c0;border-top:0.05pt double #808080;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| Trigger\n| style=\"background-color:#c0c0c0;border-top:0.05pt double #808080;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| Event\n| style=\"background-color:#c0c0c0;border-top:0.05pt double #808080;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| Table\n| style=\"background-color:#c0c0c0;border-top:0.05pt double #808080;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| Statement\n| style=\"background-color:#c0c0c0;border:0.05pt double #808080;padding:0.0194in;\"| Timing\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| Alta_ListasPrecios\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| INSERT\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| listasprecios\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| <nowiki>BEGIN DECLARE vListaVieja,vListaNueva INT(5); DECLARE vFechaModificacion DATE; DECLARE vHoraModificacion TIME; SET vListaNueva = (SELECT Lista FROM listavigente); SET vListaVieja = (SELECT MAX(listasprecios.Lista) FROM listasprecios WHERE listasprecios.Lista <> NEW.Lista); SET vFechaModificacion = CURDATE(); SET vHoraModificacion = CURTIME(); INSERT INTO precios ( `precios`.`Lista`, `precios`.`ProductoID`, `precios`.`PrecioProd01`, `precios`.`PrecioProd02`, `precios`.`PrecioProd03`, `precios`.`FechaModificacion`, `precios`.`HoraModificacion`)( SELECT vListaNueva, `precios`.`ProductoID`, `precios`.`PrecioProd01`, `precios`.`PrecioProd02`, `precios`.`PrecioProd03`, vFechaModificacion, vHoraModificacion FROM precios WHERE `precios`.`Lista` = vListaVieja); END</nowiki>\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:0.05pt double #808080;padding:0.0194in;\"| AFTER\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| Alta_LogPrecios\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| INSERT\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| logprecios\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| BEGIN DECLARE vCategoriaID,vProveedorID,vPaso VARCHAR(5); SET vCategoriaID = IF(ISNULL(`NEW`.`CategoriaID`),\' \',`NEW`.`CategoriaID`); SET vProveedorID = IF(ISNULL(`NEW`.`ProveedorID`),\' \',`NEW`.`ProveedorID`); SET `NEW`.`FechaModificacion` = CURDATE(); SET `NEW`.`HoraModificacion` = CURTIME(); SET `NEW`.`Lista` = (SELECT max(`listasprecios`.`Lista`) FROM `listasprecios`); IF ISNULL(NEW.CategoriaID) THEN IF ISNULL(NEW.ProveedorID) THEN UPDATE `precios`,`productos` SET `precios`.`PrecioProd01` = `precios`.`PrecioProd01` * `NEW`.`Coeficiente`, `precios`.`PrecioProd02` = `precios`.`PrecioProd02` * `NEW`.`Coeficiente`, `precios`.`PrecioProd03` = `precios`.`PrecioProd03` * `NEW`.`Coeficiente`, `precios`.`FechaModificacion` = CURDATE(), `precios`.`HoraModificacion` = CURTIME() WHERE `precios`.`ProductoID` = `productos`.`ProductoID` AND `precios`.`Lista` = `NEW`.`Lista`; SET vPaso=\'A\'; ELSE UPDATE `precios`,`productos` SET `precios`.`PrecioProd01` = `precios`.`PrecioProd01` * `NEW`.`Coeficiente`, `precios`.`PrecioProd02` = `precios`.`PrecioProd02` * `NEW`.`Coeficiente`, `precios`.`PrecioProd03` = `precios`.`PrecioProd03` * `NEW`.`Coeficiente`, `precios`.`FechaModificacion` = CURDATE(), `precios`.`HoraModificacion` = CURTIME() WHERE `precios`.`ProductoID` = `productos`.`ProductoID` AND `precios`.`Lista` = `NEW`.`Lista` AND `productos`.`ProveedorID` = NEW.ProveedorID; SET vPaso=\'B\'; END IF; ELSE IF ISNULL(NEW.ProveedorID) THEN UPDATE `precios`,`productos` SET `precios`.`PrecioProd01` = `precios`.`PrecioProd01` * `NEW`.`Coeficiente`, `precios`.`PrecioProd02` = `precios`.`PrecioProd02` * `NEW`.`Coeficiente`, `precios`.`PrecioProd03` = `precios`.`PrecioProd03` * `NEW`.`Coeficiente`, `precios`.`FechaModificacion` = CURDATE(), `precios`.`HoraModificacion` = CURTIME() WHERE `precios`.`ProductoID` = `productos`.`ProductoID` AND `precios`.`Lista` = `NEW`.`Lista` AND `productos`.`CategoriaID` = NEW.CategoriaID; SET vPaso=\'C\'; ELSE UPDATE `precios`,`productos` SET `precios`.`PrecioProd01` = `precios`.`PrecioProd01` * `NEW`.`Coeficiente`, `precios`.`PrecioProd02` = `precios`.`PrecioProd02` * `NEW`.`Coeficiente`, `precios`.`PrecioProd03` = `precios`.`PrecioProd03` * `NEW`.`Coeficiente`, `precios`.`FechaModificacion` = CURDATE(), `precios`.`HoraModificacion` = CURTIME() WHERE `precios`.`ProductoID` = `productos`.`ProductoID` AND `precios`.`Lista` = `NEW`.`Lista` AND `productos`.`CategoriaID` = vCategoriaID AND `productos`.`ProveedorID` = vProveedorID; SET vPaso=\'D\'; END IF; END IF; SET `NEW`.`RowsMod` = ROW_COUNT(); END\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:0.05pt double #808080;padding:0.0194in;\"| BEFORE\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| Alta_Precio\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| INSERT\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| precios\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| BEGIN SET NEW.FechaModificacion = CURDATE(), NEW.HoraModificacion = CURTIME(); END\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:0.05pt double #808080;padding:0.0194in;\"| BEFORE\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| Actualiza_Precio\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| UPDATE\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| precios\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| BEGIN SET NEW.FechaModificacion = CURDATE(), NEW.HoraModificacion = CURTIME(); END\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:0.05pt double #808080;padding:0.0194in;\"| BEFORE\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| AltaTransaccion\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| INSERT\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| transacciones\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| BEGIN SET NEW.TransaccFecha = CURDATE(), NEW.TransaccHora = CURTIME(); END\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:0.05pt double #808080;padding:0.0194in;\"| BEFORE\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| Baja_Presupuesto\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| DELETE\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| vidquoten1\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| BEGIN DELETE FROM vidquoten2 WHERE vidquoten2.VidQuoteID=OLD.VidQuoteID; DELETE FROM vidquoten3 WHERE vidquoten3.VidQuoteID=OLD.VidQuoteID; END\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:0.05pt double #808080;padding:0.0194in;\"| AFTER\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| Alta_Item_Presupuesto\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| INSERT\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| vidquoten2\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| BEGIN INSERT INTO vidquoten3 ( VidQuoteID, VidQuoteLPre, VidQuoteItem, VidQuoteProdID, VidQuoteProdCantidad, VidQuoteAncho, VidQuoteAlto, VidQuoteElementoID, VidQuotePrecio, VidQuotePrecioP) SELECT NEW.`VidQuoteID`, NEW.`VidQuoteLPre`, NEW.`VidQuoteItem`, NEW.`VidQuoteProdID`, NEW.`VidQuoteProdCantidad`, NEW.`VidQuoteAncho`, NEW.`VidQuoteAlto`, visintdetpre.`ElementoID`, visintdetpre.`PrecioBase`, visintdetpre.`PrecioBase` * NEW.`VidQuoteProdCantidad` FROM visintdetpre WHERE visintdetpre.`ElementoPM`=1 AND visintdetpre.`VidQuoteProdID`=NEW.`VidQuoteProdID`; END\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:0.05pt double #808080;padding:0.0194in;\"| AFTER\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| Actualiza_Item_Presupuesto\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| UPDATE\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| vidquoten2\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| <nowiki>BEGIN IF OLD.VidQuoteProdID <> NEW.VidQuoteProdID THEN DELETE FROM vidquoten3 WHERE vidquoten3.VidQuoteID=OLD.VidQuoteID AND vidquoten3.VidQuoteItem=OLD.VidQuoteItem; INSERT INTO vidquoten3 ( VidQuoteID, VidQuoteLPre, VidQuoteItem, VidQuoteProdID, VidQuoteProdCantidad, VidQuoteAncho, VidQuoteAlto, VidQuoteElementoID, VidQuotePrecio, VidQuotePrecioP) SELECT NEW.`VidQuoteID`, NEW.`VidQuoteLPre`, NEW.`VidQuoteItem`, NEW.`VidQuoteProdID`, NEW.`VidQuoteProdCantidad`, NEW.`VidQuoteAncho`, NEW.`VidQuoteAlto`, visintdetpre.`ElementoID`, visintdetpre.`PrecioBase`, visintdetpre.`PrecioBase` * NEW.`VidQuoteProdCantidad` FROM visintdetpre WHERE visintdetpre.`ElementoPM`=1 AND visintdetpre.`VidQuoteProdID`=NEW.`VidQuoteProdID`; ELSE UPDATE `fzggestion`.`vidquoten3` AS `T3`,`fzggestion`.`visintdetpre` AS `TV` SET T3.VidQuoteProdCantidad = NEW.`VidQuoteProdCantidad`, T3.VidQuoteAncho = NEW.`VidQuoteAncho`, T3.VidQuoteAlto = NEW.`VidQuoteAlto`, T3.VidQuotePrecio = TV.`PrecioBase`, T3.VidQuotePrecioP = TV.`PrecioBase` * NEW.`VidQuoteProdCantidad` WHERE T3.`VidQuoteID` = TV.`VidQuoteID` AND T3.`VidQuoteItem` = TV.`VidQuoteItem` AND T3.`VidQuoteItem` = NEW.`VidQuoteItem` AND T3.`VidQuoteProdID` = TV.`VidQuoteProdID` AND T3.`VidQuoteElementoID` = TV.`ElementoID`; END IF; END</nowiki>\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:0.05pt double #808080;padding:0.0194in;\"| AFTER\n\n|-\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| Baja_Item_Presupuesto\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| DELETE\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| vidquoten2\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:none;padding:0.0194in;\"| BEGIN DELETE FROM vidquoten3 WHERE vidquoten3.VidQuoteID=OLD.VidQuoteID AND vidquoten3.VidQuoteItem=OLD.VidQuoteItem; END\n| style=\"border-top:none;border-bottom:0.05pt double #808080;border-left:0.05pt double #808080;border-right:0.05pt double #808080;padding:0.0194in;\"| AFTER\n\n|}\n</small>\n\n=== Vistas ===\n<small>\n{| class=\"wikitable\"\n| <center>\'\'\'Nombre\'\'\'</center>\n| <center>\'\'\'Comando\'\'\'</center>\n| <center>\'\'\'Uso\'\'\'</center>\n| <center>\'\'\'Cross\'\'\'</center>\n\n|-\n| Viscabdetalla\n| FZG.Vista.viscabdetalla.sql\n| Vista utilizada para agregar la información de cual es la lista de precios a utilizar para el cliente del presupuesto en tiempo real.FORM: Presupuesto\n| Contactos, Vidquoten1\n\n|-\n| Proveedores\n| FZG.Vista.proveedores.sql\n| Visualización de Contactos “Proveedores”\n| Contactos\n\n|-\n| Clientes\n| FZG.Vista.clientes.sql\n| Visualización de Contactos “Clientes”\n| Contactos\n\n|-\n| Visreppres\n| FZG.Vista.visreppres.sql\n| Vista Reporte Presupuesto Individual. Para generar una línea completa con la información de detalle de los presupuestos con las combinaciones de información a incluir en el mismo. No contiene la información estática del cliente.\n| Vislineabs, Visdetaobs\n\n|-\n| Viscompodis\n| FZG.Vista.viscompodis.sql\n| Vista de productos (DISTINCT productos) dentro de la tabla de composición ordenada por alfabéticamente.\n| \n\n|-\n| Viscoposimpl\n| FZG.Vista.viscomposimpl.sql\n| Vista de los elementos de composicion con información para query\n| Productos, Composición\n\n|-\n| Visdetaobs\n| FZG.Vista.visdetaobs.sql\n| Une todas las Observaciones de cada item para los casos que se encuentren señaladas con la Descripción del Producto-Item\n| Productos, Vidquoten3\n\n|-\n| Visintdetpre\n| FZG.Vista.visintdetpre.sql\n| Reducción de vista Visprodadic aplicable al cálculo de presupuesto con los datos en tiempo real del presupuesto activo en formulario y calculando el precio correcto de acuerdo al cliente y el cálculo del valor del elemento de acuerdo al los valores de Alto y Ancho del Vano en tiempo real\n| Visprodadic, Vidquoten2\n\n|-\n| Vislineabs\n| FZG.Vista.vislineabs.sql\n| Define linea básica para reporte teniendo como base Vidquoten2, agregando la información de la cabecera + datos de descrpción de producto + el subtotal por Producto-Item\n| Vidquoten1, Vidquoten2, Productos, Vissubxitem\n\n|-\n| Visprodadic\n| FZG.Vista.visproadic.sql\n| Vista de tabla de componentes con la información de cada elemento como producto y de los precios vigentes.\n| Productos, Composicion, PreciosVigentes\n\n|-\n| Vissubxitem\n| FZG.Vista.vissubxitem.sql\n| Subtotal por Item de Presupuesto en tiempo real\n| Vidquoten3\n\n|-\n| Listavigente\n| \n| Selecciona solo el primer registro ordenado en forma descendente de la tabla de listasprecios\n| Listasprecios\n\n|-\n| Preciosvigentes\n| FZG.Vista.preciosvigentes.sql\n| Es la selección de la tabla de precios referenciando el mayor valor dentro de la tabla de listasprecios\n| Listasprecios, Precios\n\n|-\n| Preciosvigact\n| FZG.Vista.preciosvigact.sql\n| Vista de lista de precios vigentes con datos de productos para actualización columnar.FORM: Actualización por tipo de lista\n| Preciosvigentes, Productos\n\n|-\n| Visprestot\n| FZG.Vista.visprestot.sql\n| Vista de Presupuestos Totalizados por Cliente\n| Visreppres\n\n|}</small>\n\n=== Reportes ===\n<small>\n{| class=\"wikitable\"\n| <center>\'\'\'Nombre\'\'\'</center>\n| <center>\'\'\'Comando\'\'\'</center>\n| <center>\'\'\'Uso\'\'\'</center>\n| <center>\'\'\'Observaciones\'\'\'</center>\n|-\n| Presupuesto\n| <pre>\nSELECT \n    visreppres.VidQuoteID,\n    visreppres.VidQuoteObra,\n    visreppres.VidQuoteCliente,\n    visreppres.VidQuoteFecha,\n    visreppres.VidQuoteItem,\n    visreppres.VidQuoteProdCantidad,\n    visreppres.VidQuoteProdID,\n    visreppres.VidQuoteDetalle,\n    visreppres.VidQuotePrecioS,\n    clientes.RazonSocial,\n    clientes.Direccion,\n    clientes.Localidad,\n    clientes.Provincia\nFROM\n    fzggestion.clientes AS clientes,\n    fzggestion.visreppres AS visreppres\nWHERE\n    clientes.ClienteID = visreppres.VidQuoteCliente\nORDER BY \n    visreppres.VidQuoteID ASC ,\n    visreppres.VidQuoteObra ASC ,\n    visreppres.VidQuoteCliente ASC ,\n    visreppres.VidQuoteItem ASC \n</pre>\n| Reporte de Presupuesto Individual\n| Filtra por Presupuesto. Visreppres\n|-\n| Productos\n| <pre>SELECT \n    productos.ProductoID,\n    productos.CategoriaID,\n    productos.Descripcion,\n    productos.Magnitud,\n    productos.InsumoIMG\nFROM\n    fzggestion.productos productos\nORDER BY \n    productos.CategoriaID,\n    productos.ProductoID</pre>\n| Reporte de Productos\n| \n|}\n</small>\n\n=== Procedimientos ===\n<small>\n{| class=\"wikitable\"\n| <center>\'\'\'Nombre\'\'\'</center>\n| <center>\'\'\'Comando\'\'\'</center>\n| <center>\'\'\'Uso\'\'\'</center>\n| <center>\'\'\'Observaciones\'\'\'</center>\n|-\n| CrearNuevaListaPrecios\n| FZG.Procedure.CrearNuevaListaPrecios.sql\n| FORM: Crear Nueva Lista\n| Agrega registración al tiempo de generar una nueva lista de precios.\n|-\n| DuplicaProductoCompo\n| FZG.Procedure.DuplicaProductoCompo.sql\n| FORM: Copia Composicion\n| Copia las registraciones de un producto dentro de la tabla de composición con el atrubuto ProductoID diferente al original.\n|}\n</small>\n\n=== ACL ===\n# Verificar que la ODB esté registrada en el profile de LO/OO (el getcontext hace referencia a eso)\n# Grabar con semilla de nombre de datasource con el texto -> \"sdbc:mysql:odbc:\'\'<datasource>\'\'\"\n\'\'\'Ingreso de Registro en Tabla\'\'\'\n<small><pre>\nINSERT INTO wscontrol (\n	wskey1,\n	wskey2,\n	wsKey3\n	) \nVALUES(\n	ENCODE(<MAC Address en minúscula sin separadores>,\"sdbc:mysql:odbc:<datasource>\"),\n	ENCODE(<Cantidad de Usuarios en formato fill 0 de 3 dígitos>,\"sdbc:mysql:odbc:<datasource>\")\n	ENCODE(<FechaLimite en ISO Format>,\"sdbc:mysql:odbc:<datasource>\")\n	)\n</pre></small>\n\'\'\'Ejemplo\'\'\'\n<small><pre>\nINSERT INTO wscontrol (\n	wskey1,\n	wskey2,\n	wsKey3\n	) \nVALUES(\n	ENCODE(\"e0cb4ec8dae3\",\"sdbc:mysql:odbc:FazzGlassGestion\"),\n	ENCODE(\"005\",\"sdbc:mysql:odbc:FazzGlassGestion\")\n	ENCODE(\"20120531\",\"sdbc:mysql:odbc:FazzGlassGestion\")\n	)\n</pre></small>\n\'\'\'Corroborar ACL\'\'\'\n<small><pre>\nSELECT\n	wskey1 AS Cantidad,\n	wskey2 AS Usuarios,\n	wskey2 AS Limite,\n	CAST(DECODE(wskey1,\'sdbc:mysql:odbc:FazzGlassGestion\') AS Char(12)),\n	CAST(DECODE(wskey2,\'sdbc:mysql:odbc:FazzGlassGestion\') AS Char(03))\n	CAST(DECODE(wskey3,\'sdbc:mysql:odbc:FazzGlassGestion\') AS Char(08)),\nFROM\n	wscontrol\n</pre></small>\n{{tecla|Ctrl|A}}','utf-8'),