Exemple #1
0
        private static XmlDocument GenerateLoginTicketRequestXML(LoginTicketRequests loginTicketRequest)
        {
            XmlQualifiedName qualifiedName = new XmlQualifiedName(loginTicketRequestNodeName);
            //TODO: SACAR EL hardcode del XSD
            //XMLGenerator generator = new XMLGenerator(@"C:\Vero\Proyectos\MFD\MFDHOMO\MFD\LoginTicketRequest.xsd", qualifiedName);
            XMLGenerator  generator = new XMLGenerator(AppDomain.CurrentDomain.BaseDirectory + @"LoginTicketRequest.xsd", qualifiedName);
            Stream        xmlStream = new MemoryStream();
            XmlTextWriter writer    = new XmlTextWriter(xmlStream, Encoding.UTF8);

            writer.Formatting = Formatting.Indented;
            generator.WriteXml(writer);
            XmlDocument document = new XmlDocument();

            xmlStream.Seek(0, SeekOrigin.Begin);
            XmlReader reader = new XmlTextReader(xmlStream);

            document.Load(reader);
            reader.Close();
            writer.Close();
            xmlStream.Close(); xmlStream.Dispose();

            XmlElement headerNode = document[loginTicketRequestNodeName][HeaderNodeName];

            headerNode[SourceNodeName].InnerText      = loginTicketRequest.Empresa.DNOrigen;
            headerNode[DestinationNodeName].InnerText = loginTicketRequest.Empresa.DNDestino;
            //TODO: ver cual debe ser el loginTicketRequest.Id
            headerNode[UniqueIDNodeName].InnerText       = loginTicketRequest.Id.ToString();
            headerNode[GenerationTimeNodeName].InnerText = XmlConvert.ToString(loginTicketRequest.GenerationTime, XmlDateTimeSerializationMode.RoundtripKind);
            headerNode[ExpirationTimeNodeName].InnerText = XmlConvert.ToString(loginTicketRequest.ExpirationTime, XmlDateTimeSerializationMode.RoundtripKind);
            document[loginTicketRequestNodeName][ServiceNodeName].InnerText = "wsfe";

            return(document);
        }
Exemple #2
0
        public static XmlDocument GenerateLoginTicketRequestXML(LoginTicketRequests loginTicketRequest)
        {
            const string loginTicketRequestNodeName = "loginTicketRequest";
            const string HeaderNodeName             = "header";
            const string ServiceNodeName            = "service";
            const string SourceNodeName             = "source";
            const string DestinationNodeName        = "destination";
            const string UniqueIDNodeName           = "uniqueId";
            const string GenerationTimeNodeName     = "generationTime";
            const string ExpirationTimeNodeName     = "expirationTime";


            XmlQualifiedName qualifiedName = new XmlQualifiedName(loginTicketRequestNodeName);
            //TODO: SACAR EL hardcode del XSD
            XMLGenerator  generator = new XMLGenerator("LoginTicketRequest.xsd", qualifiedName);
            Stream        xmlStream = new MemoryStream();
            XmlTextWriter writer    = new XmlTextWriter(xmlStream, Encoding.UTF8);

            writer.Formatting = Formatting.Indented;
            generator.WriteXml(writer);
            XmlDocument document = new XmlDocument();

            xmlStream.Seek(0, SeekOrigin.Begin);
            XmlReader reader = new XmlTextReader(xmlStream);

            document.Load(reader);
            reader.Close();
            writer.Close();
            xmlStream.Close(); xmlStream.Dispose();

            XmlElement headerNode = document[loginTicketRequestNodeName][HeaderNodeName];

            headerNode[SourceNodeName].InnerText      = loginTicketRequest.Empresa.DNOrigen;
            headerNode[DestinationNodeName].InnerText = loginTicketRequest.Empresa.DNDestino;
            //TODO: ver cual debe ser el loginTicketRequest.Id
            headerNode[UniqueIDNodeName].InnerText       = loginTicketRequest.Id.ToString();
            headerNode[GenerationTimeNodeName].InnerText = XmlConvert.ToString(loginTicketRequest.GenerationTime, XmlDateTimeSerializationMode.RoundtripKind);
            headerNode[ExpirationTimeNodeName].InnerText = XmlConvert.ToString(loginTicketRequest.ExpirationTime, XmlDateTimeSerializationMode.RoundtripKind);
            document[loginTicketRequestNodeName][ServiceNodeName].InnerText = "wsfe";


            return(document);
        }
