protected void Page_Load(object sender, EventArgs e) { if (Session["Rol"] != null) { if (Session["Rol"].ToString() != "Administrador") { Response.Redirect("Login.aspx"); } } else { Response.Redirect("Login.aspx"); } if (!IsPostBack) { ddlEmp.DataSource = Emprendimiento.busarEmpAagregarEval(); ddlEmp.DataTextField = "Titulo"; ddlEmp.DataValueField = "CodId"; ddlEmp.DataBind(); ddlEv.DataSource = Evaluador.buscarTodos(); ddlEv.DataTextField = "Nombre"; ddlEv.DataValueField = "IdEvaluador"; ddlEv.DataBind(); } }
protected void Login1_Authenticate(object sender, AuthenticateEventArgs e) { string username = Login1.UserName; string password = Login1.Password; string rol = Usuario.verificarUsuario(username, password); if (rol != "") { Session["Rol"] = rol; Session["Email"] = username; if (rol == "Postulante") { Session["CodEm"] = Integrante.buscarCodEm(username); } if (rol == "Evaluador") { Session["IdEvaluador"] = Evaluador.buscarIdEvaluador(username); } Response.Redirect("Inicio.aspx"); } else { lblMensaje.Text = "Los datos son incorrectos"; } }
public async Task <ActionResult <Evaluador> > PostEvaluadorItem(Evaluador item) { _context.EvaluadorItems.Add(item); await _context.SaveChangesAsync(); return(CreatedAtAction(nameof(GetEvaluadorItem), new { cedula = item.Cedula }, item)); }
public static bool EvaluarCondicion <T>(T objeto, Condicion condicion, Evaluador <T> evaluador, bool buscarEvaluadorGenerico = true) { return(EvaluarCondicion <T>(objeto, condicion, new List <Evaluador <T> >() { evaluador }, buscarEvaluadorGenerico)); }
private IList <IObjetoPuntuado <Direccion> > GetByEsquinaEnProvincia(string calle, string esquina, int provincia) { var list = new List <IObjetoPuntuado <Direccion> >(); var tokenizer = Tokenizer.FromString(calle, 3); var tokenizer2 = Tokenizer.FromString(esquina, 3); var evaluador = new Evaluador(tokenizer, tokenizer, new IEvaluator[0]); var evaluador2 = new Evaluador(tokenizer2, tokenizer2, new IEvaluator[0]); evaluador.Evaluators.Add(new PuntajeEvaluator()); evaluador2.Evaluators.Add(new PuntajeEvaluator()); var num = evaluador.Evaluar(); var num2 = evaluador2.Evaluar(); var list2 = (provincia < 0) ? DAOFactory.PoligonalDAO.GetByEsquinaSinProvincia(tokenizer.ToArray(), tokenizer2.ToArray()) : DAOFactory.PoligonalDAO.GetByEsquinaEnProvincia(tokenizer.ToArray(), tokenizer2.ToArray(), provincia); foreach (var current in list2) { evaluador.Option = Tokenizer.Create(current.Poligonal); evaluador2.Option = Tokenizer.Create(current.Esquina); var num3 = evaluador.Evaluar(); var num4 = evaluador2.Evaluar(); if (num3 > num / 2.0 && num4 > num2 / 2.0) { list.Add(new ObjetoPuntuado <Direccion>(num3 + num4, current)); } } list.Sort(); return(list); }
private static IList <T> Nomenclar <T>(Evaluador eval, Tokenizer tokens, IEnumerable <T> options, out double puntos) where T : ITokenizable { List <T> list = new List <T>(); double num = 0.0; foreach (T current in options) { double num2 = eval.Evaluar(Tokenizer.Create(current)); if (num2 != 0.0 && num2 >= num) { if (num2 == num) { list.Add(current); } else { if (num2 > num) { list.Clear(); list.Add(current); num = num2; } } } } puntos = num; return(list); }
static void Expresion() { Evaluador mat = new Evaluador(); string exp; Console.WriteLine("Ingrese la expresion matematica: "); exp = Console.ReadLine(); mat.evaluar(exp); }
private static IList <T> NomenclarAmbiguo <T>(Tokenizer tokens, IEnumerable <T> options, out double puntos) where T : ITokenizable { Evaluador eval = new Evaluador(tokens, new IEvaluator[] { new WordMatchEvaluator(), new StartMatchEvaluator() }); return(Cleaning.Nomenclar <T>(eval, tokens, options, out puntos)); }
public List <Evaluador> ObtenerPosiblesEvaluadores(CentroTrabajo centro) { SqlConnection oCon = new SqlConnection(cadena); SqlCommand oCmd = new SqlCommand("dbo.getEvaluadoresPosiblesCentroTrabajo", oCon); oCmd.CommandType = CommandType.StoredProcedure; oCmd.Parameters.AddWithValue("@idCentro", centro.IDGlobal); SqlDataReader dr; List <Evaluador> lst = null; Evaluador evaluador = null; try { oCon.Open(); dr = oCmd.ExecuteReader(); lst = new List <Evaluador>(); while (dr.Read()) { evaluador = new Evaluador(); evaluador.InfoEmpleado.IDGral = Convert.ToInt32(dr["IdGral"]); evaluador.InfoEmpleado.Cve = Convert.ToInt32(dr["Empleado"]); evaluador.InfoEmpleado.Nombre = dr["Nombre"].ToString(); evaluador.InfoEmpleado.Paterno = dr["ApellidoPaterno"].ToString(); evaluador.InfoEmpleado.Materno = dr["ApellidoMaterno"].ToString(); evaluador.InfoEmpleado.RFC = dr["RFC"].ToString(); evaluador.InfoEmpleado.IdFuncion = dr["Funcion"].ToString(); Models.Cat.Asignacion asignacion = new Models.Cat.Asignacion(); asignacion.InfoFuncionEvaluadora.Denominacion = dr["DenominacionPlaza"].ToString(); asignacion.InfoFuncionEvaluadora.IdFuncion = dr["Funcion"].ToString(); asignacion.InfoFuncionEvaluadora.Nivel = dr["NivelSalarial"].ToString(); asignacion.Inicio = dr["Inicio"].ToString(); asignacion.Fin = dr["Fin"].ToString(); asignacion.Dias = Convert.ToInt32(dr["Dias"]); asignacion.InfoCentroTrabajo.IDGlobal = centro.IDGlobal; asignacion.InfoCentroTrabajo.IdUR = Convert.ToInt32(dr["idUR"]); asignacion.InfoCentroTrabajo.IdArea = Convert.ToInt32(dr["idArea"]); asignacion.InfoCentroTrabajo.IdEstado = Convert.ToInt32(dr["idEstado"]); asignacion.InfoCentroTrabajo.IdMunicipio = Convert.ToInt32(dr["idMunicipio"]); asignacion.InfoCentroTrabajo.IdCT = Convert.ToInt32(dr["idCentroTrabajo"]); asignacion.InfoCentroTrabajo.UnidadResponsable = dr["UnidadResponsable"].ToString(); asignacion.InfoCentroTrabajo.Area = dr["Area"].ToString(); asignacion.InfoCentroTrabajo.Municipio = dr["Municipio"].ToString(); asignacion.InfoCentroTrabajo.CTrabajo = dr["CentroDeTrabajo"].ToString(); evaluador.Asignaciones.Add(asignacion); lst.Add(evaluador); } oCon.Close(); } catch (Exception ex) { lst = null; } return(lst); }
public async Task <IActionResult> Put(string cedula, Evaluador item) { if (cedula != item.Cedula) { return(BadRequest()); } _context.Entry(item).State = EntityState.Modified; await _context.SaveChangesAsync(); return(NoContent()); }
protected void BtNAgregar_Click(object sender, EventArgs e) { try { string cedula = TxTCedula.Text; string nombre = TxTNombre.Text; string email = TxTEmail.Text; string telefono = TxTTelefono.Text; int calificacion = 0; int.TryParse(TxTCalificacion.Text, out calificacion); string pasword = TxTPasword.Text; Evaluador ev = new Evaluador { Cedula = cedula, Nombre = nombre, Email = email, Telefono = telefono, Calificaccion = calificacion, }; Usuario us = new Usuario { Email = email, Pasword = pasword, Tipo = "evaluador", }; if (us.Insertar()) { if (ev.Insertar()) { LbLMensaje.Text = "Alta realizada con exito"; } } else { LbLMensaje.Text = "No se pudo dar de Alta del Evaluador"; } } catch (Exception ex) { LbLMensaje.Text = ex.Message; } finally { //LblMensaje.Text="cierro conexiones, estoy en finally"; } }
private void Compile() { txtLog.Clear(); var evaluator = new Evaluador(); var diagnostics = evaluator.Evaluar(txtCode.Text); this.SymbolsTable = evaluator.TablaSimbolos; foreach (var diagnostic in diagnostics) { txtLog.Text += diagnostic + Environment.NewLine; } ShowSymbolsTable(); var presentadorCuadruplos = new PersentadorCuadruplos(evaluator.TablaSintaxis); MostrarTablaCuadruplos(presentadorCuadruplos.Procesar()); }
//boton de EJECUTAR private void button1_Click(object sender, EventArgs e) { //limpiamos el textbox de salida this.richTextBox3.Text = ""; //limpiamos el contenido de la singleton MasterClass.Instance.clearMistakes(); MasterClass.Instance.clear(); Evaluador evaluator = new Evaluador(); evaluator.analizar(this.richTextBox1.Text); //MessageBox.Show(MasterClass.Instance.getMessages()+"\nCantidad de instrucciones: "+MasterClass.Instance.getCantidad()); MasterClass.Instance.ejecutar(); MasterClass.Instance.ifMistakes(); MasterClass.Instance.showAllErrors(); this.richTextBox3.Text = MasterClass.Instance.getMessages(); }
public IList <PartidoVO> GetPartidoEnProvinciaId(string nombre, int idProvincia) { var ambos = Tokenizer.FromString(nombre, 1); var evaluador = new Evaluador(ambos, new IEvaluator[] { new PuntajeEvaluator() }); var num = evaluador.Evaluar(); var byProvinciaId = DAOFactory.PartidoDAO.GetByProvinciaId(idProvincia); var list = new List <IObjetoPuntuado <Partido> >(); foreach (var current in byProvinciaId) { var num2 = evaluador.Evaluar(Tokenizer.Create(current)); if (num2 > num / 2.0) { list.Add(new ObjetoPuntuado <Partido>(num2, current)); } } list.Sort(); var list2 = new List <PartidoVO>(list.Count); list2.AddRange(list.Select(current2 => new PartidoVO(current2.Objeto))); return(list2); }
public IList <ProvinciaVO> GetProvincias(string nombre) { var ambos = Tokenizer.FromString(nombre, 0); var evaluador = new Evaluador(ambos, new IEvaluator[] { new PuntajeEvaluator() }); var num = evaluador.Evaluar(); var todas = DAOFactory.ProvinciaDAO.GetTodas(); var list = new List <IObjetoPuntuado <Provincia> >(); foreach (var current in todas) { var num2 = evaluador.Evaluar(Tokenizer.Create(current)); if (num2 > num / 2.0) { list.Add(new ObjetoPuntuado <Provincia>(num2, current)); } } list.Sort(); var list2 = new List <ProvinciaVO>(list.Count); list2.AddRange(list.Select(current2 => new ProvinciaVO(current2.Objeto))); return(list2); }
private IList <IObjetoPuntuado <Direccion> > GetByAlturaEnPartidoProvincia(string calle, int altura, string partido, int provincia) { var list = new List <IObjetoPuntuado <Direccion> >(); var tokenizer = Tokenizer.FromString(calle, 3); var tokenizer2 = Tokenizer.FromString(partido, 1); var evaluador = new Evaluador(tokenizer, tokenizer, new IEvaluator[0]); evaluador.Evaluators.Add(new PuntajeEvaluator()); var evaluador2 = new Evaluador(tokenizer2, tokenizer2, new IEvaluator[0]); evaluador2.Evaluators.Add(new PuntajeEvaluator()); var num = evaluador.Evaluar(); var num2 = evaluador2.Evaluar(); var list2 = (provincia < 0) ? DAOFactory.PoligonalDAO.GetByAlturaSinProvincia(tokenizer.ToArray(), altura) : DAOFactory.PoligonalDAO.GetByAlturaEnProvincia(tokenizer.ToArray(), altura, provincia); foreach (var current in list2) { evaluador.Option = Tokenizer.Create(current.Poligonal); evaluador2.Option = Tokenizer.Create(current.Poligonal.Partido); var num3 = evaluador.Evaluar(); var num4 = evaluador2.Evaluar(); foreach (var current2 in current.Poligonal.Partido.Localidades) { evaluador2.Option = Tokenizer.Create(current2); var num5 = evaluador2.Evaluar(); if (num5 > num4) { num4 = num5; } } if (num3 > num / 2.0 && num4 > num2 / 2.0) { list.Add(new ObjetoPuntuado <Direccion>(num3 + num4, current)); } } list.Sort(); return(list); }
protected void rptEvaluadoresPosibles_ItemCommand(object source, RepeaterCommandEventArgs e) { obtenerSesion(); //Encontrar el elemento en el DataSet <- Esta es la clave, ¿cómo lo encuentro? //agregarlo a la lista de sesión Evaluador evaluador = (Evaluador)e.Item.DataItem; if (e.CommandName == "seleccionado") { lst.Add(evaluador); } else { Evaluador eval = lst.Find(x => x.InfoEmpleado.Cve == evaluador.InfoEmpleado.Cve && x.Asignaciones[0].Dias == evaluador.Asignaciones[0].Dias && x.Asignaciones[0].Inicio == evaluador.Asignaciones[0].Inicio && x.Asignaciones[0].Fin == evaluador.Asignaciones[0].Fin); lst.RemoveAt(lst.IndexOf(eval)); } subirSesion(lst); DiasTotales(); }
protected void Page_Load(object sender, EventArgs e) { if (Session["Rol"] != null) { if (Session["Rol"].ToString() != "Evaluador") { Response.Redirect("Login.aspx"); } } else { Response.Redirect("Login.aspx"); } plcEvaluar.Visible = false; if (!IsPostBack) { if (Session["IdEvaluador"] != null) { int idEvaluador = Convert.ToInt32(Session["IdEvaluador"].ToString()); List <Emprendimiento> empAEvaluar = Evaluador.buscarEmpDeEvaluador(idEvaluador); if (empAEvaluar.Count == 0) { lblMensajeDrop.Text = " No tiene evaluaciones pendinetes"; } else { ddlEmp.DataSource = empAEvaluar; ddlEmp.DataTextField = "Titulo"; ddlEmp.DataValueField = "CodId"; ddlEmp.DataBind(); plhSelEmp.Visible = true; } } } }
protected void btnAgregar_Click(object sender, EventArgs e) { string mensaje = "No se pudo agregar"; int CodIdEmp = Convert.ToInt32(ddlEmp.SelectedValue); int idEvaluador = Convert.ToInt32(ddlEv.SelectedValue); if (Evaluador.verificarEvaluador(idEvaluador, CodIdEmp)) { Evaluador ev = new Evaluador(); ev.IdEvaluador = idEvaluador; if (ev.agregarEmprendimiento(CodIdEmp)) { mensaje = "Se agrego correctamente"; } } else { mensaje += "\n El evaluador ya se encuentra en este emprendimiento"; } lblMensaje.Text = mensaje; }
public List <IObjetoPuntuado <Direccion> > GetDireccionSmartSearch(string calle, int altura, string esquina, string partido, string provincia, double lat, double lon) { var flag = string.IsNullOrEmpty(partido.Trim()); var flag2 = string.IsNullOrEmpty(provincia.Trim()); var flag3 = altura > 0; var list = new List <IObjetoPuntuado <Direccion> >(); var list2 = new List <bool>(); var list3 = new List <bool>(); var tokenizer = Tokenizer.FromString(calle, 3); var tokenizer2 = flag3 ? null : Tokenizer.FromString(esquina, 3); var tokenizer3 = flag ? null : Tokenizer.FromString(partido, 1); var tokenizer4 = flag2 ? null : Tokenizer.FromString(provincia, 0); var evaluador = new Evaluador(tokenizer, tokenizer, new IEvaluator[0]); var evaluador2 = flag3 ? null : new Evaluador(tokenizer2, tokenizer2, new IEvaluator[0]); var evaluador3 = flag ? null : new Evaluador(tokenizer3, tokenizer3, new IEvaluator[0]); var evaluador4 = flag2 ? null : new Evaluador(tokenizer4, tokenizer4, new IEvaluator[0]); evaluador.Evaluators.Add(new PuntajeEvaluator()); if (!flag3) { evaluador2.Evaluators.Add(new PuntajeEvaluator()); } if (!flag) { evaluador3.Evaluators.Add(new PuntajeEvaluator()); } if (!flag2) { evaluador4.Evaluators.Add(new PuntajeEvaluator()); } var num = evaluador.Evaluar(); var num2 = flag3 ? 0.0 : evaluador2.Evaluar(); var num3 = flag ? 0.0 : evaluador3.Evaluar(); var num4 = flag2 ? 0.0 : evaluador4.Evaluar(); var direccion = DAOFactory.PoligonalDAO.GetDireccion(tokenizer.ToArray(), altura, flag3 ? null : tokenizer2.ToArray(), flag ? null : tokenizer3.ToArray(), flag2 ? null : tokenizer4.ToArray(), lat, lon); foreach (var current in direccion) { evaluador.Option = Tokenizer.Create(current.Poligonal); if (!flag3) { evaluador2.Option = Tokenizer.Create(current.Esquina); } if (!flag) { evaluador3.Option = Tokenizer.Create(current.Poligonal.Partido); } if (!flag2) { evaluador4.Option = Tokenizer.Create(current.Poligonal.Partido.Provincia); } var num5 = evaluador.Evaluar(); var num6 = flag3 ? 0.0 : evaluador2.Evaluar(); var num7 = flag ? 0.0 : evaluador3.Evaluar(); var num8 = flag2 ? 0.0 : evaluador4.Evaluar(); if (!flag) { foreach (var current2 in current.Poligonal.Partido.Localidades) { evaluador3.Option = Tokenizer.Create(current2); var num9 = evaluador3.Evaluar(); if (num9 > num7) { num7 = num9; } } } if (num5 > num / 2.0 && (flag3 || num6 > num2 / 2.0) && (flag || num7 > num3 / 2.0) && (flag2 || num8 > num4 / 2.0)) { list.Add(new ObjetoPuntuado <Direccion>(num5 + num6 + num7 + num8, current)); list2.Add(num4 > 0.0 && num8 == num4); list3.Add(num3 > 0.0 && num7 == num3); } } return(list); }
public static bool EvaluarCondicion(object objeto, Condicion condicion, Evaluador <object> evaluador, bool buscarEvaluadorGenerico = true) { return(EvaluarCondicion <object>(objeto, condicion, evaluador, buscarEvaluadorGenerico)); }
protected void btnIngresar_Click(object sender, EventArgs e) { string email = txtEmail.Text; string contrasena = txtContrasena.Text; string rol = ""; string mensaje = "Error al dar de alta"; if (rbtAdmin.Checked) { rol = "Administrador"; if (email != "" && contrasena.Length >= 8 && rol != "") { if (Usuario.buscarPorEmail(email) == null) { Usuario u = new Usuario { Email = email, Contrasena = contrasena, Rol = rol }; if (u.insertar()) { mensaje = "Se dio de alta correctamente"; } } else { mensaje += "\n El usuario " + email + " ya existe."; } } else { mensaje += "\n Ingrese datos correctamente"; } } else { if (rbtEvaluador.Checked) { rol = "Evaluador"; string cedula = txtCedula.Text; string nombre = txtNombre.Text; string telefono = txtTelefono.Text; int calificacion = -1; if (txtCalificacion.Text != "") { calificacion = Convert.ToInt32(txtCalificacion.Text); } if (email != "" && contrasena.Length >= 8 && rol != "" && cedula != "" && nombre != "" && telefono != "" && calificacion >= 1 && calificacion <= 4) { if (Usuario.buscarPorEmail(email) == null) { Evaluador ev = new Evaluador { Email = email, Contrasena = contrasena, Rol = rol, Cedula = cedula, Nombre = nombre, Telefono = telefono, Calificacion = calificacion }; if (ev.insertar()) { mensaje = "Se dio de alta correctamente"; } } else { mensaje += "\n El usuairio " + email + " ya existe"; } } else { mensaje += "\n Ingrese datos correctamente"; } } } lblMensaje.Text = mensaje; }
public override void exportarRolAWord(DocumentBuilder docBuilder, DocumentoInstanciaXbrlDto instancia, IndiceReporteDTO rolAExportar, ReporteXBRLDTO estructuraReporte) { // docBuilder.CurrentSection.PageSetup.Orientation = Orientation.Portrait; docBuilder.CurrentSection.PageSetup.Orientation = Orientation.Portrait; docBuilder.CurrentSection.PageSetup.PaperSize = PaperSize.Letter; docBuilder.CurrentSection.PageSetup.LeftMargin = 40; docBuilder.CurrentSection.PageSetup.RightMargin = 40; // escribirEncabezado(docBuilder, instancia, estructuraReporte, true); imprimirTituloRol(docBuilder, rolAExportar); var lista = new List <ConceptoReporteDTO>(); var lista2 = new List <ConceptoReporteDTO>(); var lista3 = new List <ConceptoReporteDTO>(); HechoReporteDTO hecho = null; foreach (ConceptoReporteDTO concepto in estructuraReporte.Roles[rolAExportar.Rol]) { if (concepto.Hechos != null) { foreach (String llave in concepto.Hechos.Keys) { hecho = concepto.Hechos[llave]; if ((hecho != null && !String.IsNullOrWhiteSpace(hecho.Valor))) { if (!ConceptoHiper.Contains(concepto.IdConcepto)) { escribirConceptoEnTablaNota(docBuilder, estructuraReporte, hecho, concepto); } string tipoNumerico = ObtenertipoDato(concepto, TIPO_DATO_MONETARY); if (concepto.TipoDato == tipoNumerico && concepto.IdConcepto != ID_Importe && concepto.IdConcepto != ID_IVA && concepto.IdConcepto != ID_Total) { lista.Add(concepto); banderahecho = 1; } else if (banderahecho == 1) { PintaTabla(docBuilder, instancia, rolAExportar, estructuraReporte, lista); banderahecho = 0; lista.Clear(); } string tipoNoNegativo = ObtenertipoDato(concepto, TIPO_DATO_NoNEGATIVO); if (concepto.TipoDato == tipoNoNegativo) { lista2.Add(concepto); banderahecho = 2; } else if (banderahecho == 2) { PintaTabla(docBuilder, instancia, rolAExportar, estructuraReporte, lista2); banderahecho = 0; lista2.Clear(); } string tipoDecimal = ObtenertipoDato(concepto, TIPO_DATO_DECIMAL); if (concepto.TipoDato == tipoNoNegativo) { lista3.Add(concepto); banderahecho = 3; } else if (banderahecho == 3) { PintaTabla(docBuilder, instancia, rolAExportar, estructuraReporte, lista3); banderahecho = 0; lista3.Clear(); } string conceptoAdosColumnas = ObtenertipoDato(concepto, TIPO_DATO_SI_NO); if (concepto.TipoDato == conceptoAdosColumnas || concepto.IdConcepto == ID_Tipo_Oferta || concepto.IdConcepto == ID_Denominacion_moneda || concepto.IdConcepto == ID_Pesos || concepto.IdConcepto == ID_Pesos1) { escribirADosColumnasConceptoValor(docBuilder, concepto.IdConcepto, rolAExportar, estructuraReporte); } } } if (hipercubosSerie.Contains(concepto.IdConcepto)) { docBuilder.Writeln(); var conceptoActual = concepto; string[] d = concepto.IdConcepto.Split(new string[] { "Abstract" }, StringSplitOptions.None); string ConceptoHipercubo = (d[0]); PintaTablaDimensionSerie(docBuilder, ConceptoHipercubo, instancia, rolAExportar, estructuraReporte, conceptoActual); } else if (hipercubosExist.Contains(concepto.IdConcepto)) { docBuilder.Writeln(); string[] d = concepto.IdConcepto.Split(new string[] { "Abstract" }, StringSplitOptions.None); string ConceptoHipercubo = (d[0]); PintaTablaDimensionExplicita(docBuilder, ConceptoHipercubo, instancia, rolAExportar, estructuraReporte); } } } banderahecho = 0; Evaluador.Clear(); ConceptoHiper.Clear(); }
private void PintaTablaDimensionSerie(DocumentBuilder docBuilder, String valor, DocumentoInstanciaXbrlDto instancia, IndiceReporteDTO rolAExportar, ReporteXBRLDTO estructuraReporte, ConceptoReporteDTO concepto) { docBuilder.Writeln(); // var listaConseptosReportes = estructuraReporte.Hipercubos; foreach (var dato in estructuraReporte.Hipercubos) { var variable = dato; string[] d = variable.Key.Split(new string[] { "Table" }, StringSplitOptions.None); string conceptoHipercuboTable = (d[0]); if (conceptoHipercuboTable == valor && !Evaluador.Contains(variable.Key)) { ConceptoReporteDTO primerConcepto = null; if (!estructuraReporte.Roles.ContainsKey(rolAExportar.Rol)) { throw new IndexOutOfRangeException("No existe el rol [" + rolAExportar.Rol + "] dentro del listado de roles del reporte."); } if (estructuraReporte.Roles.ContainsKey(rolAExportar.Rol)) { if (!concepto.Abstracto) { primerConcepto = concepto; break; } } var hipercubo = variable; Table tablaActual = docBuilder.StartTable(); Color colorTitulo = Color.FromArgb(ColorTituloTabla[0], ColorTituloTabla[1], ColorTituloTabla[2]); docBuilder.ParagraphFormat.SpaceAfter = 0; docBuilder.ParagraphFormat.SpaceBefore = 2; //docBuilder.InsertCell(); // docBuilder.EndRow(); docBuilder.CellFormat.Shading.BackgroundPatternColor = colorTitulo; docBuilder.Font.Color = Color.White; docBuilder.Font.Size = TamanioLetraContenidoTabla; docBuilder.InsertCell(); docBuilder.CellFormat.Shading.BackgroundPatternColor = colorTitulo; docBuilder.CellFormat.PreferredWidth = PreferredWidth.Auto; docBuilder.Font.Color = Color.White; establecerFuenteTituloCampo(docBuilder); docBuilder.Font.Size = TamanioLetraTituloTabla; docBuilder.Write("Serie [Eje]"); docBuilder.CellFormat.HorizontalMerge = CellMerge.None; if (hipercubo.Value.Titulos.Count > 0) { for (var indexTitulo = 0; indexTitulo < hipercubo.Value.Titulos.Count; indexTitulo++) { var titulo = hipercubo.Value.Titulos[indexTitulo]; docBuilder.InsertCell(); docBuilder.Write(titulo); } docBuilder.EndRow(); } establecerFuenteTituloCampo(docBuilder); docBuilder.Font.Size = TamanioLetraTituloTabla; int fila = 0; if (concepto.Abstracto) { fila = +1; for (int iCell = 0; iCell < fila; iCell++) { docBuilder.InsertCell(); docBuilder.ParagraphFormat.Alignment = ParagraphAlignment.Left; } } if (concepto.Abstracto) { docBuilder.Bold = true; docBuilder.Font.Color = Color.White; docBuilder.CellFormat.Shading.BackgroundPatternColor = colorTitulo; docBuilder.ParagraphFormat.LeftIndent = (concepto.Tabuladores < 0 ? concepto.Tabuladores : 0); docBuilder.ParagraphFormat.Alignment = ParagraphAlignment.Left; docBuilder.Write(concepto.Valor); docBuilder.InsertCell(); docBuilder.EndRow(); // tituloAbstracto.Add(concepto.Valor); } else { docBuilder.Bold = false; } docBuilder.CellFormat.Shading.BackgroundPatternColor = Color.White; docBuilder.CellFormat.PreferredWidth = PreferredWidth.Auto; docBuilder.Font.Color = Color.Black; docBuilder.Bold = false; foreach (var idConcepto in hipercubo.Value.Hechos.Keys) { var matrizPlantillaContexto = hipercubo.Value.Hechos[idConcepto]; docBuilder.InsertCell(); var nombreConcepto = DesgloseDeCreditosHelper.obtenerEtiquetaDeConcepto(instancia.Taxonomia, idConcepto, "es", ReporteXBRLUtil.ETIQUETA_DEFAULT); docBuilder.Write(nombreConcepto); ConceptoHiper.Add(idConcepto); foreach (var idPlantillaContexto in matrizPlantillaContexto.Keys) { docBuilder.CellFormat.WrapText = true; docBuilder.ParagraphFormat.Alignment = ParagraphAlignment.Left; var listaHechos = matrizPlantillaContexto[idPlantillaContexto]; for (var indexHecho = 0; indexHecho < listaHechos.Length; indexHecho++) { var hecho = listaHechos[indexHecho]; var valorHecho = hecho.Valor; docBuilder.InsertCell(); if (hecho.NoEsNumerico) { docBuilder.CellFormat.WrapText = true; docBuilder.ParagraphFormat.Alignment = ParagraphAlignment.Left; } else { docBuilder.CellFormat.WrapText = false; docBuilder.ParagraphFormat.Alignment = ParagraphAlignment.Right; } if ((hecho != null && !String.IsNullOrWhiteSpace(hecho.Valor)) && instancia.Taxonomia.ConceptosPorId.ContainsKey(hecho.IdConcepto)) { var conceptoHecho = instancia.Taxonomia.ConceptosPorId[hecho.IdConcepto]; if (conceptoHecho.TipoDato.Contains(TIPO_DATO_TEXT_BLOCK)) { WordUtil.InsertHtml(docBuilder, hecho.IdConcepto + ":" + hecho.Id, PARRAFO_HTML_NOTAS_Texblock + valorHecho + "</p>", false, true); //docBuilder.InsertHtml(PARRAFO_HTML_NOTAS_Texblock + limpiarBloqueTexto(valorHecho) + "</p>", true); } else { docBuilder.Writeln(valorHecho); } } } } docBuilder.EndRow(); } establecerBordesGrisesTabla(tablaActual); docBuilder.EndTable(); docBuilder.Writeln(); docBuilder.Writeln(); Evaluador.Add(variable.Key); break; } } }
private void PintaTablaDimensionExplicita(DocumentBuilder docBuilder, String valor, DocumentoInstanciaXbrlDto instancia, IndiceReporteDTO rolAExportar, ReporteXBRLDTO estructuraReporte) { docBuilder.Writeln(); foreach (var dato in estructuraReporte.Hipercubos) { if (dato.Value.Hechos.Count > 0) { var variable = dato; // modificaciones en la condicion para obtner un hipercubo exlicito string[] d = variable.Key.Split(new string[] { "Table" }, StringSplitOptions.None); string conceptoHipercuboTable = (d[0]); if (conceptoHipercuboTable == valor && !Evaluador.Contains(variable.Key)) { var hipercubo = variable; docBuilder.InsertBreak(BreakType.PageBreak); Table tablaActual = docBuilder.StartTable(); Color colorTitulo = Color.FromArgb(ColorTituloTabla[0], ColorTituloTabla[1], ColorTituloTabla[2]); docBuilder.ParagraphFormat.SpaceAfter = 0; docBuilder.ParagraphFormat.SpaceBefore = 2; //docBuilder.InsertCell(); // docBuilder.EndRow(); // Formatos de celdas que le da el color de fondo de los titulos de la tabla que se crea docBuilder.CellFormat.Shading.BackgroundPatternColor = colorTitulo; docBuilder.Font.Color = Color.White; docBuilder.Font.Size = TamanioLetraContenidoTabla; // docBuilder.InsertCell(); foreach (var idConcepto in hipercubo.Value.Hechos.Keys) { var matrizPlantillaContexto = hipercubo.Value.Hechos[idConcepto]; docBuilder.InsertCell(); var nombreConcepto = DesgloseDeCreditosHelper .obtenerEtiquetaDeConcepto(instancia.Taxonomia, idConcepto, "es", ReporteXBRLUtil.ETIQUETA_DEFAULT); docBuilder.Write(nombreConcepto); } docBuilder.EndRow(); docBuilder.CellFormat.Shading.BackgroundPatternColor = Color.White; docBuilder.CellFormat.PreferredWidth = PreferredWidth.Auto; docBuilder.Font.Color = Color.Black; var cantidadCeldasVacias = hipercubo.Value.Hechos.Count - 1; if (hipercubo.Value.Hechos.Count == 0) { return; } foreach (var idPlantillaContexto in hipercubo.Value.Utileria.configuracion.PlantillasContextos.Keys) { var plantilla = hipercubo.Value.Utileria.configuracion.PlantillasContextos[idPlantillaContexto]; var miembroPlantilla = plantilla.ValoresDimension[0]; var nombreMiembro = DesgloseDeCreditosHelper.obtenerEtiquetaDeConcepto(instancia.Taxonomia, miembroPlantilla.IdItemMiembro, "es", ReporteXBRLUtil.ETIQUETA_DEFAULT); /* docBuilder.CellFormat.Shading.BackgroundPatternColor = Color.LightGray; * docBuilder.CellFormat.PreferredWidth = PreferredWidth.Auto; * docBuilder.Font.Color = Color.Black;*/ docBuilder.CellFormat.Shading.BackgroundPatternColor = colorTitulo; docBuilder.Font.Color = Color.White; docBuilder.Font.Size = TamanioLetraContenidoTabla; docBuilder.InsertCell(); docBuilder.Write(nombreMiembro); if (cantidadCeldasVacias > 0) { for (var indexMiembro = 0; indexMiembro < cantidadCeldasVacias; indexMiembro++) { docBuilder.InsertCell(); docBuilder.Write(String.Empty); } docBuilder.EndRow(); } var countType = 0; docBuilder.CellFormat.Shading.BackgroundPatternColor = Color.White; docBuilder.CellFormat.PreferredWidth = PreferredWidth.Auto; docBuilder.Font.Color = Color.Black; docBuilder.Bold = false; foreach (var idConcepto in hipercubo.Value.Hechos.Keys) { var matrizPlantillaContexto = hipercubo.Value.Hechos[idConcepto]; if (matrizPlantillaContexto.ContainsKey(idPlantillaContexto)) { countType = matrizPlantillaContexto[idPlantillaContexto].Length; } else { LogUtil.Error("No se encontro la definición para la plantilla de contexto:" + idPlantillaContexto); } break; } Boolean dimensiones = false; for (var indexType = 0; indexType < countType; indexType++) { if (indexType > 0) { dimensiones = true; } docBuilder.ParagraphFormat.Alignment = ParagraphAlignment.Left; foreach (var idConcepto in hipercubo.Value.Hechos.Keys) { var matrizPlantillaContexto = hipercubo.Value.Hechos[idConcepto]; ConceptoHiper.Add(idConcepto); var listaHechos = matrizPlantillaContexto[idPlantillaContexto]; if (listaHechos != null) { var hecho = listaHechos[indexType]; var valorHecho = hecho.Valor; if (dimensiones) { docBuilder.EndRow(); docBuilder.InsertCell(); dimensiones = false; } else { docBuilder.InsertCell(); } if (hecho.NoEsNumerico) { docBuilder.CellFormat.WrapText = true; docBuilder.ParagraphFormat.Alignment = ParagraphAlignment.Left; } else { docBuilder.CellFormat.WrapText = false; docBuilder.ParagraphFormat.Alignment = ParagraphAlignment.Right; } if ((hecho != null && !String.IsNullOrWhiteSpace(hecho.Valor))) { docBuilder.Write(valorHecho); } } } } docBuilder.RowFormat.AllowBreakAcrossPages = true; docBuilder.RowFormat.HeadingFormat = false; if (countType > 0) { docBuilder.EndRow(); } } establecerBordesGrisesTabla(tablaActual); docBuilder.EndTable(); docBuilder.Writeln(); Evaluador.Add(variable.Key); } } } }
public override void exportarRolAWord(DocumentBuilder docBuilder, DocumentoInstanciaXbrlDto instancia, IndiceReporteDTO rolAExportar, ReporteXBRLDTO estructuraReporte) { docBuilder.CurrentSection.PageSetup.Orientation = Orientation.Portrait; docBuilder.CurrentSection.PageSetup.PaperSize = PaperSize.Letter; docBuilder.CurrentSection.PageSetup.LeftMargin = 40; docBuilder.CurrentSection.PageSetup.RightMargin = 40; Idioma = estructuraReporte.Lenguaje; escribirEncabezado(docBuilder, instancia, estructuraReporte, true); //Titulo rol imprimirTituloRol(docBuilder, rolAExportar); HechoReporteDTO hecho = null; ConceptoHiper.Add(""); foreach (ConceptoReporteDTO concepto in estructuraReporte.Roles[rolAExportar.Rol]) { if (ConceptosHipercubos.ContainsKey(concepto.IdConcepto)) { continue; } if (concepto.Hechos != null) { foreach (String llave in concepto.Hechos.Keys) { hecho = concepto.Hechos[llave]; if ((hecho != null && !String.IsNullOrWhiteSpace(hecho.Valor))) { if (!ConceptoHiper.Contains(concepto.IdConcepto)) { //Escribe titulo campo escribirConceptoEnTablaNota(docBuilder, estructuraReporte, hecho, concepto); } } } } string conceptoAdosColumnas = ObtenertipoDato(concepto, TIPO_DATO_SI_NO); if (concepto.TipoDato != null && (concepto.TipoDato == conceptoAdosColumnas || concepto.Numerico)) { EscribirADosColumnasConceptoValor(docBuilder, concepto.IdConcepto, rolAExportar, estructuraReporte); } string conceptoPDF = ObtenertipoDato(concepto, TIPO_DATOS_BASE64_FILE); if (concepto.TipoDato == conceptoPDF) { if ((hecho != null && !String.IsNullOrWhiteSpace(hecho.Valor))) { EscribirADosColumnasConceptoValor(docBuilder, concepto.IdConcepto, rolAExportar, estructuraReporte); } } if (hipercubosSerie.Contains(concepto.IdConcepto)) { docBuilder.Writeln(); var conceptoActual = concepto; string[] d = concepto.IdConcepto.Split(new string[] { "Abstract" }, StringSplitOptions.None); string ConceptoHipercubo = (d[0]); PintaTablaDimensionSerie(docBuilder, ConceptoHipercubo, instancia, rolAExportar, estructuraReporte, conceptoActual); } if (hipercubosExist.Contains(concepto.IdConcepto)) { docBuilder.Writeln(); string[] d = concepto.IdConcepto.Split(new string[] { "Abstract" }, StringSplitOptions.None); string ConceptoHipercubo = (d[0]); PintaTablaDimensionExplicita(docBuilder, ConceptoHipercubo, instancia, rolAExportar, estructuraReporte); } else if (concepto.IdConcepto.Equals("ar_pros_CompanyAdministratorsAbstract")) { ImprimeTitulo(docBuilder, concepto); PintaAdministradores(docBuilder, instancia, estructuraReporte.Hipercubos["ar_pros_CompanyAdministratorsTable"]); } else if (concepto.IdConcepto.Equals("ar_pros_CompanyShareholdersAbstract")) { ImprimeTitulo(docBuilder, concepto); PintaAccionistas(docBuilder, instancia, estructuraReporte.Hipercubos["ar_pros_CompanyShareholdersTable"]); } else if (concepto.IdConcepto.Equals("ar_pros_SubcommitteesSynopsis")) { ImprimeTitulo(docBuilder, concepto); PintaListaSubcomites(docBuilder, instancia, estructuraReporte.Hipercubos["ar_pros_SubcommitteesTable"]); } } Evaluador.Clear(); ConceptoHiper.Clear(); }