private void CargarZonas()
        {
            objAgenda = new AgendaWCF.AgendaWCFClient();
            List <gsZona_ListarResult> lst = new List <gsZona_ListarResult>();

            lst = objAgenda.Agenda_ListarZona(
                ((Usuario_LoginResult)Session["Usuario"]).idEmpresa,
                ((Usuario_LoginResult)Session["Usuario"]).codigoUsuario, 0).ToList();


            cbzona.DataSource     = lst;
            cbzona.DataTextField  = "Zona";
            cbzona.DataValueField = "ID_Zona";
            cbzona.DataBind();

            foreach (RadComboBoxItem itm in cbzona.Items)
            {
                itm.Checked = true;
            }
        }
        protected void btnGuardar_OnClick(object sender, EventArgs e)
        {
            if (Session["Usuario"] == null)
            {
                ScriptManager.RegisterStartupScript(Page, this.GetType(), "mykey", "CancelEdit();", true);
            }

            FinanzasWCFClient objFinanzasWCF = new FinanzasWCFClient();

            try
            {
                var accion = JsonHelper.JsonDeserialize <GS_DetraccionAccionGetResult>((string)ViewState["accion"]);
                if (!string.IsNullOrEmpty(accion.NroConstancia))
                {
                    lblMensaje.Text = "Ya existe un pago registrado";
                }
                else
                {
                    var objInsert = new GS_DetraccionAccionGetResult
                    {
                        NroConstancia = rtbNroContancia.Text,
                        FechaPago     = dpFechaConstancia.SelectedDate.Value,
                        Op            = Convert.ToInt32(ViewState["op"].ToString())
                    };
                    objFinanzasWCF.Accion_Registrar(((Usuario_LoginResult)Session["Usuario"]).idEmpresa,
                                                    ((Usuario_LoginResult)Session["Usuario"]).codigoUsuario, objInsert);

                    //proceso de envio de correo
                    AgendaWCF.AgendaWCFClient AgendaClient = new AgendaWCF.AgendaWCFClient();
                    //recupera el correo

                    string idAgenda = ViewState["idAgenda"].ToString();
                    string serie    = ViewState["serie"].ToString();
                    string numero   = ViewState["numero"].ToString();

                    string fecha = objInsert.FechaPago.ToString();

                    List <GS_RecuperaCorreoAgendaResult> lista = AgendaClient.RecuperaCorreoAgenda(((Usuario_LoginResult)Session["Usuario"]).idEmpresa,
                                                                                                   ((Usuario_LoginResult)Session["Usuario"]).codigoUsuario, idAgenda).ToList();



                    string mensaje = @"
<html>
	<head>
	</head>
	<body>
		<table style='width: 700px; ' cellpadding='0' cellspacing='0'  >
			<tr>
				<td style='width: 25%;'>
					<img src='https://intranet.gruposilvestre.com.pe/IntranetGS/Images/Logos/grupo.png' alt='' height=80 />
				</td>
				<td style='width: 75%; font-size: 18pt; font-weight: bold;'>
					CONSTANCIA DE DETRACCI&Oacute;N
				</td>
			</tr>
			<tr>
				<td colspan='2' style='padding-top:20px;'>
					Estimado cliente, se ha generado la constancia de detracci&oacute;n n&uacute;mero {0} por la factura {1}. El registro de la constancia se realizó el día {2}.
				</td>
			</tr>
			<tr>
				<td colspan='2' style='padding-top:20px;'>
					Cualquier duda o consulta, no duden en comunicarse con nosotros al telefono 617-3300 o por correo electronico a [email protected]
				</td>
			</tr>
			<tr>
				<td colspan='2' style='padding-top:20px;'>	
					Atte.
				</td>
			</tr>
			<tr>
				<td colspan='2' style='padding-top:20px;'>	
					<strong>Grupo Silvestre</strong>
				</td>
			</tr>
		</table>
	</body>
</html>
";

                    //con diez ceros

                    int    largonumero   = numero.Length;
                    int    faltaceros    = 10 - largonumero;
                    int    cerosActuales = 0;
                    string completaceros = "";

                    if (faltaceros > 0)
                    {
                        while (cerosActuales < faltaceros)
                        {
                            completaceros += "0";
                            cerosActuales  = completaceros.Length;
                        }
                    }

                    string mail = "";

                    string formatMensaje = string.Format(mensaje, objInsert.NroConstancia, serie + "-" + completaceros + numero, fecha);

                    CorreoWCF.CorreoWCFClient CorreoClient = new CorreoWCF.CorreoWCFClient();
                    //Enviar el mensaje si se tiene mail
                    if (lista != null && lista.Count > 0)
                    {
                        mail = lista[0].email;

                        //CorreoClient.MerlinEnviarCorreo("*****@*****.**", "*****@*****.**", null, null, "Constancia de detracción", formatMensaje);
                        CorreoClient.MerlinEnviarCorreo(mail, mail, null, null, "Constancia de detracción", formatMensaje);
                    }

                    //ViewState["op"] = null;
                    ViewState.Clear();
                    ScriptManager.RegisterStartupScript(Page, this.GetType(), "mykey", "CloseAndRebind();", true);
                }
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }