コード例 #1
0
        public Boolean DeleteElement(Reportes_parametros oReportsPtros, string path)
        {
            try
            {
                string url = path;
                // Crea una instancia del documento XML, y lee la data del XML.
                XmlDocument doc = new XmlDocument();
                doc.Load(url);

                XmlNodeList nodeList = doc.SelectNodes("//parametros");
                //1. Remove the Genre nodes from Book elements.

                foreach (XmlNode node in nodeList)
                {
                    if (node.Attributes.Count != 0)
                    {
                        if (node.Attributes["id"].Value == oReportsPtros.Id.ToString())
                        {
                            node.RemoveAll();
                        }
                    }
                }

                // Guarda el XML modificado a un archivo  en formato Unicode.
                doc.PreserveWhitespace = true;
                XmlTextWriter wrtr = new XmlTextWriter(url, Encoding.UTF8);
                doc.WriteTo(wrtr);
                wrtr.Close();

                return(true);
            }
            catch (Exception ex)
            {
                ex.Message.ToString();

                return(false);
            }
        }
コード例 #2
0
        //  Adicionando
        public bool addToXml(Reportes_parametros oReportsPtros, string path)
        {
            string url = path;
            // Crea una instancia del documento XML, y lee la data del XML.
            XmlDocument doc = new XmlDocument();

            doc.Load(url);

            //  Crear un nuevo elemento.
            XmlElement newElem = doc.CreateElement("parametros");

            //Obtenemos el maximo id
            int id = 0;

            Reportes_parametros[] vector = Get_AllParametros(path);

            if (vector.Length != 0)
            {
                int mayor = vector[0].Id;
                for (int i = 0; i < vector.Length; i++)
                {
                    if (vector[i].Id > mayor)
                    {
                        mayor = vector[i].Id;
                    }
                }
                id = mayor + 1;
            }
            else
            {
                id = 1;
            }
            //end maximo id

            // Agrega el atributo id Reporte.
            XmlAttribute newAttr0 = doc.CreateAttribute("id");//es el id que identifica a los nodos del doc XML

            newAttr0.Value = id.ToString();
            newElem.Attributes.Append(newAttr0);

            XmlAttribute newAttr = doc.CreateAttribute("id_servicio");

            newAttr.Value = oReportsPtros.Id_servicio.ToString();
            newElem.Attributes.Append(newAttr);

            XmlAttribute newAttr2 = doc.CreateAttribute("id_canal");

            newAttr2.Value = oReportsPtros.Id_canal.ToString();
            newElem.Attributes.Append(newAttr2);

            XmlAttribute newAttr3 = doc.CreateAttribute("id_compañia");

            newAttr3.Value = oReportsPtros.Id_compañia.ToString();
            newElem.Attributes.Append(newAttr3);

            XmlAttribute newAttr4 = doc.CreateAttribute("id_reporte");

            newAttr4.Value = oReportsPtros.Id_reporte.ToString();
            newElem.Attributes.Append(newAttr4);

            XmlAttribute newAttr5 = doc.CreateAttribute("id_user");

            newAttr5.Value = oReportsPtros.Id_user;
            newElem.Attributes.Append(newAttr5);

            XmlAttribute newAttr6 = doc.CreateAttribute("id_oficina");

            newAttr6.Value = oReportsPtros.Id_oficina.ToString();
            newElem.Attributes.Append(newAttr6);

            XmlAttribute newAttr7 = doc.CreateAttribute("id_punto_venta");

            newAttr7.Value = oReportsPtros.Id_punto_venta;
            newElem.Attributes.Append(newAttr7);

            XmlAttribute newAttr8 = doc.CreateAttribute("id_producto_categoria");

            newAttr8.Value = oReportsPtros.Id_producto_categoria;
            newElem.Attributes.Append(newAttr8);

            XmlAttribute newAttr9 = doc.CreateAttribute("id_producto_marca");

            newAttr9.Value = oReportsPtros.Id_producto_marca;
            newElem.Attributes.Append(newAttr9);

            XmlAttribute newAttr10 = doc.CreateAttribute("id_producto_familia");

            newAttr10.Value = oReportsPtros.Id_producto_familia;
            newElem.Attributes.Append(newAttr10);

            XmlAttribute newAttr11 = doc.CreateAttribute("id_año");

            newAttr11.Value = oReportsPtros.Id_año;
            newElem.Attributes.Append(newAttr11);

            XmlAttribute newAttr12 = doc.CreateAttribute("id_mes");

            newAttr12.Value = oReportsPtros.Id_mes;
            newElem.Attributes.Append(newAttr12);

            XmlAttribute newAttr13 = doc.CreateAttribute("id_periodo");

            newAttr13.Value = oReportsPtros.Id_periodo.ToString();
            newElem.Attributes.Append(newAttr13);

            XmlAttribute newAttr14 = doc.CreateAttribute("descripcion");

            newAttr14.Value = oReportsPtros.Descripcion;
            newElem.Attributes.Append(newAttr14);

            XmlAttribute newAttr15 = doc.CreateAttribute("id_tipoactividad");

            newAttr15.Value = oReportsPtros.Id_tipoactividad;
            newElem.Attributes.Append(newAttr15);

            XmlAttribute newAttr16 = doc.CreateAttribute("fecha_inicio");

            newAttr16.Value = oReportsPtros.Fecha_inicio;
            newElem.Attributes.Append(newAttr16);

            XmlAttribute newAttr17 = doc.CreateAttribute("fecha_fin");

            newAttr17.Value = oReportsPtros.Fecha_fin;
            newElem.Attributes.Append(newAttr17);

            XmlAttribute newAttr18 = doc.CreateAttribute("id_tipoReporte");

            newAttr18.Value = oReportsPtros.Id_tipoReporte;
            newElem.Attributes.Append(newAttr18);

            XmlAttribute newAttr19 = doc.CreateAttribute("id_subCategoria");

            newAttr19.Value = oReportsPtros.Id_subCategoria;
            newElem.Attributes.Append(newAttr19);

            XmlAttribute newAttr20 = doc.CreateAttribute("id_subMarca");

            newAttr20.Value = oReportsPtros.Id_subMarca;
            newElem.Attributes.Append(newAttr20);

            XmlAttribute newAttr21 = doc.CreateAttribute("skuProducto");

            newAttr21.Value = oReportsPtros.SkuProducto;
            newElem.Attributes.Append(newAttr21);

            //Se Agrega nuevos parametros Ing. Carlos Hernandez 30/04/2011
            XmlAttribute newAttr22 = doc.CreateAttribute("icadena");

            newAttr22.Value = oReportsPtros.Icadena.ToString();
            newElem.Attributes.Append(newAttr22);


            //Se Agrega nuevos parametros Ing. Carlos Hernandez 30/04/2011
            XmlAttribute newAttr23 = doc.CreateAttribute("inegocio");

            newAttr23.Value = oReportsPtros.Inegocio.ToString();
            newElem.Attributes.Append(newAttr23);

            //Se Agrega nuevos parametros Ing. Renato Castillo 06/09/2011
            XmlAttribute newAttr24 = doc.CreateAttribute("id_Semana");

            newAttr24.Value = oReportsPtros.Id_Semana.ToString();
            newElem.Attributes.Append(newAttr24);


            //Se Agrega nuevos parametros Ing. Ditmar Estrada 21/02/2012
            XmlAttribute newAttr25 = doc.CreateAttribute("Id_TipoCiudad");

            newAttr25.Value = oReportsPtros.Id_Semana.ToString();
            newElem.Attributes.Append(newAttr25);

            //Se Agrega nuevos parametros pSalas 28/02/2012
            XmlAttribute newAttr26 = doc.CreateAttribute("Id_malla");

            newAttr26.Value = oReportsPtros.Id_malla.ToString();
            newElem.Attributes.Append(newAttr26);


            //Este agrega mas elementos
            //////// Crea los nodos hijos. Este codigo demustra las varias vias para agregar.
            //////newElem.InnerXml = "<id_oficina></id_oficina><id_punto_venta></id_punto_venta>" +
            //////                   "<id_producto_categoria></id_producto_categoria><id_producto_marca></id_producto_marca>" +
            //////                   "<Id_producto_familia></Id_producto_familia><id_año></id_año>" +
            //////                   "<id_mes></id_mes><id_periodo></id_periodo>"+
            //////                   "<descripcion></descripcion>";
            //////   //primera forma
            //////XmlText txtNode = doc.CreateTextNode(oReportsPtros.Id_oficina.ToString());
            //////newElem.FirstChild.AppendChild(txtNode);
            //////newElem.AppendChild(doc.CreateWhitespace("\r\n")); // Salto de linea

            ////////segunda forma
            //////newElem["id_punto_venta"].InnerText = oReportsPtros.Id_punto_venta;
            //////newElem["id_producto_categoria"].InnerText = oReportsPtros.Id_producto_categoria;
            //////newElem["id_producto_marca"].InnerText = oReportsPtros.Id_producto_marca;
            //////newElem["Id_producto_familia"].InnerText = oReportsPtros.Id_producto_familia;
            //////newElem["id_año"].InnerText = oReportsPtros.Id_año;
            //////newElem["id_mes"].InnerText = oReportsPtros.Id_mes;
            //////newElem["id_periodo"].InnerText = oReportsPtros.Id_periodo.ToString();
            //////newElem["descripcion"].InnerText = oReportsPtros.Descripcion.ToString();

            // Agrega el nuevo elemento al final de la lista del nodo parametros.
            doc.DocumentElement.AppendChild(newElem);

            // Guarda el XML modificado a un archivo  en formato Unicode.
            doc.PreserveWhitespace = true;
            XmlTextWriter wrtr = new XmlTextWriter(url, Encoding.UTF8);

            doc.WriteTo(wrtr);
            wrtr.Close();

            return(true);
        }