Exemple #3
0
        public XmlDocument GenerarXml()
        {
            #region constants
            const string Comprobante = "comprobante";
            const string Cabecera    = "cabecera";
            const string Detalle     = "detalle";
            const string Resumen     = "resumen";
            #endregion

            XmlQualifiedName qualifiedName = new XmlQualifiedName("factura");
            XMLGenerator     generator     = new XMLGenerator("Factura_v1.22.xsd", qualifiedName);
            Stream           xmlStream     = new MemoryStream();
            XmlTextWriter    writer        = new XmlTextWriter(xmlStream, Encoding.GetEncoding("iso-8859-1"));
            writer.Formatting = Formatting.Indented;
            generator.WriteXml(writer);
            XmlDocument document = new XmlDocument();
            xmlStream.Seek(0, SeekOrigin.Begin);
            XmlReader reader = new XmlTextReader(xmlStream);
            document.Load(reader);
            reader.Close();
            writer.Close();
            xmlStream.Close(); xmlStream.Dispose();

            //document.InsertAfter(document.CreateProcessingInstruction("xml-stylesheet", "type=\"text/xsl\" href=\"../../Factura_v1.22.xsl\""), document.ChildNodes[0]);/*Lote_Factura_Response_v1.0.xsl*/
            document.InsertAfter(document.CreateProcessingInstruction("xml-stylesheet", "type=\"text/xsl\" href=\"Factura_v1.22.xsl\""), document.ChildNodes[0]);
            CargarDatosCabecera(document[Comprobante][Cabecera]);
            CargarDatosDetalle(document[Comprobante][Detalle]);
            CargarDatosResumen(document[Comprobante][Resumen]);
            XmlNode nodoLogo = document.CreateNode(XmlNodeType.Element, "string", "logo", "");
            XmlNode nodoUrl  = document.CreateNode(XmlNodeType.Element, "url", "");
            CargarDatosExtensiones(document[Comprobante]["extensiones"], nodoLogo, nodoUrl);


            document[Comprobante].Attributes["xmlns"].Value = "";
            XmlAttribute attns = document.CreateAttribute("xmlns:tns");
            attns.Value = "http://www.cace.org.ar/facturaelectronica/";
            document[Comprobante].Attributes.Append(attns);
            XmlAttribute atxsi = document.CreateAttribute("xmlns:xsi");
            atxsi.Value = "http://www.w3.org/2001/XMLSchema-instance";
            document[Comprobante].Attributes.Append(atxsi);
            return(document);
        }
Exemple #4
0
        public XmlDocument GenerateLoginTicketRequestXML(LoginTicketRequests loginTicketRequest)
        {
            XmlQualifiedName qualifiedName = new XmlQualifiedName(LoginTicketRequestNodeName);
            //TODO: SACAR EL hardcode del XSD
            XMLGenerator  generator = new XMLGenerator("LoginTicketRequest.xsd", qualifiedName);
            Stream        xmlStream = new MemoryStream();
            XmlTextWriter writer    = new XmlTextWriter(xmlStream, Encoding.UTF8);

            writer.Formatting = Formatting.Indented;
            generator.WriteXml(writer);
            XmlDocument document = new XmlDocument();

            xmlStream.Seek(0, SeekOrigin.Begin);
            XmlReader reader = new XmlTextReader(xmlStream);

            document.Load(reader);
            reader.Close();
            writer.Close();
            xmlStream.Close(); xmlStream.Dispose();

            EmpresasBL empresasBL = new EmpresasBL();

            empresasBL.SetParameters(DBConnection);


            XmlElement headerNode = document[LoginTicketRequestNodeName][HeaderNodeName];

            headerNode[SourceNodeName].InnerText         = loginTicketRequest.Empresa.DNOrigen;
            headerNode[DestinationNodeName].InnerText    = loginTicketRequest.Empresa.DNDestino;
            headerNode[UniqueIDNodeName].InnerText       = loginTicketRequest.Id.ToString();
            headerNode[GenerationTimeNodeName].InnerText = XmlConvert.ToString(loginTicketRequest.GenerationTime, XmlDateTimeSerializationMode.RoundtripKind);
            headerNode[ExpirationTimeNodeName].InnerText = XmlConvert.ToString(loginTicketRequest.ExpirationTime, XmlDateTimeSerializationMode.RoundtripKind);
            document[LoginTicketRequestNodeName][ServiceNodeName].InnerText = GeneralSettings.Instance.WSNegocio;

            //writer = new XmlTextWriter("c:\\pepe.xml",Encoding.UTF8);
            //writer.Formatting = Formatting.Indented;
            //document.WriteTo(writer);
            //writer.Flush();
            //writer.Close();
            return(document);
        }