Esempio n. 1
0
        internal Models.SolicitudPreventa Select(int?ta206_iditemorigen, string ta206_itemorigen)
        {
            Models.SolicitudPreventa oSolicitudPreventa = null;
            IDataReader dr = null;

            try
            {
                SqlParameter[] dbparams = new SqlParameter[2] {
                    Param(enumDBFields.ta206_iditemorigen, ta206_iditemorigen),
                    Param(enumDBFields.ta206_itemorigen, ta206_itemorigen),
                };

                dr = cDblib.DataReader("SIC_SOLICITUDPREVENTA_S", dbparams);
                if (dr.Read())
                {
                    oSolicitudPreventa = new Models.SolicitudPreventa();
                    oSolicitudPreventa.ta206_idsolicitudpreventa = Convert.ToInt32(dr["ta206_idsolicitudpreventa"]);
                    if (!Convert.IsDBNull(dr["ta206_denominacion"]))
                    {
                        oSolicitudPreventa.ta206_denominacion = Convert.ToString(dr["ta206_denominacion"]);
                    }
                    oSolicitudPreventa.ta206_estado           = Convert.ToString(dr["ta206_estado"]);
                    oSolicitudPreventa.ta206_fechacreacion    = Convert.ToDateTime(dr["ta206_fechacreacion"]);
                    oSolicitudPreventa.t001_idficepi_promotor = Convert.ToInt32(dr["t001_idficepi_promotor"]);
                    if (!Convert.IsDBNull(dr["ta206_iditemorigen"]))
                    {
                        oSolicitudPreventa.ta206_iditemorigen = Convert.ToInt32(dr["ta206_iditemorigen"]);
                    }
                    oSolicitudPreventa.ta206_itemorigen = Convert.ToString(dr["ta206_itemorigen"]);
                    if (!Convert.IsDBNull(dr["t332_idtarea"]))
                    {
                        oSolicitudPreventa.t332_idtarea = Convert.ToInt32(dr["t332_idtarea"]);
                    }
                    if (!Convert.IsDBNull(dr["ta200_idareapreventa"]))
                    {
                        oSolicitudPreventa.ta200_idareapreventa = Convert.ToInt32(dr["ta200_idareapreventa"]);
                    }
                }
                return(oSolicitudPreventa);
            }
            catch (Exception ex)
            {
                throw ex;
            }
            finally
            {
                if (dr != null)
                {
                    if (!dr.IsClosed)
                    {
                        dr.Close();
                    }
                    dr.Dispose();
                }
            }
        }
