protected void btnAgregarCampo_OnClick(object sender, EventArgs e) { try { if (txtDescripcionCampo.Text.Trim() == string.Empty) { throw new Exception("Debe especificar una descripcion"); } Regex rgx = new Regex("[a-zA-Z]"); if (!rgx.IsMatch(txtDescripcionCampo.Text.Trim())) { throw new Exception("La descripcion debe contener almenos un caracter Alfanumerico."); } if (divLongitudMinima.Visible) { if (txtLongitudMinima.Text.Trim() == string.Empty) { throw new Exception("Debe especificar una longitud minima"); } } if (divLongitudMinima.Visible && !divLongitudMaxima.Visible) { if (int.Parse(txtLongitudMinima.Text) >= 100) { throw new Exception("Debe especificar una longitud minima menor a 100"); } } if (divLongitudMaxima.Visible) { if (txtLongitudMaxima.Text.Trim() == string.Empty) { throw new Exception("Debe especificar una longitud maxima"); } } if (divLongitudMinima.Visible && divLongitudMaxima.Visible) { if (int.Parse(txtLongitudMinima.Text.Trim()) > int.Parse(txtLongitudMaxima.Text.Trim())) { throw new Exception("Longitud minima no puede ser mayor que longitud maxima"); } } if (divCatalgo.Visible) { if (ddlCatalogosCampo.SelectedIndex == BusinessVariables.ComboBoxCatalogo.IndexSeleccione) { throw new Exception("Debe especificar un catalogo"); } } if (divMoneda.Visible) { if (txtSimboloMoneda.Text.Trim() == string.Empty) { throw new Exception("Debe especificar una descripcion de moneda"); } } if (divValorMaximo.Visible) { if (txtValorMinimo.Text.Trim() == string.Empty) { throw new Exception("Debe especificar un valor minimo"); } if (txtValorMaximo.Text.Trim() == string.Empty) { throw new Exception("Debe especificar un valor maximo"); } if (double.Parse(txtValorMinimo.Text) > double.Parse(txtValorMaximo.Text)) { throw new Exception("El valor Minimo no debe ser mayor a valor Maximo"); } } if (divMascara.Visible) { if (txtMascara.Text.Trim() == string.Empty) { throw new Exception("Debe especificar un Formulario de Cliente"); } } Mascara tmpMascara = ((Mascara)Session["MascaraAlta"]); if (bool.Parse(hfAltaCampo.Value)) { if (tmpMascara.CampoMascara == null) { tmpMascara.CampoMascara = new List <CampoMascara>(); } if (tmpMascara.CampoMascara.Any(a => a.Descripcion == txtDescripcionCampo.Text.Trim())) { throw new Exception("Este campo ya existe."); } TipoCampoMascara tipoCampo = _servicioSistemaTipoCampoMascara.TipoCampoMascaraId(Convert.ToInt32(hfTipoCampo.Value)); Catalogos catalogo = null; if (tipoCampo.Id == (int)BusinessVariables.EnumeradoresKiiniNet.EnumTiposCampo.RadioBoton || tipoCampo.Id == (int)BusinessVariables.EnumeradoresKiiniNet.EnumTiposCampo.ListaDespledable || tipoCampo.Id == (int)BusinessVariables.EnumeradoresKiiniNet.EnumTiposCampo.CasillaDeVerificación) { catalogo = new ServiceCatalogosClient().ObtenerCatalogo(int.Parse(ddlCatalogosCampo.SelectedValue)); } tmpMascara.CampoMascara.Add(new CampoMascara { IdCatalogo = tipoCampo.Catalogo ? Convert.ToInt32(ddlCatalogosCampo.SelectedValue) : (int?)null, IdTipoCampoMascara = tipoCampo.Id, Multiple = tipoCampo.Multiple, CheckBox = tipoCampo.Checkbox, RadioButton = tipoCampo.RadioButton, EsArchivo = tipoCampo.UploadFile, Descripcion = txtDescripcionCampo.Text.Trim(), Requerido = chkRequerido.Checked, LongitudMinima = tipoCampo.Id == (int)BusinessVariables.EnumeradoresKiiniNet.EnumTiposCampo.Telefono ? int.Parse(tipoCampo.LongitudMaximaPermitida) : tipoCampo.Id == (int)BusinessVariables.EnumeradoresKiiniNet.EnumTiposCampo.CorreoElectronico ? int.Parse(tipoCampo.LongitudMaximaPermitida) : tipoCampo.LongitudMinima ? Convert.ToInt32(txtLongitudMinima.Text.Trim()) : tipoCampo.Mask ? 1 : (int?)null, LongitudMaxima = tipoCampo.Id == (int)BusinessVariables.EnumeradoresKiiniNet.EnumTiposCampo.Texto ? int.Parse(tipoCampo.LongitudMaximaPermitida) : tipoCampo.Id == (int)BusinessVariables.EnumeradoresKiiniNet.EnumTiposCampo.AdjuntarArchivo ? 3900 : tipoCampo.Id == (int)BusinessVariables.EnumeradoresKiiniNet.EnumTiposCampo.Telefono ? 10 : tipoCampo.Id == (int)BusinessVariables.EnumeradoresKiiniNet.EnumTiposCampo.CorreoElectronico ? 10 : tipoCampo.LongitudMaxima ? Convert.ToInt32(txtLongitudMaxima.Text.Trim()) : tipoCampo.Mask ? txtMascara.Text.Trim().Length : (int?)null, SimboloMoneda = tipoCampo.SimboloMoneda ? txtSimboloMoneda.Text.Trim() : null, ValorMinimo = tipoCampo.ValorMinimo ? decimal.Parse(txtValorMinimo.Text.Trim()) : (decimal?)null, ValorMaximo = tipoCampo.ValorMaximo ? decimal.Parse(txtValorMaximo.Text.Trim()) : (decimal?)null, MascaraDetalle = tipoCampo.Id == (int)BusinessVariables.EnumeradoresKiiniNet.EnumTiposCampo.Telefono ? "(99) 9999-9999" : tipoCampo.Mask ? txtMascara.Text.Trim() : null, TipoCampoMascara = tipoCampo }); } else { TipoCampoMascara tipoCampo = _servicioSistemaTipoCampoMascara.TipoCampoMascaraId(Convert.ToInt32(hfTipoCampo.Value)); Catalogos catalogo = null; if (tipoCampo.Id == (int)BusinessVariables.EnumeradoresKiiniNet.EnumTiposCampo.RadioBoton || tipoCampo.Id == (int)BusinessVariables.EnumeradoresKiiniNet.EnumTiposCampo.ListaDespledable || tipoCampo.Id == (int)BusinessVariables.EnumeradoresKiiniNet.EnumTiposCampo.CasillaDeVerificación) { catalogo = new ServiceCatalogosClient().ObtenerCatalogo(int.Parse(ddlCatalogosCampo.SelectedValue)); } tmpMascara.CampoMascara[int.Parse(hfCampoEditado.Value)].IdCatalogo = tipoCampo.Catalogo ? Convert.ToInt32(ddlCatalogosCampo.SelectedValue) : (int?)null; tmpMascara.CampoMascara[int.Parse(hfCampoEditado.Value)].Catalogos = catalogo; tmpMascara.CampoMascara[int.Parse(hfCampoEditado.Value)].IdTipoCampoMascara = tipoCampo.Id; tmpMascara.CampoMascara[int.Parse(hfCampoEditado.Value)].Descripcion = txtDescripcionCampo.Text.Trim(); tmpMascara.CampoMascara[int.Parse(hfCampoEditado.Value)].Requerido = chkRequerido.Checked; tmpMascara.CampoMascara[int.Parse(hfCampoEditado.Value)].LongitudMinima = tipoCampo.Id == (int)BusinessVariables.EnumeradoresKiiniNet.EnumTiposCampo.Telefono ? int.Parse(tipoCampo.LongitudMaximaPermitida) : tipoCampo.Id == (int)BusinessVariables.EnumeradoresKiiniNet.EnumTiposCampo.CorreoElectronico ? int.Parse(tipoCampo.LongitudMaximaPermitida) : tipoCampo.LongitudMinima ? Convert.ToInt32(txtLongitudMinima.Text.Trim()) : tipoCampo.Mask ? 1 : (int?)null; tmpMascara.CampoMascara[int.Parse(hfCampoEditado.Value)].LongitudMaxima = tipoCampo.Id == (int)BusinessVariables.EnumeradoresKiiniNet.EnumTiposCampo.Texto ? int.Parse(tipoCampo.LongitudMaximaPermitida) : tipoCampo.Id == (int)BusinessVariables.EnumeradoresKiiniNet.EnumTiposCampo.AdjuntarArchivo ? 3900 : tipoCampo.Id == (int)BusinessVariables.EnumeradoresKiiniNet.EnumTiposCampo.Telefono ? 10 : tipoCampo.Id == (int)BusinessVariables.EnumeradoresKiiniNet.EnumTiposCampo.CorreoElectronico ? 10 : tipoCampo.LongitudMaxima ? Convert.ToInt32(txtLongitudMaxima.Text.Trim()) : tipoCampo.Mask ? txtMascara.Text.Trim().Length : (int?)null; tmpMascara.CampoMascara[int.Parse(hfCampoEditado.Value)].SimboloMoneda = tipoCampo.SimboloMoneda ? txtSimboloMoneda.Text.Trim() : null; tmpMascara.CampoMascara[int.Parse(hfCampoEditado.Value)].ValorMinimo = tipoCampo.ValorMinimo ? decimal.Parse(txtValorMinimo.Text.Trim()) : (decimal?)null; tmpMascara.CampoMascara[int.Parse(hfCampoEditado.Value)].ValorMaximo = tipoCampo.ValorMaximo ? decimal.Parse(txtValorMaximo.Text.Trim()) : (decimal?)null; tmpMascara.CampoMascara[int.Parse(hfCampoEditado.Value)].MascaraDetalle = tipoCampo.Id == (int)BusinessVariables.EnumeradoresKiiniNet.EnumTiposCampo.Telefono ? "(99) 9999-9999" : tipoCampo.Mask ? txtMascara.Text.Trim() : null; tmpMascara.CampoMascara[int.Parse(hfCampoEditado.Value)].TipoCampoMascara = tipoCampo; } rptControles.DataSource = tmpMascara.CampoMascara; rptControles.DataBind(); Session["MascaraAlta"] = tmpMascara; LimpiarModalCampo(); ScriptManager.RegisterClientScriptBlock(Page, typeof(Page), "Script", "CierraPopup(\"#modalAgregarCampoMascara\");", true); } catch (Exception ex) { if (_lstError == null) { _lstError = new List <string>(); } _lstError.Add(ex.Message); Alerta = _lstError; } }