コード例 #3
0
        public Reportes_parametros[] Get_AllParametros(string path)
        {
            // Creamos la lista genérica de Personas
            List <Reportes_parametros> oListReportes_parametros = new List <Reportes_parametros>();

            string url = path; //"Path o Url de nuestro XML";
            // Abrimos el elemto XmlTextReader usando la sentencia using,
            // que se encargará de cerrar todos los recursos que use el objeto

            XmlReaderSettings settings = new XmlReaderSettings();

            settings.IgnoreWhitespace = false;

            using (XmlTextReader reader = new XmlTextReader(url))
            {
                // Con estas dos sentencias, no situamos en el primer elemento
                // de nuestro fichero XML (raíz)
                reader.MoveToContent();
                //reader.ReadStartElement();

                // Ahora viene el típico bucle del que sólo saldremos cuando se termine
                // el fichero XML
                while (reader.Read())
                {
                    // Si el reader está en un elemento y ese elemento se llama "parametros"
                    // (en nuestro ejemplo todos los elementos se llaman parametros)
                    if ((reader.NodeType == XmlNodeType.Element) && (reader.Name == "parametros"))
                    {
                        // Creamos un objeto del tipo Reportes_parametros
                        Reportes_parametros oReportes_parametros = new Reportes_parametros();

                        // Aquí viene el alma de nuestro algoritmo
                        // Viajamos desde el primer al último atributo

                        int id = 0, id_reporte = 0, id_servicio = 0, id_compañia = 0, id_oficina = 0, icadena = 0, id_periodo = 0,
                            id_tipoCiudad = 0, id_malla = 0;
                        string id_user = String.Empty, id_canal = String.Empty,
                               id_punto_venta = String.Empty, id_producto_categoria = String.Empty,
                               id_producto_marca = String.Empty, id_producto_familia = String.Empty, id_año = String.Empty,
                               id_mes = String.Empty, descripcion = String.Empty;
                        for (int i = 0; i < reader.AttributeCount; i++)
                        {
                            // Nos movemos al atributo que nos corresponde.
                            // Es muy importante observar que siempre se mueve de los atributos previos a los
                            // posteriores, pues el XmlTextReader sólo sabe ir hacia delante.
                            reader.MoveToAttribute(i);
                            {
                                // Según sea el nombre del atributo, colocamos su valor en una u otra
                                // propiedad de nuestro objeto parametros
                                switch (reader.Name)
                                {
                                case "id":
                                    id = Convert.ToInt32(reader.Value);
                                    break;

                                case "id_servicio":
                                    id_servicio = Convert.ToInt32(reader.Value);
                                    break;

                                case "id_canal":
                                    id_canal = reader.Value;
                                    break;

                                case "id_compañia":
                                    id_compañia = Convert.ToInt32(reader.Value);
                                    break;

                                case "id_reporte":
                                    id_reporte = Convert.ToInt32(reader.Value);
                                    break;

                                case "id_user":
                                    id_user = reader.Value;
                                    break;

                                case "id_oficina":
                                    id_oficina = Convert.ToInt32(reader.Value);
                                    break;

                                case "id_punto_venta":
                                    id_punto_venta = reader.Value;
                                    break;

                                case "id_producto_categoria":
                                    id_producto_categoria = reader.Value;
                                    break;

                                case "id_producto_marca":
                                    id_producto_marca = reader.Value;
                                    break;

                                case "id_producto_familia":
                                    id_producto_familia = reader.Value;
                                    break;

                                case "id_año":
                                    id_año = reader.Value;
                                    break;

                                case "id_mes":
                                    id_mes = reader.Value;
                                    break;

                                case "id_periodo":
                                    id_periodo = Convert.ToInt32(reader.Value);
                                    break;

                                case "descripcion":
                                    descripcion = reader.Value;
                                    break;

                                case "icadena":
                                    icadena = Convert.ToInt32(reader.Value);
                                    break;

                                case "Id_TipoCiudad":
                                    id_tipoCiudad = Convert.ToInt32(reader.Value);
                                    break;

                                case "Id_malla":
                                    id_malla = Convert.ToInt32(reader.Value);
                                    break;
                                }
                            }
                        }

                        oReportes_parametros.Id          = id;
                        oReportes_parametros.Id_servicio = id_servicio;
                        oReportes_parametros.Id_canal    = id_canal;
                        oReportes_parametros.Id_compañia = id_compañia;
                        oReportes_parametros.Id_reporte  = id_reporte;
                        oReportes_parametros.Id_user     = id_user;

                        oReportes_parametros.Id_oficina            = id_oficina;
                        oReportes_parametros.Id_punto_venta        = id_punto_venta;
                        oReportes_parametros.Id_producto_categoria = id_producto_categoria;
                        oReportes_parametros.Id_producto_marca     = id_producto_marca;
                        oReportes_parametros.Id_producto_familia   = id_producto_familia;
                        oReportes_parametros.Id_año        = id_año;
                        oReportes_parametros.Id_mes        = id_mes;
                        oReportes_parametros.Id_periodo    = id_periodo;
                        oReportes_parametros.Descripcion   = descripcion;
                        oReportes_parametros.Icadena       = icadena;
                        oReportes_parametros.Id_TipoCiudad = id_tipoCiudad;
                        oReportes_parametros.Id_malla      = id_malla;

                        oListReportes_parametros.Add(oReportes_parametros);

                        //break; solo si desea buscar un elemento
                    }
                }
                reader.Close();
            }
            // Devolvemos el listado genérico
            return(oListReportes_parametros.ToArray());
        }
