protected void dtgComisiones_Update(object sender, DataGridCommandEventArgs e)
        {
            RadioButton rbtPorcentaje = (RadioButton)e.Item.FindControl("rbtPorcentaje");

            if (rbtPorcentaje.Checked)
            {
                RequiredFieldValidator req = (RequiredFieldValidator)((PlaceHolder)e.Item.FindControl("phValidBaseCalculo")).FindControl("ReqPorcentaje");
                req.Enabled = true;
                req.Validate();
                if (!req.IsValid)
                {
                    return;
                }

                BaseValidator valPtj = (BaseValidator)((PlaceHolder)e.Item.FindControl("phValidBaseCalculo")).FindControl("ValPorcentaje");
                valPtj.Enabled = true;
                valPtj.Validate();
                if (!valPtj.IsValid)
                {
                    return;
                }

                req         = (RequiredFieldValidator)((PlaceHolder)e.Item.FindControl("phValidBaseCalculo")).FindControl("ReqBaseCalculo");
                req.Enabled = true;
                req.Validate();
                if (!req.IsValid)
                {
                    return;
                }
            }
            else
            {
                RequiredFieldValidator req = (RequiredFieldValidator)((PlaceHolder)e.Item.FindControl("phValidBaseCalculo")).FindControl("ReqImporteFijo");
                req.Enabled = true;
                req.Validate();
                if (!req.IsValid)
                {
                    return;
                }

                BaseValidator valImp = (BaseValidator)((PlaceHolder)e.Item.FindControl("phValidBaseCalculo")).FindControl("ValImporteFijo");
                valImp.Enabled = true;
                valImp.Validate();
                if (!valImp.IsValid)
                {
                    return;
                }
            }

            Page.Validate();
            if (!Page.IsValid)
            {
                return;
            }

            this.dsComisionesAgenciasUVenta = (DsComisionesAgenciasUVenta)Session["dsComisionesAgenciasUVenta"];
            DsComisionesAgenciasUVenta.DatosRow dr = (DsComisionesAgenciasUVenta.DatosRow) this.dsComisionesAgenciasUVenta.Datos.Rows[e.Item.DataSetIndex];

            IComisionAgenciaUVenta comisionAgenciaUVenta = ComisionAgenciaUVentaFactory.GetComisionAgenciaUVenta();

            comisionAgenciaUVenta.AgenciaID = Convert.ToInt32(this.txtAgenciaID.Text);
            comisionAgenciaUVenta.ConceptoComisionEntidadID = dr.ConceptoComisionEntidadID;

            if (rbtPorcentaje.Checked)
            {
                comisionAgenciaUVenta.ComisionPorcentaje  = dr.IsComisionPorcentajeNull() ? 0 : dr.ComisionPorcentaje;
                comisionAgenciaUVenta.BaseCalculo         = (NegociosSisPackInterface.SisPack.BaseCalculo)(dr.IsBaseCalculoIDNull() || dr.ComisionPorcentaje == 0 ? 0 : dr.BaseCalculoID);
                comisionAgenciaUVenta.ComisionImporteFijo = 0;

                //control de que la suma de porcentajes para ese concepto de comision no supere el maximo permitido
                System.Data.DataRow[] drConceptoComisionEntidad = (System.Data.DataRow[]) this.dsConceptosComisionesEntidades.Tables[0].Select("ConceptoComisionEntidadID=" + dr.ConceptoComisionEntidadID);
                if (drConceptoComisionEntidad.Length > 0)
                {
                    if (Convert.ToInt32(drConceptoComisionEntidad[0]["EntidadComisionID"]) != 8)                    //hacemos el control si la entidad no es Andesmar
                    {
                        if (drConceptoComisionEntidad[0]["PorcentajeMaximo"] != System.DBNull.Value)
                        {
                            double porcentajeMaximo   = Convert.ToDouble(drConceptoComisionEntidad[0]["PorcentajeMaximo"]);
                            int    conceptoComisionID = Convert.ToInt32(drConceptoComisionEntidad[0]["ConceptoComisionID"]);
                            double suma = 0;

                            IConceptoComisionEntidad conceptoComisionEntidad = ConceptoComisionEntidadFactory.GetConceptoComisionEntidad();

                            foreach (DsComisionesAgenciasUVenta.DatosRow drConceptoComisionAgenciaUVenta in this.dsComisionesAgenciasUVenta.Datos)
                            {
                                conceptoComisionEntidad.ConceptoComisionEntidadID = drConceptoComisionAgenciaUVenta.ConceptoComisionEntidadID;
                                conceptoComisionEntidad.Consultar();

                                if (((int)conceptoComisionEntidad.ConceptoComision) == conceptoComisionID && drConceptoComisionAgenciaUVenta.ConceptoComisionEntidadID != dr.ConceptoComisionEntidadID && (int)conceptoComisionEntidad.EntidadComision != 8 /*8 = andesmar*/)
                                {
                                    suma += drConceptoComisionAgenciaUVenta.IsComisionPorcentajeNull() ? 0 : drConceptoComisionAgenciaUVenta.ComisionPorcentaje;
                                }
                            }
                            suma += dr.IsComisionPorcentajeNull() || (int)conceptoComisionEntidad.EntidadComision == 8 /*8 = andesmar*/? 0 : dr.ComisionPorcentaje;
                            if (suma > porcentajeMaximo)
                            {
                                ((ErrorWeb)this.phErrores.Controls[0]).setMensaje("La sumatoria de los porcentajes de comisión para el concepto es mayor que el máximo permitido.");
                                return;
                            }
                        }
                    }
                }
            }
            else
            {
                comisionAgenciaUVenta.ComisionImporteFijo = dr.IsComisionImporteFijoNull() ? 0 : dr.ComisionImporteFijo;
                comisionAgenciaUVenta.ComisionPorcentaje  = 0;
                comisionAgenciaUVenta.BaseCalculo         = 0;

                //control de que la suma de importes fijos para ese concepto de comision no supere el maximo permitido
                System.Data.DataRow[] drConceptoComisionEntidad = (System.Data.DataRow[]) this.dsConceptosComisionesEntidades.Tables[0].Select("ConceptoComisionEntidadID=" + dr.ConceptoComisionEntidadID);
                if (drConceptoComisionEntidad.Length > 0)
                {
                    if (Convert.ToInt32(drConceptoComisionEntidad[0]["EntidadComisionID"]) != 8)                    //hacemos el control si la entidad no es Andesmar
                    {
                        if (drConceptoComisionEntidad[0]["ImporteFijoMaximo"] != System.DBNull.Value)
                        {
                            double importeFijoMaximo  = Convert.ToDouble(drConceptoComisionEntidad[0]["ImporteFijoMaximo"]);
                            int    conceptoComisionID = Convert.ToInt32(drConceptoComisionEntidad[0]["ConceptoComisionID"]);
                            double suma = 0;

                            IConceptoComisionEntidad conceptoComisionEntidad = ConceptoComisionEntidadFactory.GetConceptoComisionEntidad();

                            foreach (DsComisionesAgenciasUVenta.DatosRow drConceptoComisionAgenciaUVenta in this.dsComisionesAgenciasUVenta.Datos)
                            {
                                conceptoComisionEntidad.ConceptoComisionEntidadID = drConceptoComisionAgenciaUVenta.ConceptoComisionEntidadID;
                                conceptoComisionEntidad.Consultar();

                                if (((int)conceptoComisionEntidad.ConceptoComision) == conceptoComisionID && drConceptoComisionAgenciaUVenta.ConceptoComisionEntidadID != dr.ConceptoComisionEntidadID && (int)conceptoComisionEntidad.EntidadComision != 8 /*8 = andesmar*/)
                                {
                                    suma += drConceptoComisionAgenciaUVenta.IsComisionImporteFijoNull() ? 0 : drConceptoComisionAgenciaUVenta.ComisionImporteFijo;
                                }
                            }
                            suma += dr.IsComisionImporteFijoNull() || (int)conceptoComisionEntidad.EntidadComision == 8 /*8 = andesmar*/? 0 : dr.ComisionImporteFijo;
                            if (suma > importeFijoMaximo)
                            {
                                ((ErrorWeb)this.phErrores.Controls[0]).setMensaje("La sumatoria de los importes de comisión para el concepto es mayor que el máximo permitido.");
                                return;
                            }
                        }
                    }
                }
            }
            if (comisionAgenciaUVenta.EstadoComision == NegociosSisPackInterface.SisPack.EstadoComision.Ninguno)
            {
                comisionAgenciaUVenta.EstadoComision = NegociosSisPackInterface.SisPack.EstadoComision.Habilitada;
            }

            try
            {
                char[]   separador = { ',' };
                string[] UVentaSel = this.txtUVentaID.Text.Split(separador);

                foreach (string unidadVta in UVentaSel)
                {
                    comisionAgenciaUVenta.UnidadVentaID = Convert.ToInt32(unidadVta);
                    comisionAgenciaUVenta.Guardar(usuario);
                }
                this.dtgComisiones.EditItemIndex      = -1;
                Session["dsComisionesAgenciasUVenta"] = null;
                this.BindGrilla();
            }
            catch (Exception ex)
            {
                string mensaje = ex.Message;
                try
                {
                    mensaje = this.TraducirTexto(ex.Message);
                    if (mensaje == "" || mensaje == null)
                    {
                        mensaje = ex.Message;
                    }
                }
                catch (Exception)
                {
                    mensaje = ex.Message;
                }
                ((ErrorWeb)this.phErrores.Controls[0]).setMensaje(mensaje);
            }
        }
        protected void dtgComisiones_Update(object sender, DataGridCommandEventArgs e)
        {
            this.dsComisionesAgencias = (DsComisionesAgencias)Session["dsComisionesAgenciasMasivo"];
            DsComisionesAgencias.DatosRow dr = (DsComisionesAgencias.DatosRow) this.dsComisionesAgencias.Datos.Rows[e.Item.DataSetIndex];

            RadioButton rbtPorcentaje = (RadioButton)e.Item.FindControl("rbtPorcentaje");

            if (rbtPorcentaje.Checked)
            {
                RequiredFieldValidator req;
                req         = (RequiredFieldValidator)((PlaceHolder)e.Item.FindControl("phValidBaseCalculo")).FindControl("ReqPorcentaje");
                req.Enabled = true;
                req.Validate();
                if (!req.IsValid)
                {
                    return;
                }

                BaseValidator valPtj = (BaseValidator)((PlaceHolder)e.Item.FindControl("phValidBaseCalculo")).FindControl("ValPorcentaje");
                valPtj.Enabled = true;
                valPtj.Validate();
                if (!valPtj.IsValid)
                {
                    return;
                }

                if (dr.ConfigurarConceptoComision)
                {
                    req         = (RequiredFieldValidator)((PlaceHolder)e.Item.FindControl("phValidBaseCalculo")).FindControl("ReqBaseCalculo");
                    req.Enabled = true;
                    req.Validate();
                    if (!req.IsValid)
                    {
                        return;
                    }
                }
            }
            else
            {
                RequiredFieldValidator req = (RequiredFieldValidator)((PlaceHolder)e.Item.FindControl("phValidBaseCalculo")).FindControl("ReqImporteFijo");
                req.Enabled = true;
                req.Validate();
                if (!req.IsValid)
                {
                    return;
                }

                BaseValidator valImp = (BaseValidator)((PlaceHolder)e.Item.FindControl("phValidBaseCalculo")).FindControl("ValImporteFijo");
                valImp.Enabled = true;
                valImp.Validate();
                if (!valImp.IsValid)
                {
                    return;
                }
            }

            Page.Validate();
            if (!Page.IsValid)
            {
                return;
            }

            IComisionAgencia comisionAgencia = ComisionAgenciaFactory.GetComisionAgencia();

            for (int j = lstAgencia.Items.Count - 1; j >= 0; j--)
            {
                if (lstAgencia.Items[j].Selected)
                {
                    comisionAgencia.AgenciasID.Add(Utiles.Validaciones.obtieneEntero(lstAgencia.Items[j].Value));
                }
            }

            comisionAgencia.ConceptoComisionEntidadID = dr.ConceptoComisionEntidadID;

            if (rbtPorcentaje.Checked)
            {
                comisionAgencia.ComisionPorcentaje  = dr.IsComisionPorcentajeNull() ? 0 : dr.ComisionPorcentaje;
                comisionAgencia.BaseCalculo         = (NegociosSisPackInterface.SisPack.BaseCalculo)(dr.IsBaseCalculoIDNull() || dr.ComisionPorcentaje == 0 ? 0 : dr.BaseCalculoID);
                comisionAgencia.ComisionImporteFijo = 0;

                //control de que la suma de porcentajes para ese concepto de comision no supere el maximo permitido
                if (dr.ConfigurarConceptoComision)
                {
                    //control de que la suma de porcentajes para ese concepto de comision no supere el maximo permitido
                    System.Data.DataRow[] drConceptoComisionEntidad = (System.Data.DataRow[]) this.dsConceptosComisionesEntidades.Tables[0].Select("ConceptoComisionEntidadID=" + dr.ConceptoComisionEntidadID);
                    if (drConceptoComisionEntidad.Length > 0)
                    {
                        if (Convert.ToInt32(drConceptoComisionEntidad[0]["EntidadComisionID"]) != 8) //hacemos el control si la entidad no es Andesmar
                        {
                            if (drConceptoComisionEntidad[0]["PorcentajeMaximo"] != System.DBNull.Value)
                            {
                                double porcentajeMaximo   = Convert.ToDouble(drConceptoComisionEntidad[0]["PorcentajeMaximo"]);
                                int    conceptoComisionID = Convert.ToInt32(drConceptoComisionEntidad[0]["ConceptoComisionID"]);
                                double suma = 0;

                                IConceptoComisionEntidad conceptoComisionEntidad = ConceptoComisionEntidadFactory.GetConceptoComisionEntidad();

                                foreach (DsComisionesAgencias.DatosRow drConceptoComisionAgencia in this.dsComisionesAgencias.Datos)
                                {
                                    conceptoComisionEntidad.ConceptoComisionEntidadID = drConceptoComisionAgencia.ConceptoComisionEntidadID;
                                    conceptoComisionEntidad.Consultar();

                                    if (((int)conceptoComisionEntidad.ConceptoComision) == conceptoComisionID && drConceptoComisionAgencia.ConceptoComisionEntidadID != dr.ConceptoComisionEntidadID && (int)conceptoComisionEntidad.EntidadComision != 8 /*8 = andesmar*/)
                                    {
                                        suma += drConceptoComisionAgencia.IsComisionPorcentajeNull() ? 0 : drConceptoComisionAgencia.ComisionPorcentaje;
                                    }
                                }
                                suma += dr.IsComisionPorcentajeNull() || (int)conceptoComisionEntidad.EntidadComision == 8 /*8 = andesmar*/ ? 0 : dr.ComisionPorcentaje;
                                if (suma > porcentajeMaximo)
                                {
                                    ((SisPacK.ErrorWeb) this.phErrores.Controls[0]).setMensaje("La sumatoria de los porcentajes de comisión para el concepto es mayor que el máximo permitido.");
                                    return;
                                }
                            }
                        }
                    }
                }
                else
                {
                    IConceptoFacturacion conceptoFacturacion = ConceptoFacturacionFactory.GetConceptoFacturacion();
                    conceptoFacturacion.GetOne(dr.ConceptoFacturacionID);

                    if (conceptoFacturacion.PorcentajeMaximoComision != null)
                    {
                        double porcentajeMaximo      = conceptoFacturacion.PorcentajeMaximoComision ?? 0;
                        int    conceptoFacturacionID = dr.ConceptoFacturacionID;
                        double suma = 0;

                        IConceptoComisionEntidad conceptoComisionEntidad = ConceptoComisionEntidadFactory.GetConceptoComisionEntidad();

                        foreach (DsComisionesAgencias.DatosRow drConceptoComisionAgencia in this.dsComisionesAgencias.Datos)
                        {
                            conceptoComisionEntidad.ConceptoComisionEntidadID = drConceptoComisionAgencia.ConceptoComisionEntidadID;
                            conceptoComisionEntidad.Consultar();

                            if (conceptoComisionEntidad.ConceptoFacturacionID == conceptoFacturacionID && drConceptoComisionAgencia.ConceptoComisionEntidadID != dr.ConceptoComisionEntidadID && (int)conceptoComisionEntidad.EntidadComision != 8 /*8 = andesmar*/)
                            {
                                suma += drConceptoComisionAgencia.IsComisionPorcentajeNull() ? 0 : drConceptoComisionAgencia.ComisionPorcentaje;
                            }
                        }
                        suma += dr.IsComisionPorcentajeNull() || (int)conceptoComisionEntidad.EntidadComision == 8 /*8 = andesmar*/ ? 0 : dr.ComisionPorcentaje;
                        if (suma > porcentajeMaximo)
                        {
                            ((SisPacK.ErrorWeb) this.phErrores.Controls[0]).setMensaje("La sumatoria de los porcentajes de comisión para el concepto es mayor que el máximo permitido.");
                            return;
                        }
                    }
                }
            }
            else
            {
                comisionAgencia.ComisionImporteFijo = dr.IsComisionImporteFijoNull() ? 0 : dr.ComisionImporteFijo;
                comisionAgencia.ComisionPorcentaje  = 0;
                comisionAgencia.BaseCalculo         = 0;

                //control de que la suma de importes fijos para ese concepto de comision no supere el maximo permitido
                if (dr.ConfigurarConceptoComision)
                {
                    //control de que la suma de importes fijos para ese concepto de comision no supere el maximo permitido
                    System.Data.DataRow[] drConceptoComisionEntidad = (System.Data.DataRow[]) this.dsConceptosComisionesEntidades.Tables[0].Select("ConceptoComisionEntidadID=" + dr.ConceptoComisionEntidadID);
                    if (drConceptoComisionEntidad.Length > 0)
                    {
                        if (Convert.ToInt32(drConceptoComisionEntidad[0]["EntidadComisionID"]) != 8) //hacemos el control si la entidad no es Andesmar
                        {
                            if (drConceptoComisionEntidad[0]["ImporteFijoMaximo"] != System.DBNull.Value)
                            {
                                double importeFijoMaximo  = Convert.ToDouble(drConceptoComisionEntidad[0]["ImporteFijoMaximo"]);
                                int    conceptoComisionID = Convert.ToInt32(drConceptoComisionEntidad[0]["ConceptoComisionID"]);
                                double suma = 0;

                                IConceptoComisionEntidad conceptoComisionEntidad = ConceptoComisionEntidadFactory.GetConceptoComisionEntidad();

                                foreach (DsComisionesAgencias.DatosRow drConceptoComisionAgencia in this.dsComisionesAgencias.Datos)
                                {
                                    conceptoComisionEntidad.ConceptoComisionEntidadID = drConceptoComisionAgencia.ConceptoComisionEntidadID;
                                    conceptoComisionEntidad.Consultar();

                                    if (((int)conceptoComisionEntidad.ConceptoComision) == conceptoComisionID && drConceptoComisionAgencia.ConceptoComisionEntidadID != dr.ConceptoComisionEntidadID && (int)conceptoComisionEntidad.EntidadComision != 8 /*8 = andesmar*/)
                                    {
                                        suma += drConceptoComisionAgencia.IsComisionImporteFijoNull() ? 0 : drConceptoComisionAgencia.ComisionImporteFijo;
                                    }
                                }
                                suma += dr.IsComisionImporteFijoNull() || (int)conceptoComisionEntidad.EntidadComision == 8 /*8 = andesmar*/ ? 0 : dr.ComisionImporteFijo;
                                if (suma > importeFijoMaximo)
                                {
                                    ((SisPacK.ErrorWeb) this.phErrores.Controls[0]).setMensaje("La sumatoria de los importes de comisión para el concepto es mayor que el máximo permitido.");
                                    return;
                                }
                            }
                        }
                    }
                }
                else
                {
                    // control de que la suma de porcentajes para ese concepto de facturación no supere el maximo permitido
                    IConceptoFacturacion conceptoFacturacion = ConceptoFacturacionFactory.GetConceptoFacturacion();
                    conceptoFacturacion.GetOne(dr.ConceptoFacturacionID);


                    if (conceptoFacturacion.ImporteMaximoComision != null)
                    {
                        double importeFijoMaximo     = conceptoFacturacion.ImporteMaximoComision ?? 0;
                        int    conceptoFacturacionID = dr.ConceptoFacturacionID;
                        double suma = 0;

                        IConceptoComisionEntidad conceptoComisionEntidad = ConceptoComisionEntidadFactory.GetConceptoComisionEntidad();

                        foreach (DsComisionesAgencias.DatosRow drConceptoComisionAgencia in this.dsComisionesAgencias.Datos)
                        {
                            conceptoComisionEntidad.ConceptoComisionEntidadID = drConceptoComisionAgencia.ConceptoComisionEntidadID;
                            conceptoComisionEntidad.Consultar();

                            if (conceptoComisionEntidad.ConceptoFacturacionID == conceptoFacturacionID && drConceptoComisionAgencia.ConceptoComisionEntidadID != dr.ConceptoComisionEntidadID && (int)conceptoComisionEntidad.EntidadComision != 8 /*8 = andesmar*/)
                            {
                                suma += drConceptoComisionAgencia.IsComisionImporteFijoNull() ? 0 : drConceptoComisionAgencia.ComisionImporteFijo;
                            }
                        }
                        suma += dr.IsComisionImporteFijoNull() || (int)conceptoComisionEntidad.EntidadComision == 8 /*8 = andesmar*/ ? 0 : dr.ComisionImporteFijo;
                        if (suma > importeFijoMaximo)
                        {
                            ((SisPacK.ErrorWeb) this.phErrores.Controls[0]).setMensaje("La sumatoria de los importes de comisión para el concepto es mayor que el máximo permitido.");
                            return;
                        }
                    }
                }
            }

            if (comisionAgencia.EstadoComision == NegociosSisPackInterface.SisPack.EstadoComision.Ninguno)
            {
                comisionAgencia.EstadoComision = NegociosSisPackInterface.SisPack.EstadoComision.Habilitada;
            }

            try
            {
                string script = "";
                if (comisionAgencia.GuardarMasivo(usuario))
                {
                    this.dtgComisiones.EditItemIndex      = -1;
                    Session["dsComisionesAgenciasMasivo"] = null;
                    this.BindGrilla();
                    this.txtRazonSocialBusqueda.Text = string.Empty;
                    BuscarAgencias();

                    script += "			alert('Los datos se guardaron correctamente.');\n";;
                    ScriptManager.RegisterClientScriptBlock(this.UpdatePanel1,
                                                            UpdatePanel1.GetType(),
                                                            "muestraMensaje",
                                                            script,
                                                            true);
                }
                else
                {
                    script += "			alert('Los datos no se guardaron debido a errores.');\n";;
                    ScriptManager.RegisterClientScriptBlock(this.UpdatePanel1,
                                                            UpdatePanel1.GetType(),
                                                            "muestraMensaje",
                                                            script,
                                                            true);
                }
            }
            catch (Exception ex)
            {
                string mensaje = ex.Message;
                try
                {
                    mensaje = this.TraducirTexto(ex.Message);
                    if (mensaje == "" || mensaje == null)
                    {
                        mensaje = ex.Message;
                    }
                }
                catch (Exception)
                {
                    mensaje = ex.Message;
                }
                ((SisPacK.ErrorWeb) this.phErrores.Controls[0]).setMensaje(mensaje);
            }
        }
