/// <summary>
        /// Procedimiento que devuelve los datos de tornillería en base al id de la cotización
        /// </summary>
        /// <param name="intCotizacionID"></param>
        /// <returns></returns>
        public List <DatosTornilleria> ListarTornillosSelectivoCotizacion(int intCotizacionID)
        {
            List <DatosTornilleria> result = new List <DatosTornilleria>();

            try
            {
                using (SistemasTyrsaDataContext dc = new SistemasTyrsaDataContext(Helper.ConnectionString()))
                {
                    var query = from item in dc.stp_ListarTornillosSelectivoCotizacion(intCotizacionID)
                                select new DatosTornilleria
                    {
                        intDatoTornilleriaID = item.intDatoTornilleriaID,
                        sintTornilleriaID    = item.sintTornilleriaID,
                        intElementoID        = item.intElementoID,
                        intCotizacionID      = item.intCotizacionID,
                        intDetCotizaID       = item.intDetCotizaID,
                        vchSubMenu           = item.vchSubMenu,
                        vchDescripcion       = item.vchDescripcion,
                        intCantidad          = item.intCantidad,
                        decPrecioUnitario    = item.decPrecioUnitario,
                        decTotal             = item.decTotal,
                        bitActivo            = item.bitActivo
                    };
                    result.AddRange(query);
                }
            }
            catch (Exception ex)
            {
                throw ex;
            }
            return(result);
        }
        /// <summary>
        /// Realiza el alta, modificación o baja a los datos panel
        /// </summary>
        /// <param name="datosPanel"></param>
        /// <param name="sintOpcion"></param>
        /// <returns></returns>
        public Resultado setDatosPanel(DatosPanel datosPanel, short sintOpcion)
        {
            Resultado result = new Resultado();

            try
            {
                using (SistemasTyrsaDataContext dc = new SistemasTyrsaDataContext(Helper.ConnectionString()))
                {
                    var query = from item in dc.stp_setDatosPanel(datosPanel.intDatosPanelID, datosPanel.intElementoID, datosPanel.intDatoMarcoID, datosPanel.intDetCotizaID,
                                                                  datosPanel.sintPinturaID, datosPanel.decAnchoPanel, datosPanel.intCantidadPanel, datosPanel.decCapacidadCargaPanel, datosPanel.intNiveles, datosPanel.intPanelesTotales,
                                                                  datosPanel.bitActivo, (byte)sintOpcion)
                                select new Resultado
                    {
                        vchDescripcion = item.vchDescripcion,
                        vchResultado   = item.vchResultado
                    };
                    result = query.First();
                }
            }
            catch (Exception ex)
            {
                throw ex;
            }
            return(result);
        }
        /// <summary>
        /// Realiza el alta, baja o modificación a los datos de Protector Batería
        /// </summary>
        /// <param name="datosProtectorBateria"></param>
        /// <param name="sintOpcion"></param>
        /// <returns></returns>
        public Resultado setDatosProtectorBateria(DatosProtectorBateria datosProtectorBateria, short sintOpcion)
        {
            Resultado result = new Resultado();

            try
            {
                using (SistemasTyrsaDataContext dc = new SistemasTyrsaDataContext(Helper.ConnectionString()))
                {
                    var query = from item in dc.stp_setDatosProtectorBateria(datosProtectorBateria.intProtectorBateriaID, datosProtectorBateria.intElementoID, datosProtectorBateria.intCotizacionID, datosProtectorBateria.intDetCotizaID,
                                                                             datosProtectorBateria.intCantidadSencilla, datosProtectorBateria.intCantidadDoble, datosProtectorBateria.intCantidadCuadruple, datosProtectorBateria.decPrecioSencilla,
                                                                             datosProtectorBateria.decPrecioDoble, datosProtectorBateria.decPrecioCuadruple, datosProtectorBateria.decLargoSencilla, datosProtectorBateria.decLargoDoble,
                                                                             datosProtectorBateria.decLargoCuadruple, datosProtectorBateria.decPrecioVentaUnitarioSencilla, datosProtectorBateria.decPrecioVentaUnitarioDoble,
                                                                             datosProtectorBateria.decPrecioVentaUnitarioCuadruple, datosProtectorBateria.decPrecioVentaTotalSencilla, datosProtectorBateria.decPrecioVentaTotalDoble,
                                                                             datosProtectorBateria.decPrecioVentaTotalCuadruple, datosProtectorBateria.decAlturaSencilla, datosProtectorBateria.decAlturaDoble, datosProtectorBateria.decAlturaCuadruple,
                                                                             datosProtectorBateria.sintPinturaIDSencilla, datosProtectorBateria.sintPinturaIDDoble, datosProtectorBateria.sintPinturaIDCuadruple, datosProtectorBateria.intBotasSencilla,
                                                                             datosProtectorBateria.intBotasDoble, datosProtectorBateria.intBotasCuadruple, datosProtectorBateria.intBarrasSencilla, datosProtectorBateria.intBarrasDoble, datosProtectorBateria.intBotasCuadruple,
                                                                             datosProtectorBateria.decPesoUnitarioSencilla, datosProtectorBateria.decPesoUnitarioDoble, datosProtectorBateria.decPesoUnitarioCuadruple, datosProtectorBateria.decPesoTotalSencilla,
                                                                             datosProtectorBateria.decPesoTotalDoble, datosProtectorBateria.decPesoTotalCuadruple, datosProtectorBateria.bitActivo, (byte)sintOpcion)
                                select new Resultado
                    {
                        vchDescripcion = item.vchDescripcion,
                        vchResultado   = item.vchResultado
                    };
                    result = query.First();
                }
            }
            catch (Exception ex)
            {
                throw ex;
            }
            return(result);
        }
        /// <summary>
        /// Realiza el alta, modificación o baja a los datos protector poste
        /// </summary>
        /// <param name="datosProtector"></param>
        /// <param name="sintOpcion"></param>
        /// <returns></returns>
        public Resultado setDatosProtectorPoste(DatosProtectorBase datosProtector, short sintOpcion)
        {
            Resultado result = new Resultado();

            try
            {
                using (SistemasTyrsaDataContext dc = new SistemasTyrsaDataContext(Helper.ConnectionString()))
                {
                    var query = from item in dc.stp_setDatosProtectorPoste(datosProtector.intProtectorPosteID, datosProtector.intElementoID, datosProtector.intCotizacionID, datosProtector.intDetCotizaID,
                                                                           datosProtector.decPrecioUnitario, datosProtector.sintPinturaID, datosProtector.intCantidadProtectorPoste, datosProtector.bitActivo, datosProtector.decAltura,
                                                                           datosProtector.sintLongitudID, datosProtector.decPrecioVentaTotal, datosProtector.decPrecioVentaUnitario, datosProtector.decPesoUnitario,
                                                                           datosProtector.decPesoTotal, datosProtector.decPesoTotal, (byte)sintOpcion)
                                select new Resultado
                    {
                        vchDescripcion = item.vchDescripcion,
                        vchResultado   = item.vchResultado
                    };
                    result = query.First();
                }
            }
            catch (Exception ex)
            {
                throw ex;
            }
            return(result);
        }
        /// <summary>
        /// Realiza el alta, modificación o baja a los datos Viga
        /// </summary>
        /// <param name="datosMarco"></param>
        /// <param name="sintOpcion"></param>
        /// <returns></returns>
        public Resultado setDatosMarco(DatosMarco datosMarco, short sintOpcion)
        {
            Resultado result = new Resultado();

            try
            {
                using (SistemasTyrsaDataContext dc = new SistemasTyrsaDataContext(Helper.ConnectionString()))
                {
                    var query = from item in dc.stp_setDatosMarco(datosMarco.intDatoMarcoID, datosMarco.intCotizacionID, datosMarco.intDetCotizaID, datosMarco.intElementoID,
                                                                  datosMarco.sintPinturaID, datosMarco.intConfiguraMarcoID, datosMarco.decMedidaAlto, datosMarco.sintCantidad, datosMarco.decAlturaPandeo,
                                                                  datosMarco.decAltura, datosMarco.decFondo, datosMarco.bitSobreViga, datosMarco.bitActivo, (byte)sintOpcion)
                                select new Resultado
                    {
                        vchDescripcion = item.vchDescripcion,
                        vchResultado   = item.vchResultado
                    };
                    result = query.First();
                }
            }
            catch (Exception ex)
            {
                throw ex;
            }
            return(result);
        }
        /// <summary>
        /// Realiza el alta, baja o modificación a los datos de Parrilla
        /// </summary>
        /// <param name="datosParrilla"></param>
        /// <param name="sintOpcion"></param>
        /// <returns></returns>
        public Resultado setDatosParrilla(DatosParrilla datosParrilla, short sintOpcion)
        {
            Resultado result = new Resultado();

            try
            {
                using (SistemasTyrsaDataContext dc = new SistemasTyrsaDataContext(Helper.ConnectionString()))
                {
                    var query = from item in dc.stp_setDatosParrilla(datosParrilla.intParrillaID, datosParrilla.intElementoID, datosParrilla.sintPinturaID,
                                                                     datosParrilla.intCotizacionID, datosParrilla.intDetCotizaID, datosParrilla.decFrenteParrilla, datosParrilla.decFondoParrilla, datosParrilla.decCostoParrilla,
                                                                     datosParrilla.vchTamanioCuadroParrilla, datosParrilla.intCantidadParrilla, datosParrilla.decPesoParrilla, datosParrilla.bitGalvanizado,
                                                                     datosParrilla.bitPintura, datosParrilla.decPrecioVentaUnitario, datosParrilla.decPrecioVentaTotal, datosParrilla.decCapacidadCarga, datosParrilla.decCargaTotal,
                                                                     datosParrilla.bitActivo, (byte)sintOpcion)
                                select new Resultado
                    {
                        vchDescripcion = item.vchDescripcion,
                        vchResultado   = item.vchResultado
                    };
                    result = query.First();
                }
            }
            catch (Exception ex)
            {
                throw ex;
            }
            return(result);
        }
        /// <summary>
        /// Realiza el alta, modificación o baja a los datos Viga
        /// </summary>
        /// <param name="datosViga"></param>
        /// <param name="sintOpcion"></param>
        /// <returns></returns>
        public Resultado setDatosViga(DatosViga datosViga, short sintOpcion)
        {
            Resultado result = new Resultado();

            try
            {
                using (SistemasTyrsaDataContext dc = new SistemasTyrsaDataContext(Helper.ConnectionString()))
                {
                    var query = from item in dc.stp_setDatosViga(datosViga.intDatosVigaID, datosViga.intDetCotizaID, datosViga.SKU, datosViga.sintPinturaID, datosViga.intElementoID, datosViga.intDatoMarcoID,
                                                                 datosViga.decLargo, datosViga.intCantidad, datosViga.intPiezaXLamina, datosViga.intPiezaXLaminaCuerpo, datosViga.bitActivo, (byte)sintOpcion)
                                select new Resultado
                    {
                        vchDescripcion = item.vchDescripcion,
                        vchResultado   = item.vchResultado
                    };
                    result = query.First();
                }
            }
            catch (Exception ex)
            {
                throw ex;
            }
            return(result);
        }