コード例 #4
0
        public bool createXml(Reportes_parametros oReportsPtros, string path)
        {
            using (XmlTextWriter writer = new XmlTextWriter(path, Encoding.UTF8))
            {
                writer.Formatting = Formatting.Indented;

                writer.WriteStartDocument();
                writer.WriteStartElement("consulta");

                int id = 1;//inicialisamos la clave de los elementos en uno
                writer.WriteStartElement("parametros");
                writer.WriteAttributeString("id", id.ToString());
                writer.WriteAttributeString("id_servicio", oReportsPtros.Id_servicio.ToString());
                writer.WriteAttributeString("id_canal", oReportsPtros.Id_canal.ToString());
                writer.WriteAttributeString("id_compañia", oReportsPtros.Id_compañia.ToString());
                writer.WriteAttributeString("id_reporte", oReportsPtros.Id_reporte.ToString());
                writer.WriteAttributeString("id_user", oReportsPtros.Id_user);

                writer.WriteAttributeString("id_oficina", oReportsPtros.Id_oficina.ToString());
                writer.WriteAttributeString("id_punto_venta", oReportsPtros.Id_punto_venta);
                writer.WriteAttributeString("id_producto_categoria", oReportsPtros.Id_producto_categoria);
                writer.WriteAttributeString("id_producto_marca", oReportsPtros.Id_producto_marca);
                writer.WriteAttributeString("id_producto_familia", oReportsPtros.Id_producto_familia);
                writer.WriteAttributeString("id_año", oReportsPtros.Id_año);
                writer.WriteAttributeString("id_mes", oReportsPtros.Id_mes);
                writer.WriteAttributeString("id_periodo", oReportsPtros.Id_periodo.ToString());
                writer.WriteAttributeString("descripcion", oReportsPtros.Descripcion);
                writer.WriteAttributeString("id_tipoactividad", oReportsPtros.Id_tipoactividad);
                writer.WriteAttributeString("fecha_inicio", oReportsPtros.Fecha_inicio);
                writer.WriteAttributeString("fecha_fin", oReportsPtros.Fecha_fin);
                writer.WriteAttributeString("id_tipoReporte", oReportsPtros.Id_tipoReporte);
                writer.WriteAttributeString("id_subCategoria", oReportsPtros.Id_subCategoria);
                writer.WriteAttributeString("id_subMarca", oReportsPtros.Id_subMarca);
                writer.WriteAttributeString("skuProducto", oReportsPtros.SkuProducto);
                writer.WriteAttributeString("icadena", oReportsPtros.Icadena.ToString());
                writer.WriteAttributeString("inegocio", oReportsPtros.Inegocio.ToString());
                writer.WriteAttributeString("id_Semana", oReportsPtros.Id_Semana.ToString());


                ////primera forma de agregar elementos
                //writer.WriteElementString("id_oficina", oReportsPtros.Id_oficina.ToString());
                //writer.WriteElementString("id_punto_venta", oReportsPtros.Id_punto_venta);
                //writer.WriteElementString("id_producto_categoria", oReportsPtros.Id_producto_categoria);
                //writer.WriteElementString("id_producto_marca", oReportsPtros.Id_producto_marca);
                //writer.WriteElementString("Id_producto_familia", oReportsPtros.Id_producto_familia);
                //writer.WriteElementString("id_año", oReportsPtros.Id_año);
                //writer.WriteElementString("id_mes", oReportsPtros.Id_mes);

                ////segunda forma de agregar elementos
                //writer.WriteStartElement("id_periodo");
                //writer.WriteString(oReportsPtros.Id_periodo.ToString());
                //writer.WriteEndElement();

                //writer.WriteStartElement("descripcion");
                //writer.WriteString(oReportsPtros.Descripcion.ToString());
                //writer.WriteEndElement();

                writer.WriteEndElement();

                writer.WriteEndElement();

                writer.WriteEndDocument();

                writer.Close();
            }

            return(false);
        }