Пример #3
0
        protected void dtgComisiones_Update(object sender, DataGridCommandEventArgs e)
        {
            try
            {
                RadioButton rbtPorcentaje = (RadioButton)e.Item.FindControl("rbtPorcentaje");
                if (rbtPorcentaje.Checked)
                {
                    RequiredFieldValidator req = (RequiredFieldValidator)((PlaceHolder)e.Item.FindControl("phValidBaseCalculo")).FindControl("ReqPorcentaje");
                    req.Enabled = true;
                    req.Validate();
                    if (!req.IsValid)
                    {
                        return;
                    }

                    BaseValidator valPtj = (BaseValidator)((PlaceHolder)e.Item.FindControl("phValidBaseCalculo")).FindControl("ValPorcentaje");
                    valPtj.Enabled = true;
                    valPtj.Validate();
                    if (!valPtj.IsValid)
                    {
                        return;
                    }

                    req         = (RequiredFieldValidator)((PlaceHolder)e.Item.FindControl("phValidBaseCalculo")).FindControl("ReqBaseCalculo");
                    req.Enabled = true;
                    req.Validate();
                    if (!req.IsValid)
                    {
                        return;
                    }
                }
                else
                {
                    RequiredFieldValidator req = (RequiredFieldValidator)((PlaceHolder)e.Item.FindControl("phValidBaseCalculo")).FindControl("ReqImporteFijo");
                    req.Enabled = true;
                    req.Validate();
                    if (!req.IsValid)
                    {
                        return;
                    }

                    BaseValidator valImp = (BaseValidator)((PlaceHolder)e.Item.FindControl("phValidBaseCalculo")).FindControl("ValImporteFijo");
                    valImp.Enabled = true;
                    valImp.Validate();
                    if (!valImp.IsValid)
                    {
                        return;
                    }
                }

                Page.Validate();
                if (!Page.IsValid)
                {
                    return;
                }

                //this.dsComisionesVendedorUVenta = (DsComisionesVendedorUVenta)Session["dsComisionesVendedorUVenta"];
                this.dsComisionesVendedorUVenta = (DsComisionesVendedorUVenta)this.dtgComisiones.DataSource;
                DsComisionesVendedorUVenta.DatosRow dr = (DsComisionesVendedorUVenta.DatosRow) this.dsComisionesVendedorUVenta.Datos.Rows[e.Item.DataSetIndex];

                if (dr.MesDesde < 0)
                {
                    throw new Exception("El mes inicial no es válido");
                }

                if (dr.MesHasta < 0)
                {
                    throw new Exception("El mes hasta no es válido");
                }

                if (dr.MesDesde > dr.MesHasta)
                {
                    throw new Exception("El mes inicial no puede ser mayor que el final");
                }

                IComisionVendedorUVenta comisionVendedorUVenta = ComisionVendedorUVentaFactory.GetComisionVendedorUVenta();
                comisionVendedorUVenta.VendedorID = Utiles.Validaciones.obtieneEntero(this.txtVendedorID.Text);


                //comisionVendedorUVenta.ConceptoComisionEntidadID = Utiles.Validaciones.obtieneEntero(((DropDownList)e.Item.FindControl("ddlConceptoComisionEntidad")).SelectedValue);
                //comisionVendedorUVenta.ConceptoComisionEntidadID = dr.ConceptoComisionEntidadID;

                int ccID = 0;
                int ecID = 0;
                if (this.txtConceptoComisionID.Text == "")
                {
                    ccID = Utiles.Validaciones.obtieneEntero(((DropDownList)e.Item.FindControl("ddlConceptoComision")).SelectedValue);
                }
                else
                {
                    ccID = Utiles.Validaciones.obtieneEntero(this.txtConceptoComisionID.Text);
                }

                if (this.txtEntidadComisionID.Text == "")
                {
                    ecID = Utiles.Validaciones.obtieneEntero(((DropDownList)e.Item.FindControl("ddlEntidadComision")).SelectedValue);
                }
                else
                {
                    ecID = Utiles.Validaciones.obtieneEntero(this.txtEntidadComisionID.Text);
                }

                IConceptoComisionEntidad cce   = ConceptoComisionEntidadFactory.GetConceptoComisionEntidad();
                System.Data.DataRow[]    drCCE = (System.Data.DataRow[])cce.GetConceptosComisionesEntidadesDataSet().Datos.Select("ConceptoComisionID = " + ccID.ToString() + " AND EntidadComisionID=" + ecID.ToString());

                comisionVendedorUVenta.ConceptoComisionEntidadID = Convert.ToInt32(drCCE[0]["ConceptoComisionEntidadID"]);

                comisionVendedorUVenta.MesDesde = Utiles.Validaciones.obtieneEntero(((TextBox)e.Item.FindControl("txtMesDesde")).Text);
                comisionVendedorUVenta.MesHasta = Utiles.Validaciones.obtieneEntero(((TextBox)e.Item.FindControl("txtMesHasta")).Text);
                comisionVendedorUVenta.ComisionVendedorUVentaID = Utiles.Validaciones.obtieneEntero(((Label)e.Item.FindControl("lblComisionVendedorUVentaID")).Text);


                if (rbtPorcentaje.Checked)
                {
                    //comisionVendedorUVenta.ComisionPorcentaje = dr.IsComisionPorcentajeNull() ? 0 : dr.ComisionPorcentaje;
                    comisionVendedorUVenta.ComisionPorcentaje = Utiles.Validaciones.obtieneDouble(((TextBox)e.Item.FindControl("txtPorcentaje")).Text);
                    //comisionVendedorUVenta.BaseCalculoID = dr.IsBaseCalculoIDNull() || dr.ComisionPorcentaje == 0 ? 0 : dr.BaseCalculoID;
                    comisionVendedorUVenta.BaseCalculoID = Utiles.Validaciones.obtieneEntero(((DropDownList)e.Item.FindControl("ddlBaseCalculo")).SelectedValue);
                    //comisionVendedorUVenta.ComisionImporteFijo = 0;
                    comisionVendedorUVenta.ComisionImporteFijo = 0;

                    //control de que la suma de porcentajes para ese concepto de comision no supere el maximo permitido
                    System.Data.DataRow[] drConceptoComisionEntidad = (System.Data.DataRow[]) this.dsConceptosComisionesEntidades.Tables[0].Select("ConceptoComisionEntidadID=" + dr.ConceptoComisionEntidadID);
                    if (drConceptoComisionEntidad.Length > 0)
                    {
                        if (Convert.ToInt32(drConceptoComisionEntidad[0]["EntidadComisionID"]) != 8)                        //hacemos el control si la entidad no es Andesmar
                        {
                            if (drConceptoComisionEntidad[0]["PorcentajeMaximo"] != System.DBNull.Value)
                            {
                                double porcentajeMaximo   = Convert.ToDouble(drConceptoComisionEntidad[0]["PorcentajeMaximo"]);
                                int    conceptoComisionID = Convert.ToInt32(drConceptoComisionEntidad[0]["ConceptoComisionID"]);
                                double suma = 0;

                                if (comisionVendedorUVenta.BaseCalculoID == (int)NegociosSisPackInterface.SisPack.BaseCalculo.GananciaRedespacho &&
                                    (conceptoComisionID != (int)NegociosSisPackInterface.SisPack.ConceptoComision.Redespacho ||
                                     !(ecID == (int)NegociosSisPackInterface.SisPack.EntidadComision.Vendedor || ecID == (int)NegociosSisPackInterface.SisPack.EntidadComision.SupervisorGeneral ||
                                       ecID == (int)NegociosSisPackInterface.SisPack.EntidadComision.SupervisorRegional)))
                                {
                                    throw new Exception("La base de cálculo válida para el concepto " + NegociosSisPackInterface.SisPack.ConceptoComision.Redespacho.ToString() + " y la entidad " + NegociosSisPackInterface.SisPack.EntidadComision.Vendedor.ToString() + " es " + NegociosSisPackInterface.SisPack.BaseCalculo.GananciaRedespacho.ToString());
                                }

                                IConceptoComisionEntidad conceptoComisionEntidad = ConceptoComisionEntidadFactory.GetConceptoComisionEntidad();

                                foreach (DsComisionesVendedorUVenta.DatosRow drConceptoComisionVendedorUVenta in this.dsComisionesVendedorUVenta.Datos)
                                {
                                    conceptoComisionEntidad.ConceptoComisionEntidadID = drConceptoComisionVendedorUVenta.ConceptoComisionEntidadID;
                                    conceptoComisionEntidad.Consultar();

                                    if (((int)conceptoComisionEntidad.ConceptoComision) == conceptoComisionID && drConceptoComisionVendedorUVenta.ConceptoComisionEntidadID != dr.ConceptoComisionEntidadID)
                                    {
                                        suma += drConceptoComisionVendedorUVenta.IsComisionPorcentajeNull() ? 0 : drConceptoComisionVendedorUVenta.ComisionPorcentaje;
                                    }
                                }
                                suma += dr.IsComisionPorcentajeNull() ? 0 : dr.ComisionPorcentaje;
                                if (suma > porcentajeMaximo)
                                {
                                    ((ErrorWeb)this.phErrores.Controls[0]).setMensaje(this.TraducirTexto("Errores.Invalidos.SumaPorcentajes"));
                                    return;
                                }
                            }
                        }
                    }
                }
                else
                {
                    //comisionVendedorUVenta.ComisionImporteFijo = dr.IsComisionImporteFijoNull() ? 0 : dr.ComisionImporteFijo;
                    comisionVendedorUVenta.ComisionImporteFijo = Utiles.Validaciones.obtieneDouble(((TextBox)e.Item.FindControl("txtImporteFijo")).Text);
                    comisionVendedorUVenta.ComisionPorcentaje  = 0;
                    comisionVendedorUVenta.BaseCalculoID       = 0;

                    //control de que la suma de importes fijos para ese concepto de comision no supere el maximo permitido
                    System.Data.DataRow[] drConceptoComisionEntidad = (System.Data.DataRow[]) this.dsConceptosComisionesEntidades.Tables[0].Select("ConceptoComisionEntidadID=" + dr.ConceptoComisionEntidadID);
                    if (drConceptoComisionEntidad.Length > 0)
                    {
                        if (Convert.ToInt32(drConceptoComisionEntidad[0]["EntidadComisionID"]) != 8)                        //hacemos el control si la entidad no es Andesmar
                        {
                            if (drConceptoComisionEntidad[0]["ImporteFijoMaximo"] != System.DBNull.Value)
                            {
                                double importeFijoMaximo  = Convert.ToDouble(drConceptoComisionEntidad[0]["ImporteFijoMaximo"]);
                                int    conceptoComisionID = Convert.ToInt32(drConceptoComisionEntidad[0]["ConceptoComisionID"]);
                                double suma = 0;

                                IConceptoComisionEntidad conceptoComisionEntidad = ConceptoComisionEntidadFactory.GetConceptoComisionEntidad();

                                foreach (DsComisionesVendedorUVenta.DatosRow drConceptoComisionVendedorUVenta in this.dsComisionesVendedorUVenta.Datos)
                                {
                                    conceptoComisionEntidad.ConceptoComisionEntidadID = drConceptoComisionVendedorUVenta.ConceptoComisionEntidadID;
                                    conceptoComisionEntidad.Consultar();

                                    if (((int)conceptoComisionEntidad.ConceptoComision) == conceptoComisionID && drConceptoComisionVendedorUVenta.ConceptoComisionEntidadID != dr.ConceptoComisionEntidadID)
                                    {
                                        suma += drConceptoComisionVendedorUVenta.IsComisionImporteFijoNull() ? 0 : drConceptoComisionVendedorUVenta.ComisionImporteFijo;
                                    }
                                }
                                suma += dr.IsComisionImporteFijoNull() ? 0 : dr.ComisionImporteFijo;
                                if (suma > importeFijoMaximo)
                                {
                                    ((ErrorWeb)this.phErrores.Controls[0]).setMensaje(this.TraducirTexto("Errores.Invalidos.SumaImportes"));
                                    return;
                                }
                            }
                        }
                    }
                }
                if (comisionVendedorUVenta.EstadoComisionID == (int)NegociosSisPackInterface.SisPack.EstadoComision.Ninguno)
                {
                    comisionVendedorUVenta.EstadoComisionID = (int)NegociosSisPackInterface.SisPack.EstadoComision.Habilitada;
                }

                try
                {
                    char[]   separador = { ',' };
                    string[] UVentaSel = this.txtUVentaID.Text.Split(separador);

                    foreach (string unidadVta in UVentaSel)
                    {
                        comisionVendedorUVenta.UnidadVentaID = Convert.ToInt32(unidadVta);
                        comisionVendedorUVenta.Guardar(usuario);
                    }
                    this.dtgComisiones.EditItemIndex      = -1;
                    Session["dsComisionesVendedorUVenta"] = null;
                    this.BindGrilla();
                    this.txtConceptoComisionID.Text = "";
                    this.txtEntidadComisionID.Text  = "";
                }
                catch (Exception ex)
                {
                    ManejaErrores(ex);
                }
            }
            catch (Exception ex)
            {
                ManejaErrores(ex);
            }
        }