Esempio n. 2
0
        /// <summary>
        /// Inserta un SolicitudPreventa
        /// </summary>
        internal int Insert(Models.SolicitudPreventa oSolicitudPreventa)
        {
            try
            {
                SqlParameter[] dbparams = new SqlParameter[5] {
                    Param(enumDBFields.ta206_denominacion, oSolicitudPreventa.ta206_denominacion),
                    Param(enumDBFields.t001_idficepi_promotor, oSolicitudPreventa.t001_idficepi_promotor),
                    Param(enumDBFields.ta206_iditemorigen, oSolicitudPreventa.ta206_iditemorigen),
                    Param(enumDBFields.ta206_itemorigen, oSolicitudPreventa.ta206_itemorigen),
                    Param(enumDBFields.ta200_idareapreventa, oSolicitudPreventa.ta200_idareapreventa)
                };

                return((int)cDblib.ExecuteScalar("SIC_SOLICITUDPREVENTA_I", dbparams));
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }
Esempio n. 3
0
        internal Models.SolicitudPreventa btnAccionesSegunEstadoSolicitud(int?ta206_iditemorigen, string ta206_itemorigen)
        {
            Models.SolicitudPreventa oSolicitudPreventa = null;
            IDataReader dr = null;

            try
            {
                SqlParameter[] dbparams = new SqlParameter[2] {
                    Param(enumDBFields.ta206_iditemorigen, ta206_iditemorigen),
                    Param(enumDBFields.ta206_itemorigen, ta206_itemorigen),
                };

                dr = cDblib.DataReader("SIC_BTNACCIONSEGUNESTADOSOLICITUD", dbparams);
                if (dr.Read())
                {
                    oSolicitudPreventa = new Models.SolicitudPreventa();
                    if (!Convert.IsDBNull(dr["botonactivo"]))
                    {
                        oSolicitudPreventa.botonactivo = Convert.ToBoolean(dr["botonactivo"]);
                    }
                }
                return(oSolicitudPreventa);
            }
            catch (Exception ex)
            {
                throw ex;
            }
            finally
            {
                if (dr != null)
                {
                    if (!dr.IsClosed)
                    {
                        dr.Close();
                    }
                    dr.Dispose();
                }
            }
        }
Esempio n. 4
0
        public int Insert(Models.SolicitudPreventa oSolicitudPreventa)
        {
            Guid methodOwnerID = new Guid("8fbbab16-8b11-41ea-b4bc-bef98a9e13bd");

            OpenDbConn();

            if (cDblib.Transaction.ownerID.Equals(new Guid()))
            {
                cDblib.beginTransaction(methodOwnerID);
            }

            try
            {
                DAL.SolicitudPreventa cSolicitudPreventa = new DAL.SolicitudPreventa(cDblib);

                oSolicitudPreventa.t001_idficepi_promotor = int.Parse(HttpContext.Current.Session["IDFICEPI_PC_ACTUAL"].ToString());

                int idSolicitudPreventa = cSolicitudPreventa.Insert(oSolicitudPreventa);

                //Finalizar transacción
                if (cDblib.Transaction.ownerID.Equals(methodOwnerID))
                {
                    cDblib.commitTransaction(methodOwnerID);
                }

                return(idSolicitudPreventa);
            }
            catch (Exception ex)
            {
                //rollback
                if (cDblib.Transaction.ownerID.Equals(methodOwnerID))
                {
                    cDblib.rollbackTransaction(methodOwnerID);
                }

                throw ex;
            }
        }
        public int Insert(Models.AccionPreventa oAccionPreventa, Models.SolicitudPreventa oSP, Guid guidprovisional)
        {
            Guid methodOwnerID = new Guid("c520a70a-6315-488b-a802-07b679db76e3");

            BLL.Listas            cListas            = null;
            BLL.SolicitudPreventa cSolicitudPreventa = null;
            OpenDbConn();

            if (cDblib.Transaction.ownerID.Equals(new Guid()))
            {
                cDblib.beginTransaction(methodOwnerID);
            }

            try
            {
                DAL.AccionPreventa cAccionPreventa = new DAL.AccionPreventa(cDblib);
                cSolicitudPreventa = new BLL.SolicitudPreventa(cDblib);

                //grabar siempre la solicitud para acciones de origen CRM. Si existe devuelve el mismo id
                if (oSP.ta206_itemorigen == "O" || oSP.ta206_itemorigen == "P" || oSP.ta206_itemorigen == "E")
                {
                    oSP.ta200_idareapreventa = null;
                    oAccionPreventa.ta206_idsolicitudpreventa = cSolicitudPreventa.Insert(oSP);
                }
                else
                { //itemorigen = "S"
                    oSP.ta206_iditemorigen = oSP.ta206_idsolicitudpreventa;
                    oAccionPreventa.ta206_idsolicitudpreventa = oSP.ta206_idsolicitudpreventa;
                }



                //Validacion: Comprobación de tipo de acción no duplicable para otra acción de la misma solicitud.
                cListas = new BLL.Listas(cDblib);
                List <Models.TipoAccionPreventa> lst = cListas.GetListTipoAccionFiltrada(oSP.ta206_itemorigen, (int)oSP.ta206_iditemorigen);
                if (!lst.Contains(new Models.TipoAccionPreventa(oAccionPreventa.ta205_idtipoaccionpreventa)))
                {
                    throw new IB.SUPER.Shared.ValidationException("La acción seleccionada está considerada como única por solicitud. Al ya existir otra solicitud con la misma acción, no se permite realizar la grabación.");
                }


                oAccionPreventa.t001_idficepi_promotor = int.Parse(HttpContext.Current.Session["IDFICEPI_PC_ACTUAL"].ToString());

                if (oAccionPreventa.ta201_idsubareapreventa == 0)  //Subarea == comercial, lider es el usuario conectado (el comercial)
                {
                    oAccionPreventa.t001_idficepi_lider = oAccionPreventa.t001_idficepi_promotor;
                }

                int idAccionPreventa = cAccionPreventa.Insert(oAccionPreventa, guidprovisional, (int)HttpContext.Current.Session["IDFICEPI_PC_ACTUAL"]);

                //Finalizar transacción
                if (cDblib.Transaction.ownerID.Equals(methodOwnerID))
                {
                    cDblib.commitTransaction(methodOwnerID);
                }

                return(idAccionPreventa);
            }
            catch (Exception ex)
            {
                //rollback
                if (cDblib.Transaction.ownerID.Equals(methodOwnerID))
                {
                    cDblib.rollbackTransaction(methodOwnerID);
                }

                throw ex;
            }

            finally {
                if (cListas != null)
                {
                    cListas.Dispose();
                }
                if (cSolicitudPreventa != null)
                {
                    cSolicitudPreventa.Dispose();
                }
            }
        }