protected void ImgAgregar_Click(object sender, ImageClickEventArgs e)
        {
            try
            {
                _dtmFecha = DateTime.ParseExact(string.Format("{0}", TxtFecha.Text),
                                                "yyyy-MM-dd", CultureInfo.InvariantCulture);

                if (_dtmFecha.Year != int.Parse(ViewState["Year"].ToString()) ||
                    _dtmFecha.Month != int.Parse(ViewState["Mes"].ToString()))
                {
                    new FuncionesDAO().FunShowJSMessage("La Proyeccion debe ser del Año y Mes en curso", this);
                    return;
                }

                if (string.IsNullOrEmpty(TxtValor.Text.Trim()) || TxtValor.Text.Trim() == "0" ||
                    TxtValor.Text.Trim() == "0.00" || TxtValor.Text.Trim() == "0.0")
                {
                    new FuncionesDAO().FunShowJSMessage("Ingrese valor del pago..!", this);
                    return;
                }

                if (ViewState["Proyeccion"] != null)
                {
                    _tblbuscar = (DataTable)ViewState["Proyeccion"];

                    _result = _tblbuscar.Select("Cedula='" + LblIdentificacion.InnerText + "' and FechaPago='" +
                                                TxtFecha.Text.Trim() + "'").FirstOrDefault();

                    if (_result != null)
                    {
                        _lexiste = true;
                    }
                }

                if (_lexiste)
                {
                    new FuncionesDAO().FunShowJSMessage("Fecha ya se encuentra registrada..!", this);
                    return;
                }

                _presupuesto = decimal.Parse(ViewState["Presupuesto"].ToString().Replace(",", "."),
                                             CultureInfo.InvariantCulture);

                _totalpagos       = 0;
                _totalproyecc     = 0;
                _totalsumaproyecc = 0;
                _totalsumapagos   = 0;
                _totalsumalost    = 0;
                _estado           = "PRS";
                _respuesta        = "NUEVO-AGREGADO";
                _observacion      = TxtObservacion.Text.Trim();
                _valorpago        = decimal.Parse(TxtValor.Text.Trim(), CultureInfo.InvariantCulture);

                _dts = new PagoCarteraDAO().FunGetPagoCartera(18, 0, 0, LblIdentificacion.InnerText, "", "",
                                                              TxtFecha.Text.Trim(), TxtValor.Text.Trim(), _respuesta, LblCliente.InnerText, _estado,
                                                              _observacion, int.Parse(ViewState["CodigoPRCB"].ToString()), 0, 0, 0, "",
                                                              Session["Conectar"].ToString());

                _dts = new PagoCarteraDAO().FunGetPagoCartera(22, 0, 0, "", "", "", "", "", "", "", "", "",
                                                              int.Parse(ViewState["CodigoPRCB"].ToString()), 0, 0, 0, "", Session["Conectar"].ToString());

                ViewState["Proyeccion"] = _dts.Tables[0];

                GrdvDatos.DataSource = _dts;
                GrdvDatos.DataBind();
                GrdvDatos.UseAccessibleHeader    = true;
                GrdvDatos.HeaderRow.TableSection = TableRowSection.TableHeader;

                _totalsumaproyecc = decimal.Parse(ViewState["TotalProyecc"].ToString());
                _totalsumapagos   = decimal.Parse(ViewState["TotalPagos"].ToString());
                _totalnoefectivos = decimal.Parse(ViewState["TotalNoEfectivo"].ToString());
                _totalsumalost    = decimal.Parse(ViewState["TotalLost"].ToString());

                if (_totalsumaproyecc > 0)
                {
                    _porcenproyecc = Math.Round((_totalsumaproyecc / _presupuesto) * 100, 2);
                }
                else
                {
                    _porcenproyecc = 0;
                }

                if (_totalsumapagos > 0)
                {
                    _porcenpagos = Math.Round((_totalsumapagos / _presupuesto) * 100, 2);
                }
                else
                {
                    _porcenpagos = 0;
                }

                _dtbPresupuesto                = (DataTable)ViewState["DatosPresupuesto"];
                _result                        = _dtbPresupuesto.Select("Codigo=1").FirstOrDefault();
                _result["VProyeccion"]         = "$" + string.Format("{0:n}", _totalsumaproyecc);
                _result["VPorcenProyecc"]      = _porcenproyecc.ToString() + "%";
                _result["VPagos"]              = "$" + string.Format("{0:n}", _totalsumapagos);
                _result["VPorcenCumplimiento"] = _porcenpagos.ToString() + "%";
                _result["NoEfectivos"]         = "$" + string.Format("{0:n}", _totalnoefectivos);
                _result["Lost"]                = "$" + string.Format("{0:n}", _totalsumalost);

                _dtbPresupuesto.AcceptChanges();
                GrdvProyeccion.DataSource = _dtbPresupuesto;
                GrdvProyeccion.DataBind();

                FunLimpiar();
            }
            catch (Exception ex)
            {
                Lblerror.Text = ex.ToString();
            }
        }
        protected void ImgEliminar_Click(object sender, ImageClickEventArgs e)
        {
            try
            {
                _tblbuscar = (DataTable)ViewState["Proyeccion"];

                _result = _tblbuscar.Select("CodigoRESP='" + ViewState["CodigoRESP"].ToString() + "'").FirstOrDefault();
                _result.Delete();
                _tblbuscar.AcceptChanges();

                _totalpagos   = 0; _totalsumaproyecc = 0; _totalsumapagos = 0; _porcenproyecc = 0; _porcenpagos = 0;
                _totalproyecc = 0; _totalnoefectivos = 0; _totalsumalost = 0;

                _dts = new PagoCarteraDAO().FunGetPagoCartera(20, 0, 0, "", "", "", "", "", "", "", "", "",
                                                              int.Parse(ViewState["CodigoRESP"].ToString()), 0, 0, 0, "", Session["Conectar"].ToString());

                _dts = new PagoCarteraDAO().FunGetPagoCartera(22, 0, 0, "", "", "", "", "", "", "", "", "",
                                                              int.Parse(ViewState["CodigoPRCB"].ToString()), 0, 0, 0, "", Session["Conectar"].ToString());

                ViewState["Proyeccion"] = _tblbuscar;

                GrdvDatos.DataSource = _tblbuscar;
                GrdvDatos.DataBind();
                GrdvDatos.UseAccessibleHeader    = true;
                GrdvDatos.HeaderRow.TableSection = TableRowSection.TableHeader;

                FunLimpiar();

                _presupuesto = decimal.Parse(ViewState["Presupuesto"].ToString().Replace(",", "."),
                                             CultureInfo.InvariantCulture);

                _totalsumaproyecc = decimal.Parse(ViewState["TotalProyecc"].ToString());
                _totalsumapagos   = decimal.Parse(ViewState["TotalPagos"].ToString());
                _totalnoefectivos = decimal.Parse(ViewState["TotalNoEfectivo"].ToString());
                _totalsumalost    = decimal.Parse(ViewState["TotalLost"].ToString());

                if (_totalsumaproyecc > 0)
                {
                    _porcenproyecc = Math.Round((_totalsumaproyecc / _presupuesto) * 100, 2);
                }
                else
                {
                    _porcenproyecc = 0;
                }

                if (_totalsumapagos > 0)
                {
                    _porcenpagos = Math.Round((_totalsumapagos / _presupuesto) * 100, 2);
                }
                else
                {
                    _porcenpagos = 0;
                }

                _dtbPresupuesto                = (DataTable)ViewState["DatosPresupuesto"];
                _result                        = _dtbPresupuesto.Select("Codigo=1").FirstOrDefault();
                _result["VProyeccion"]         = "$" + string.Format("{0:n}", _totalsumaproyecc);
                _result["VPorcenProyecc"]      = _porcenproyecc.ToString() + "%";
                _result["VPagos"]              = "$" + string.Format("{0:n}", _totalsumapagos);
                _result["VPorcenCumplimiento"] = _porcenpagos.ToString() + "%";
                _result["NoEfectivos"]         = "$" + string.Format("{0:n}", _totalnoefectivos);
                _result["Lost"]                = "$" + string.Format("{0:n}", _totalsumalost);

                _dtbPresupuesto.AcceptChanges();
                GrdvProyeccion.DataSource = _dtbPresupuesto;
                GrdvProyeccion.DataBind();
            }
            catch (Exception ex)
            {
                Lblerror.Text = ex.ToString();
            }
        }
        private void FunCargarMantenimiento(int opcion)
        {
            _dts = new ConsultaDatosDAO().FunConsultaDatos(227, int.Parse(Session["usuCodigo"].ToString()),
                                                           0, 0, "", "", "", Session["Conectar"].ToString());

            if (_dts.Tables[0].Rows.Count > 0)
            {
                _codigobrmc = int.Parse(_dts.Tables[0].Rows[0]["CodigoBRMC"].ToString());

                _dts = new ConsultaDatosDAO().FunConsultaDatos(228, _codigobrmc, 0, 0, "", "", "",
                                                               Session["Conectar"].ToString());

                _meslabel               = _dts.Tables[0].Rows[0]["MesLabel"].ToString();
                _preslabel              = _dts.Tables[0].Rows[0]["PresuLabel"].ToString();
                _mes                    = int.Parse(_dts.Tables[0].Rows[0]["Mes"].ToString());
                _year                   = int.Parse(_dts.Tables[0].Rows[0]["Anio"].ToString());
                ViewState["Year"]       = _year;
                ViewState["Mes"]        = _mes;
                _codigocede             = int.Parse(_dts.Tables[0].Rows[0]["CodigoCEDE"].ToString());
                _codigocpce             = int.Parse(_dts.Tables[0].Rows[0]["CodigoCPCE"].ToString());
                ViewState["CodigoCPCE"] = _codigocpce;
                _codigogest             = int.Parse(_dts.Tables[0].Rows[0]["CodigoGEST"].ToString());
                ViewState["CodigoGEST"] = _codigogest;
                _presupuesto            = decimal.Parse(_dts.Tables[0].Rows[0]["Presupuesto"].ToString());

                ViewState["Presupuesto"] = _presupuesto;
                Lbltitulo.Text           = "PROYECCION " + _meslabel + " " + _year.ToString();

                _dts = new PagoCarteraDAO().FunGetPagoCartera(15, _codigocede, _codigocpce, "", "", "", "", "", "",
                                                              _meslabel, _presupuesto.ToString().Replace(",", "."), "", _codigogest, _year, _mes, 0, "",
                                                              Session["Conectar"].ToString());

                if (_dts.Tables[0].Rows.Count > 0)
                {
                    ViewState["CodigoPRCB"] = _dts.Tables[0].Rows[0]["CodigoPRCB"].ToString();
                }
            }

            _dts = new PagoCarteraDAO().FunGetPagoCartera(17, _codigocede, _codigocpce, "", "", "", "", "", "",
                                                          _meslabel, _presupuesto.ToString().Replace(",", "."), "", _codigogest, _year, _mes, 0, "",
                                                          Session["Conectar"].ToString());

            if (_dts.Tables[0].Rows.Count > 0)
            {
                ImgBuscar.Enabled = true;

                ViewState["Proyeccion"] = _dts.Tables[0];;
                GrdvDatos.DataSource    = _dts.Tables[0];;
                GrdvDatos.DataBind();
                GrdvDatos.UseAccessibleHeader    = true;
                GrdvDatos.HeaderRow.TableSection = TableRowSection.TableHeader;

                _totalsumaproyecc = decimal.Parse(ViewState["TotalProyecc"].ToString());
                _totalsumapagos   = decimal.Parse(ViewState["TotalPagos"].ToString());
                _totalnoefectivos = decimal.Parse(ViewState["TotalNoEfectivo"].ToString());
                _totalsumalost    = decimal.Parse(ViewState["TotalLost"].ToString());

                if (_totalsumaproyecc > 0)
                {
                    _porcenproyecc = Math.Round((_totalsumaproyecc / _presupuesto) * 100, 2);
                }
                else
                {
                    _porcenproyecc = 0;
                }

                if (_totalsumapagos > 0)
                {
                    _porcenpagos = Math.Round((_totalsumapagos / _presupuesto) * 100, 2);
                }
                else
                {
                    _porcenpagos = 0;
                }

                _dtbPresupuesto                = (DataTable)ViewState["DatosPresupuesto"];
                _addfil                        = _dtbPresupuesto.NewRow();
                _addfil["Codigo"]              = 1;
                _addfil["VPresupuesto"]        = "$" + string.Format("{0:n}", _presupuesto);
                _addfil["VProyeccion"]         = "$" + string.Format("{0:n}", _totalsumaproyecc);
                _addfil["VPorcenProyecc"]      = _porcenproyecc.ToString() + "%";
                _addfil["VPagos"]              = "$" + string.Format("{0:n}", _totalsumapagos);
                _addfil["VPorcenCumplimiento"] = _porcenpagos.ToString() + "%";
                _addfil["NoEfectivos"]         = "$" + string.Format("{0:n}", _totalnoefectivos);
                _addfil["Lost"]                = "$" + string.Format("{0:n}", _totalsumalost);

                _dtbPresupuesto.Rows.Add(_addfil);
                ViewState["DatosPresupuesto"] = _dtbPresupuesto;
                GrdvProyeccion.DataSource     = _dtbPresupuesto;
                GrdvProyeccion.DataBind();
            }
        }