Пример #4
0
        private void dtgComisiones_UpdateCommand(object source, System.Web.UI.WebControls.DataGridCommandEventArgs e)
        {
            RadioButton rbtPorcentaje = (RadioButton)e.Item.FindControl("rbtPorcentaje");

            if (rbtPorcentaje.Checked)
            {
                if (((TextBox)e.Item.FindControl("txtPorcentaje")).Text == "0")
                {
                    ((TextBox)e.Item.FindControl("txtPorcentaje")).Text = "";
                }

                RequiredFieldValidator req = (RequiredFieldValidator)((PlaceHolder)e.Item.FindControl("phValidBaseCalculo")).FindControl("ReqPorcentaje");
                req.Enabled = true;
                req.Validate();
                if (!req.IsValid)
                {
                    return;
                }

                BaseValidator valPtj = (BaseValidator)((PlaceHolder)e.Item.FindControl("phValidBaseCalculo")).FindControl("ValPorcentaje");
                valPtj.Enabled = true;
                valPtj.Validate();
                if (!valPtj.IsValid)
                {
                    return;
                }

                req         = (RequiredFieldValidator)((PlaceHolder)e.Item.FindControl("phValidBaseCalculo")).FindControl("ReqBaseCalculo");
                req.Enabled = true;
                req.Validate();
                if (!req.IsValid)
                {
                    return;
                }
            }
            else
            {
                if (((TextBox)e.Item.FindControl("txtImporteFijo")).Text == "0")
                {
                    ((TextBox)e.Item.FindControl("txtImporteFijo")).Text = "";
                }

                RequiredFieldValidator req = (RequiredFieldValidator)((PlaceHolder)e.Item.FindControl("phValidBaseCalculo")).FindControl("ReqImporteFijo");
                req.Enabled = true;
                req.Validate();
                if (!req.IsValid)
                {
                    return;
                }

                BaseValidator valImp = (BaseValidator)((PlaceHolder)e.Item.FindControl("phValidBaseCalculo")).FindControl("ValImporteFijo");
                valImp.Enabled = true;
                valImp.Validate();
                if (!valImp.IsValid)
                {
                    return;
                }
            }

            Page.Validate();
            if (!Page.IsValid)
            {
                return;
            }

            this.dsComisiones = (DsComisionMasivaVendedor)Session["dsComisiones"];
            DsComisionMasivaVendedor.DatosRow dr = (DsComisionMasivaVendedor.DatosRow) this.dsComisiones.Datos.Rows[e.Item.DataSetIndex];

            IComisionMasivaVendedor cce = ComisionMasivaVendedorFactory.GetComisionMasivaVendedor();
            //cce.ConceptoComisionEntidadID = dr.ConceptoComisionEntidadID;
            int ccID = 0;
            int ecID = 0;

            if (this.txtConceptoComisionID.Text == "")
            {
                ccID = Utiles.Validaciones.obtieneEntero(((DropDownList)e.Item.FindControl("ddlConceptoComision")).SelectedValue);
            }
            else
            {
                ccID = Utiles.Validaciones.obtieneEntero(this.txtConceptoComisionID.Text);
            }

            if (this.txtEntidadComisionID.Text == "")
            {
                ecID = Utiles.Validaciones.obtieneEntero(((DropDownList)e.Item.FindControl("ddlEntidadComision")).SelectedValue);
            }
            else
            {
                ecID = Utiles.Validaciones.obtieneEntero(this.txtEntidadComisionID.Text);
            }

            System.Data.DataRow[] drCCE = (System.Data.DataRow[])cce.GetComisionesMasivasVendedoresDataSet().Datos.Select("ConceptoComisionID = " + ccID.ToString() + " AND EntidadComisionID=" + ecID.ToString());
            //GetConceptosComisionesEntidadesDataSet().Datos.Select("ConceptoComisionID = " + ccID.ToString() + " AND EntidadComisionID=" + ecID.ToString());
            if (drCCE.Length > 0)
            {
                cce.ConceptoComisionEntidadID = Convert.ToInt32(drCCE[0]["ConceptoComisionEntidadID"]);
            }
            else
            {
                ((ErrorWeb)this.phErrores.Controls[0]).setMensaje("No es posible asignar comisiones a esta entidad ya que no se ha definido el concepto de comisión correspondiente.");
                return;
            }


            // obtengo el id de la comision masiva del vendedor, si no lo puede recuperar
            // es porque es nuevo, entonces le asigno 0
            int comisionMasivaVendedorID;

            try
            {
                comisionMasivaVendedorID = dr.ComisionMasivaVendedorID;
            }
            catch (Exception)
            {
                comisionMasivaVendedorID = 0;
            }


            if (rbtPorcentaje.Checked)
            {
                cce.ComisionPorcentaje  = dr.IsComisionPorcentajeNull() ? 0 : dr.ComisionPorcentaje;
                cce.BaseCalculo         = (NegociosSisPackInterface.SisPack.BaseCalculo)(dr.IsBaseCalculoIDNull() ? 0 : dr.BaseCalculoID);
                cce.ComisionImporteFijo = 0;

                //control de que la suma de porcentajes para ese concepto de comision no supere el maximo permitido
                System.Data.DataRow[] drConceptoComisionEntidad = (System.Data.DataRow[]) this.dsConceptosComisionesEntidades.Tables[0].Select("ConceptoComisionEntidadID=" + cce.ConceptoComisionEntidadID);                 //dr.ConceptoComisionEntidadID);
                if (drConceptoComisionEntidad.Length > 0)
                {
                    if (Convert.ToInt32(drConceptoComisionEntidad[0]["EntidadComisionID"]) != 8)                    //hacemos el control si la entidad no es Andesmar
                    {
                        if (drConceptoComisionEntidad[0]["PorcentajeMaximo"] != System.DBNull.Value)
                        {
                            double porcentajeMaximo   = Convert.ToDouble(drConceptoComisionEntidad[0]["PorcentajeMaximo"]);
                            int    conceptoComisionID = Convert.ToInt32(drConceptoComisionEntidad[0]["ConceptoComisionID"]);
                            double suma = 0;

                            IComisionMasivaVendedor cceS = ComisionMasivaVendedorFactory.GetComisionMasivaVendedor();
                            cceS.UnidadVentaID = Utiles.Validaciones.obtieneEntero(this.txtUnidadVentaID.Text);
                            DsComisionMasivaVendedor dsComisionMasivaVendedor = cceS.GetComisionesMasivasVendedoresDataSet();

                            foreach (DsComisionMasivaVendedor.DatosRow drComisionMasivaVendedor in dsComisionMasivaVendedor.Datos)
                            {
                                IConceptoComisionEntidad conceptoComisionEntidad = ConceptoComisionEntidadFactory.GetConceptoComisionEntidad();
                                conceptoComisionEntidad.ConceptoComisionEntidadID = Convert.ToInt32(drComisionMasivaVendedor.ConceptoComisionEntidadID);
                                conceptoComisionEntidad.Consultar();

                                if (((int)conceptoComisionEntidad.ConceptoComision) == conceptoComisionID &&
                                    comisionMasivaVendedorID != drComisionMasivaVendedor.ComisionMasivaVendedorID)
                                {
                                    /*	//&& drComisionMasivaVendedor.ConceptoComisionEntidadID != Convert.ToInt32(drConceptoComisionEntidad[0]["ConceptoComisionEntidadID"])
                                     *      && drComisionMasivaVendedor.EntidadComisionID != Convert.ToInt32(dr.EntidadComisionID)
                                     *      && drComisionMasivaVendedor.MesDesde != Convert.ToInt32(dr.MesDesde)
                                     *      && drComisionMasivaVendedor.MesHasta != Convert.ToInt32(dr.MesHasta)*/
                                    //if (dr.ComisionMasivaVendedorID != drComisionMasivaVendedor.ComisionMasivaVendedorID)
                                    suma += drComisionMasivaVendedor.IsComisionPorcentajeNull() ? 0 : drComisionMasivaVendedor.ComisionPorcentaje;
                                }
                            }
                            suma += dr.IsComisionPorcentajeNull() ? 0 : dr.ComisionPorcentaje;
                            if (suma > porcentajeMaximo)
                            {
                                ((ErrorWeb)this.phErrores.Controls[0]).setMensaje(this.TraducirTexto("Errores.Invalidos.SumaPorcentajes"));
                                return;
                            }
                        }
                    }
                }
            }
            else
            {
                cce.ComisionImporteFijo = dr.IsComisionImporteFijoNull() ? 0 : dr.ComisionImporteFijo;
                cce.ComisionPorcentaje  = 0;
                cce.BaseCalculo         = 0;

                //control de que la suma de importes fijos para ese concepto de comision no supere el maximo permitido
                System.Data.DataRow[] drConceptoComisionEntidad = (System.Data.DataRow[]) this.dsConceptosComisionesEntidades.Tables[0].Select("ConceptoComisionEntidadID=" + cce.ConceptoComisionEntidadID);
                //System.Data.DataRow[] drConceptoComision = (System.Data.DataRow[]) this.dsConceptosComisiones.Tables[0].Select("ConceptoComisionID=" + dr.ConceptoComisionID);
                if (drConceptoComisionEntidad.Length > 0)
                {
                    if (drConceptoComisionEntidad[0]["ImporteFijoMaximo"] != System.DBNull.Value)
                    {
                        double importeFijoMaximo  = Convert.ToDouble(drConceptoComisionEntidad[0]["ImporteFijoMaximo"]);
                        int    conceptoComisionID = Convert.ToInt32(drConceptoComisionEntidad[0]["ConceptoComisionID"]);
                        double suma = 0;


                        IComisionMasivaVendedor cceS = ComisionMasivaVendedorFactory.GetComisionMasivaVendedor();
                        cceS.UnidadVentaID = Utiles.Validaciones.obtieneEntero(this.txtUnidadVentaID.Text);
                        DsComisionMasivaVendedor dsComisionMasivaVendedor = cceS.GetComisionesMasivasVendedoresDataSet();

                        foreach (DsComisionMasivaVendedor.DatosRow drComisionMasivaVendedor in dsComisionMasivaVendedor.Datos)
                        {
                            IConceptoComisionEntidad conceptoComisionEntidad = ConceptoComisionEntidadFactory.GetConceptoComisionEntidad();
                            conceptoComisionEntidad.ConceptoComisionEntidadID = Convert.ToInt32(drComisionMasivaVendedor.ConceptoComisionEntidadID);
                            conceptoComisionEntidad.Consultar();

                            //	if(((int)conceptoComisionEntidad.ConceptoComision )== conceptoComisionID)// && drComisionMasivaVendedor.ConceptoComisionEntidadID != Convert.ToInt32(drConceptoComisionEntidad[0]["ConceptoComisionEntidadID"]))
                            if (((int)conceptoComisionEntidad.ConceptoComision) == conceptoComisionID &&
                                comisionMasivaVendedorID != drComisionMasivaVendedor.ComisionMasivaVendedorID)
                            {
                                suma += drComisionMasivaVendedor.IsComisionImporteFijoNull() ? 0 : drComisionMasivaVendedor.ComisionImporteFijo;
                            }
                        }
                        suma += dr.IsComisionImporteFijoNull() ? 0 : dr.ComisionImporteFijo;
                        if (suma > importeFijoMaximo)
                        {
                            ((ErrorWeb)this.phErrores.Controls[0]).setMensaje(this.TraducirTexto("La sumatoria de los importes fijos de comisión para el concepto es mayor que el máximo permitido."));
                            return;
                        }

                        /*foreach (DsConceptosComisionesEntidades.DatosRow drConceptoComisionEntidad in this.dsComisiones.Datos)
                         * {
                         *      if(drConceptoComisionEntidad.ConceptoComisionID == conceptoComisionID && drConceptoComisionEntidad.EntidadComisionID != dr.EntidadComisionID && drConceptoComisionEntidad.EntidadComisionID != 8)
                         *      {
                         *              suma+= drConceptoComisionEntidad.IsComisionImporteFijoNull() ? 0 : drConceptoComisionEntidad.ComisionImporteFijo;
                         *      }
                         * }
                         * suma+= dr.IsComisionImporteFijoNull() || dr.EntidadComisionID == 8 ? 0 : dr.ComisionImporteFijo;
                         * if(suma > importeFijoMaximo)
                         * {
                         *      ((ErrorWeb)this.phErrores.Controls[0]).setMensaje("La sumatoria de los importes fijos de comisión para el concepto es mayor que el máximo permitido.");
                         *      return;
                         * }*/
                    }
                }
            }
            if (cce.EstadoComision == NegociosSisPackInterface.SisPack.EstadoComision.Ninguno)
            {
                cce.EstadoComision = NegociosSisPackInterface.SisPack.EstadoComision.Habilitada;
            }

            cce.UnidadVentaID = Convert.ToInt32(this.txtUnidadVentaID.Text);

            try
            {
                /*
                 * if (dr.MesDesde<0 || dr.MesDesde>12)
                 *      throw new Exception("El mes inicial no es válido");
                 *
                 * if (dr.MesHasta<0 || dr.MesHasta>12)
                 *      throw new Exception("El mes hasta no es válido");
                 */

                if (dr.MesDesde < 0)
                {
                    throw new Exception("El mes inicial no es válido");
                }

                if (dr.MesHasta < 0)
                {
                    throw new Exception("El mes hasta no es válido");
                }

                if (dr.MesDesde > dr.MesHasta)
                {
                    throw new Exception("El mes inicial no puede ser mayor que el final");
                }

                cce.MesDesde = Utiles.Validaciones.obtieneEntero(((TextBox)e.Item.FindControl("txtMesDesde")).Text);
                cce.MesHasta = Utiles.Validaciones.obtieneEntero(((TextBox)e.Item.FindControl("txtMesHasta")).Text);

                cce.Guardar(dr.IsComisionMasivaVendedorIDNull() ? 0 : dr.ComisionMasivaVendedorID);
                this.dtgComisiones.EditItemIndex = -1;
                Session["dsComisiones"]          = null;
                this.BindGrilla();
            }
            catch (Exception ex)
            {
                string mensaje = ex.Message;
                try
                {
                    mensaje = this.TraducirTexto(ex.Message);
                    if (mensaje == "" || mensaje == null)
                    {
                        mensaje = ex.Message;
                    }
                }
                catch (Exception)
                {
                    mensaje = ex.Message;
                }
                ((ErrorWeb)this.phErrores.Controls[0]).setMensaje(mensaje);
            }
        }